lvwj
驱动老牛
驱动老牛
  • 注册日期2001-08-21
  • 最后登录2021-01-31
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望181点
  • 贡献值0点
  • 好评度52点
  • 原创分0分
  • 专家分0分
  • 社区居民
阅读:1934回复:8

9052, 愁 ! 谁能指点迷津。。。

楼主#
更多 发布于:2002-01-15 12:40
在使用 9052 时,碰到以下几个问题,很困惑,不知那位能点拨一下?
1。9052 使用 epprom 之后,其资源配置是怎么确定的?
   我在epprom中设置了 1k 的存储空间(local space 0),16字节的 io 空间(local space1),但在加载设备驱动程序之后,发现 pci 的配置空间为 PCI Base Address 1 有效,大小为 128字节;PCI Base Address 2 有效,大小为 1k; PCI Base Address 3 有效,大小为 16字节。 在 epprom 中的资源请求确实得到满足,但我不明白的是为什么 PCI Base Address 0 会为空?根据 9052 数据手册,在 isa 模式下,PCI Base Address 0 和 PCI Base Address 1 均映射 local config register, PCI Base Address 2 和 PCI Base Address 3 则分别映射 local space0 和 local space1。但是,为什么PCI Base Address 0 为空而且 PCI Base Address 1 取得是默认值 128 bytes?

2。根据据 9052 数据手册,PCI Base Address 0-5 均只能从 pci bus 设置,epprom 内容不写入这几个寄存器; 但我在 inf 文件中申请资源后,发现 epprom 中的内容起决定性的作用,inf 的内容根本就被忽略了。这到底是怎么回事?

3。我安装了 9052 rdk 的 sdk 软件(plxmon 等),插入我的扩展卡之后,系统自动辨识扩展卡为 9052 rdk board ,我不使用plx 的设备驱动程序,而载入自己编写的设备驱动程序,系统却告知我该驱动程序不是为该硬件专门设置的。不知道怎样才能告知系统我的设备驱动程序就是专为该硬件设置的?不知道跟 vxd 的 device id 有无关系?

4。 vtoolsd 中,使用 wizard 开发驱动程序时,device id 一般默认为 undefined ,不知道在跟硬件相关联时,该 id 号如何定义?

请各位大虾、各位朋友多多指点。。。。    :(

[编辑 -  1/15/02 作者: lvwj]

最新喜欢:

mapoflmapofl hapihapi
www.bjjcz.com
jst7792
论坛版主
论坛版主
  • 注册日期2001-12-10
  • 最后登录2006-11-16
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-01-15 13:40
1.第一个问题不清楚,我用的是9054,没出现过这种状况,建议你用
  plxmon把东西写进去.
2.base address是bios在系统启动时分配的,你只要提供range就可以
  了.inf的内容一般只有当硬件不支持即插即用时起作用.
3.4不清楚,因为我不用vxd,windriver和ddk都试过,应该挺好用的,建
  议调试的时候还是用plx附带的驱动配合plxmon,这样问题少一点,
  等硬件通了再用自己的驱动上去.
兄弟们,给点分吧
lvwj
驱动老牛
驱动老牛
  • 注册日期2001-08-21
  • 最后登录2021-01-31
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望181点
  • 贡献值0点
  • 好评度52点
  • 原创分0分
  • 专家分0分
  • 社区居民
板凳#
发布于:2002-01-15 18:41
  这位兄弟,我不是不想用 plxmon 把 local reg 内容置进去,而是我就没有买开发目标板,只是拷贝了一套软件回来,结果只能看到pci 的配置寄存器内容,而 local reg 和 epprom 的内容均看不到。自己写了个小程序,想将 pci base address 0 指定地址的内容(我认为这是 local reg 的映射地址)读出来,结果出来个 page fault ,真是愁煞人。
 谢谢你的帮助,jst7792 。
 :)
www.bjjcz.com
jst7792
论坛版主
论坛版主
  • 注册日期2001-12-10
  • 最后登录2006-11-16
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-01-15 20:37
哎,做东西还是要舍得投本钱,买个rdk用不了多少钱,减少了不少麻烦,值。
兄弟们,给点分吧
lvwj
驱动老牛
驱动老牛
  • 注册日期2001-08-21
  • 最后登录2021-01-31
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望181点
  • 贡献值0点
  • 好评度52点
  • 原创分0分
  • 专家分0分
  • 社区居民
地下室#
发布于:2002-01-15 23:23
主要觉得买个 rdk ,仅仅是调试用(我的卡已经做好了,也没办法连到目标板上),而驱动程序不管怎么样还是的自己写,所以就算了。因为我使用 vxd ,rdk 使用 wdm ,两者之间还是有点差异的。
今晚把 local reg 的内容读出来了,跟 eeprom 中设置的内容有点不一样:我在 eeprom 中设置为 isa 模式,但读出数据发现isa 模式没有被设置,而且与 local space0 (mem map)相关的所有设置寄存器均不一样,其他寄存器的内容则基本一致。不知到是 eeprom 的do 需要上拉还是eeprom 内容设置还不对,明天接着试。
 :)
www.bjjcz.com
Tom.Cat
禁止发言
禁止发言
  • 注册日期2001-10-10
  • 最后登录2019-07-29
  • 粉丝1
  • 关注0
  • 积分-53792分
  • 威望197411点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
  • 社区居民
5楼#
发布于:2002-01-16 11:30
用户被禁言,该主题自动屏蔽!
jst7792
论坛版主
论坛版主
  • 注册日期2001-12-10
  • 最后登录2006-11-16
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-01-16 11:51
应该是的吧,没有驱动程序的话,pci卡是被禁用的.你的device
id,vender id变了的话,好像驱动程序和inf里的相应参数都要变动
否则是不能用的.
兄弟们,给点分吧
lvwj
驱动老牛
驱动老牛
  • 注册日期2001-08-21
  • 最后登录2021-01-31
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望181点
  • 贡献值0点
  • 好评度52点
  • 原创分0分
  • 专家分0分
  • 社区居民
7楼#
发布于:2002-01-16 22:49
感谢 jst7792兄 和 tom.cat 兄!!
 一切都是我的错,害得大家抓脑袋!!结果如下:
1。 local reg 的控制寄存器 cntrl 有两位 b12:b13 用于控制是否允许 pcibar ,我把内存映射 pcibar0 给 disable 掉了,所以,内存映射总是空。
2。 我自己写的读 local reg 的小程序中,有个小 bug ,使用_inp而不是 _inpw, 结果 isa 标志总被抛弃,总是读不回来,结果折腾了老半天。
一切都是我的错。。。

www.bjjcz.com
flyoung
驱动牛犊
驱动牛犊
  • 注册日期2001-10-16
  • 最后登录2003-12-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2002-05-15 20:30
虽然此贴已早就结了,但是看dfreader时,发现好像有些地方值得商榷嘛---“PCI卡在WIN98下,是不是没有驱动程序,则系统不给进行配置地址资源”
由于资源的配置有两个阶段,post期和windows期,所以对于用了eeprom指定请求资源的情况,在post时系统是绝对分配资源的。此外,分不分配地址,等机子起来用windriver一看便知。
以上与大家讨论^_^
I ASK , I CAN .
游客

返回顶部