realanchoret
驱动牛犊
驱动牛犊
  • 注册日期2002-08-24
  • 最后登录2008-07-09
  • 粉丝0
  • 关注0
  • 积分100分
  • 威望11点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
阅读:1247回复:3

DS 的问题

楼主#
更多 发布于:2003-08-14 13:15
DS开发 PCI 的驱动,只需要端口读写,用DS生成一个PCI的驱动后打算用 KIoRange::outb, inb 来进行读写,可是不知道DS做框架的时候里面的IoRange怎么来设。比如我设定一个m_IoRange0,其中PCI BASE ADDRESS应该写什么?读写的时候怎么来写Offset?

安装好空的驱动以后可以看到资源里除了我需要的一段16位的IO范围外还有一段IO范围和内存范围,于是就不知道怎么做了,请大家指教,不胜感激!
realanchoret
驱动牛犊
驱动牛犊
  • 注册日期2002-08-24
  • 最后登录2008-07-09
  • 粉丝0
  • 关注0
  • 积分100分
  • 威望11点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-08-14 13:18
不知道是不是16位,说成 16个或者对些 :) C400-C40f
realanchoret
驱动牛犊
驱动牛犊
  • 注册日期2002-08-24
  • 最后登录2008-07-09
  • 粉丝0
  • 关注0
  • 积分100分
  • 威望11点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-08-14 14:10
刚刚解决了,:)

我定义了三个IoRange,然后用KPeripheralAddress::Count()来读它们的大小,发现0-2刚好是我在设备管理器中看到的三个资源所对应的大小,也就是说:前两个是我不需要的内存范围和IO范围,只有第三个才是需要的IO范围,然后一测试,果然OK。:)

幸好定义了三个,要是两个说不定还是不知道怎么回事,还是基础知识不全面啊,被逼的.......

估计像我这么菜的也不多了,写在这希望有用!
:)
Tom.Cat
禁止发言
禁止发言
  • 注册日期2001-10-10
  • 最后登录2019-07-29
  • 粉丝1
  • 关注0
  • 积分-53792分
  • 威望197411点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2003-08-14 14:12
用户被禁言,该主题自动屏蔽!
游客

返回顶部