阅读:1270回复:2
PCI 设备初始化? ――(100分)
pci网卡的phy寄存器,应该一上电就有默认值吧。
我在pc上调试的时候,根本没去管它。 但拿到嵌入式(TM1300)下面,phy的寄存器始终是0。网卡也不工作。 但其他的寄存器没有问题。 可以通过io地址访问到网卡的Internal Registers。 pci 配置寄存器中的 Cache Line Size 是什么作用? 好几天了。 不知道哪出问题了。 救命呀。。。。。 |
|
最新喜欢:easyha... |
沙发#
发布于:2004-03-12 12:54
我在vxWorks下做82557网卡driver的时候好像没有这个问题,数据自动的会从eeprom设置。如果你有这个问题,可以在driver 初始化,或系统初始化的时候从某个地方读取然后设置他们。
如果 你把pci 配置寄存器的command register bit4 设置为 1 (Write and Invalidate Enable),那么必需设置cache line size 为系统的cache line的 dword 个数。 如果 设置command register bit4=0,那么可以设置 cache line size = 0。 目前的许多系统cache line size = 16byte,所以在pci配置头中cache line size = 4。(dword) 系统对memory做cache时总是成块cache的,一块的就称为一个cache line。cache line的大小和cache的设计有关。 其实任何pci master都可以设置cache line size = 0(只要write and invalidate disable)。这样的话,这个pci主只是损失一些性能而已,不会有错误存在。 而且pci spec对这些提高性能的option的实现不是强制的,只是可选项。 |
|
板凳#
发布于:2004-03-13 08:40
感谢楼上的。
这就去看看。 :D |
|