阅读:2490回复:4
求助:PCI9054配置空间的读写
小弟现在在做PCI9054的驱动编写,硬件部分是其他人做的,实现很简单的功能,就从PCI bus端和local bus端的IO读写,连DMA,中断都没有用到。我用的是windriver开发驱动,读写函数已经写完了,现在在配置空间上难住了。
1、我们的硬件上面,没有用到EERPOM,配置空间的配置需要在驱动中实现,那在编写驱动的时候,应该如何写给配置空间啊?配置空间应该配置哪些寄存器啊? 2、关于基地址映射,我知道PCI 配置空间里面的6个基地址寄存器,BAR0、BAR1是给local配置寄存器,BAR2~BAR4是给local address space的,基地址寄存器里面的地址值是由系统自动分配的,那我在编写驱动的时候,应该写什么值给这6个寄存器呢,是写需要申请的空间大小吗?但是我怎么知道我要申请多大的空间啊?另外,如何知道需要配置哪几个基地址寄存器? 3、local配置空间是不是要配置好BAR0或BAR1后,再通过里面的基地址进行访问配置?9054 data book里面说到,引脚CCS接地才是选中local配置空间,但是我们的硬件设计上面,这个引脚是用上拉电阻接的VDD,那不是不能对local配置空间进行配置了? 4、local配置空间里面的第二个寄存器remap,到底配置的是什么地址啊,它跟pci 配置空间里面的BAR2里面的基地址有什么联系? PCI9054工作在C模式,local数据线只用到了8根。 |
|
沙发#
发布于:2008-12-02 20:35
用EEPROM烧写信息进去
烧的信息就是配置信息 照着SPEC一个一个写就是了 多弄几次 |
|
|
板凳#
发布于:2008-12-11 09:24
高人
|
|
地板#
发布于:2009-02-12 16:25
配置空间可以通过IO的映射空间或者Memory的映射空间进行访问的,不过需要在PCI端对你的操作码进行处理。
|
|
地下室#
发布于:2009-03-25 10:53
"用EEPROM烧写信息进去
烧的信息就是配置信息 照着SPEC一个一个写就是了 多弄几次" 高人!请问怎么烧写呢???? |
|