zjun726
驱动牛犊
驱动牛犊
  • 注册日期2008-07-16
  • 最后登录2008-12-29
  • 粉丝0
  • 关注0
  • 积分7分
  • 威望5点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2428回复:4

求助:PCI9054配置空间的读写

楼主#
更多 发布于:2008-11-05 15:02
小弟现在在做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根。
xp4105
论坛版主
论坛版主
  • 注册日期2006-04-02
  • 最后登录2014-03-29
  • 粉丝1
  • 关注0
  • 积分905分
  • 威望570点
  • 贡献值1点
  • 好评度162点
  • 原创分1分
  • 专家分0分
沙发#
发布于:2008-12-02 20:35
用EEPROM烧写信息进去
烧的信息就是配置信息
照着SPEC一个一个写就是了
多弄几次
时光如流水 抓紧时间实现自我价值
cdlff
驱动牛犊
驱动牛犊
  • 注册日期2006-08-06
  • 最后登录2008-12-14
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望51点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2008-12-11 09:24
高人
kaixin_0007
驱动牛犊
驱动牛犊
  • 注册日期2005-10-05
  • 最后登录2009-02-22
  • 粉丝0
  • 关注0
  • 积分45分
  • 威望134点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
地板#
发布于:2009-02-12 16:25
配置空间可以通过IO的映射空间或者Memory的映射空间进行访问的,不过需要在PCI端对你的操作码进行处理。
teg_sunzy
驱动牛犊
驱动牛犊
  • 注册日期2009-01-04
  • 最后登录2009-06-16
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望81点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2009-03-25 10:53
"用EEPROM烧写信息进去
烧的信息就是配置信息
照着SPEC一个一个写就是了
多弄几次"
高人!请问怎么烧写呢????
游客

返回顶部