maxmajun
驱动牛犊
驱动牛犊
  • 注册日期2002-01-07
  • 最后登录2005-12-31
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1905回复:5

请教高手用windriver关于pci卡驱动问题

楼主#
更多 发布于:2002-11-25 20:27
   用windriver的某个函数可以获得pci卡几个item的各个参数,有的是用于i/o,有的用于mem,有的用于中断,请问可不可以随便改动各个item的属性,比如i/o的改成mem,是中断的把中断号改变,究竟可不可以进行正常操作。
   另外windriver还有一个术语bar,好像和item类似,但不是一对一的关系,请问两者有什么异同。
   进行中断时是不是只要把具有中断性质的item联合中的中断句柄给 中断线程有效函数,然后中断来临时就可以自动调用回调函数了
   请执教,谢谢!!

最新喜欢:

lw535lw535
kangcy
驱动牛犊
驱动牛犊
  • 注册日期2002-11-10
  • 最后登录2003-12-24
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-11-25 21:15
你好,我也是一个初学者。我想请问一下WINDRIVER的哪个函数可以访问PCI口的MEM或IO。
maxmajun
驱动牛犊
驱动牛犊
  • 注册日期2002-01-07
  • 最后登录2005-12-31
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-11-25 22:01
用windriver wizard 可以生成一个诊断程序,可以列出pci所有的items,items 里有个联合,比如是mem,在mem相关结构里,可以找到偏移地址,然后用trans(具体函数记不请了)可以实现。
在windriver的samples文件架里有一个 int_io的例子,有大致的对
字,字节,字节串的读写操作,有什么问题共同探讨
bye
jokeshe
驱动牛犊
驱动牛犊
  • 注册日期2001-06-06
  • 最后登录2018-05-30
  • 粉丝0
  • 关注0
  • 积分12分
  • 威望101点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2002-11-28 00:45
用windriver的某个函数可以获得pci卡几个item的各个参数,有的是用于i/o,有的用于mem,有的用于中断,请问可不可以随便改动各个item的属性,比如i/o的改成mem,是中断的把中断号改变,究竟可不可以进行正常操作。
另外windriver还有一个术语bar,好像和item类似,但不是一对一的关系,请问两者有什么异同。
进行中断时是不是只要把具有中断性质的item联合中的中断句柄给 中断线程有效函数,然后中断来临时就可以自动调用回调函数了
请执教,谢谢!!

第一,PCI卡的空间是IO空间还是MEM空间,是硬件设计硬性指定的,软件上是没办法修改的。除非硬件修改其逻辑。修改中断号也是没什么实际意义的。PCI的中断是共享的,很多设备共用一个相同的中断号。术语BAR是指的PCI的配置空间里面的基地址空间。好象最多可以是6个,在硬件设计上用的,比如我现在要设计一块有1个IO空间,2个MEM空间的(空间实际上在软件上来说就是分配的一块地址范围)。我就得用其中3个BAR寄存器(硬件上),以告诉计算机系统我要3块地址范围。至于中断,我没写过,我做DMA测试的时候是用的查询方式。
如果回答对你有所帮助,请给分!
我们可以对WINDRIVER多多交流!!!
CPLD来了
libin2309
驱动大牛
驱动大牛
  • 注册日期2002-11-20
  • 最后登录2005-12-29
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-12-04 15:22
各位大虾,WINDRIVER中的item是什么意思,用WINDRIVER写驱动的流程是什么?也就是一个完整的驱动程序包含哪几个文件?怎样把WINDRIVER生成的诊断程序转换成最终的驱动程序?也就是怎样使用VC。
  
我是一只小小鸟,永远也飞也飞不高,但我永远在飞!
sxh_somson
驱动牛犊
驱动牛犊
  • 注册日期2002-11-07
  • 最后登录2003-08-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-12-04 17:40
各位大虾,WINDRIVER中的item是什么意思,用WINDRIVER写驱动的流程是什么?也就是一个完整的驱动程序包含哪几个文件?怎样把WINDRIVER生成的诊断程序转换成最终的驱动程序?也就是怎样使用VC。
    


1、item是指卡的IO、Memory、interrupt信息;
2、流程:WD_Open()->WD_Version()->WD_PciScanCards()->
         WD_PciGetCardInfo()->WD_PciConfigDump()->
         WD_CardRegister()->读写Memory、DMA设置、中断设置
         ->WD_CardUnregister()->WD_Close();
3、我也是初学,请各位大侠多指教。
游客

返回顶部