这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 请问:linux内核中pci初始化时,访问pci设备的配置空间时,程序挂了!请教

共10条 1/1 1 跳转至

请问:linux内核中pci初始化时,访问pci设备的配置空间时,程序挂了!请教各位高手

菜鸟
2007-07-27 23:20:12     打赏

请问:linux内核中pci初始化时,访问pci设备的配置空间时,程序挂了!

发现程序是在调用pci_read_config_byte函数时挂的

向各位高手请教

谢谢!




关键词: 请问     linux     内核     初始化     访问     设备     配置         

菜鸟
2007-07-28 01:54:00     打赏
2楼

这是完全有可能引起的,就好像有时候插入某个PCI卡到PC机箱中,无法正常启动一样。可能的原因有多种,但最常见的是PCI设备不正常。

pci_read_config_byte访问PCI设备的配置空间,发起PCI总线传输,如果目标设备主动拒绝(TARGET_ABORT)的话,PCI主桥可能会反复重试,以等待目标设备就绪。所以,这个指令就一直不返回,造成死机现象。

情况不清楚,不敢肯定你的情况是否如上所述,但可能性还是有的。可以尝试移去一些PCI设备再看看能不能正常工作。如果是板载PCI设备就不好弄了。


菜鸟
2007-08-06 21:30:01     打赏
3楼
多谢yaopg的指点.

我用的正好是板载pci设备.

有没有什么调试经验,希望不吝赐教  谢谢!

菜鸟
2007-08-06 21:39:24     打赏
4楼
啊,不难,把PCI总线的FRAME#,STOP#,TRDY#,IRDY#接出来,到示波器上,观察,对比PCI总线规范的时序约定,看到底出了什么问题。当然,你得先确定到底是访问哪个设备的配置空间的时候出的问题。
如果是板载设备,板子设备又必须得调下去,可以考虑在post过程中把这个排除掉。

菜鸟
2007-08-07 11:19:35     打赏
5楼

再次感谢yaopg!

还有一个问题想请教一下,在调试过程中发现: 板载有两个pci设备,一个可以正常访问设备的
配置空间,另一个却出现问题,如前面所描述的使程序挂起.进一步调试发现一个现象是:只能对
该设备进行一次配置空间的访问.也就是说第一次调用pci_read_config_byte()函数的时候可以
读出配置空间的值,但第二次调用pci_read_config_byte()函数时就会使程序挂起.

再次请教yaopg! 谢谢


菜鸟
2007-08-15 13:53:01     打赏
6楼

请高手帮忙看一下,能给点提示!谢谢


菜鸟
2007-08-15 15:26:20     打赏
7楼
不能单从软件角度考虑,第一次读可以,第二次读不行。得从硬件着手,用示波器看下波形,特别关注STOP#信号是否变为有效。
这种情况应该考虑你的那个访问不了的PCI设备是否有引脚电平错误,比如晶振电压,IO电压,内核电压是否达到要求,还有就是那个配置空间是否能访问,芯片手册上应该有详细描述。
继续关注,。。。。。

菜鸟
2007-08-20 11:18:59     打赏
8楼
谢谢yaopg的热心解答!

因为板子现在可以成功跑起vxworks,pci这一块没出问题.所以老板说硬件应该没有问题,让我
从软件方面考虑.
板子上用的是板载pci设备,我也想用示波器器看看波形,可是设计硬件的时候没有留出调试接口,
所以没有办法看波形.
不知道yaopg 有没有什么经验和建议?
板上两个pci 设备: 1.LSI 53C 1020 SCSI  控制器, 现在就是它无法访问配置空间.
                                 2.FPGA  可以成功访问配置空间

菜鸟
2007-08-21 23:51:49     打赏
9楼
如果可以成功跑vxWorks,请问是否能把这个linux中无法访问的设备用pciConfigTopoShow显示出来?
如果可以的话,应该可以认为硬件确实没有问题。那只能通过最笨的方式测试了。--看一下vxWorks的代码,看它对这个设备的配置空间访问顺序是怎样的。再与linux的进行比对。或者在VxWorks下,按照linux下的对该设备的配置空间访问顺序访问一下,看会不会出问题。


菜鸟
2007-08-23 16:40:33     打赏
10楼
只能对该设备进行一次配置空间的访问.也就是说第一次调用pci_read_config_byte()函数的时候可以读出配置空间的值,但第二次调用pci_read_config_byte()函数时就会使程序挂起.
请问,这样执行的结果是否是预期的涡轮增压器   废气涡轮增压器    涡轮增压器配件.

共10条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]