deepblue100200 发表于 2011-03-03 21:41

两次pci_resource_start返回值不一样

环境 x86(PCI-E) + SUSE (linux内核2.6.21)+ FPGA网络采集卡
开机后加载驱动,pci_resource_start返回值为0x30000000
重启动操作系统后,pci_resource_start返回值为0xfe300000

请问这个是什么原因? 多谢了!

accessory 发表于 2011-03-04 03:28

2次启动之间没有加新硬件或者内存?都能正常工作?

deepblue100200 发表于 2011-03-04 11:47

多谢回复!
2次启动之间没有加新硬件、内存;开机后不能正常工作,重新启动操作系统后可以正常工作。
这个现象是一值存在的,即必须开机后再重新启动操作系统才能工作!

smalloc 发表于 2011-03-04 18:15

看来区别在于冷启动和热启动 可能卡有问题 或许根本就没检测到卡 或许硬件联线有问题
或者硬件状态机有问题--这个可以尝试设备挂起 卸驱动 2次加载

deepblue100200 发表于 2011-03-04 21:11

lspci发现这个卡是存在的,也就是检测到卡了;区别是在于冷启动和热启动,是否和bios检测有关,如果和fpga卡有关,应该是什么问题呢?

moto_linux 发表于 2011-03-04 21:32

回复 1# deepblue100200

应该和你的FPGA设备有关系。
冷启动,在加载FPGA前,没有扫描到该设备,导致分配的PCI地址和热启动不一样

deepblue100200 发表于 2011-03-04 21:47

回复 6# moto_linux
lspci显示这个FPGA卡是存在的,是否应该说明是扫描到了该设备呢?如果是FPGA的问题,大概是出在什么地方?

smalloc 发表于 2011-03-04 23:35

每次都是0x30000000?多试验几次看看

EZWORD 发表于 2011-03-05 10:07

不明白了,楼上什么时候换的头像。。。。

deepblue100200 发表于 2011-03-05 15:22

每次都是0x30000000?多试验几次看看
smalloc 发表于 2011-03-04 23:35 http://linux.chinaunix.net/bbs/images/common/back.gif


    是的,每次冷启动都是0x30000000. pci bar的值是什么时候初始化的,是有bios还是内核。奇怪的是冷启动和热启动的结果是不一样的,也就是说冷启动和热启动初始化bar的值是不一样的
页: [1] 2
查看完整版本: 两次pci_resource_start返回值不一样