drinkeryj
驱动老牛
驱动老牛
  • 注册日期2001-03-23
  • 最后登录2006-05-16
  • 粉丝0
  • 关注0
  • 积分15分
  • 威望2点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
阅读:1331回复:4

没人了解网卡多功能设备么?

楼主#
更多 发布于:2002-01-31 16:04
  一个在windowsNT下8478的多功能设备驱动程序,原来正常运行。8478的0功能是网络设备,1功能是pci桥设备。nt不支持pnp功能,所以它用枚举slot number的方法找到了这两个功能,而且都是在同一个驱动程序中完成的。可是这段代码在win2k下却不能正常运行,只能找到第一个功能,我想可能是因为win2k支持pnp功能,另外由于ndis5的使用,使得ReadMPciSlotInformation函数根据第一个参数(就是NIC的句柄)直接就找到了它,而且不论如何枚举都只能找到第一个功能,这是不是因为NIC句柄的缘故?
  另外,win2k的DDK文档上说,如果是多功能设备,只能是对每一个功能都分别写驱动,包括INF文件。但是如果这样一来,如果功能1中用到了功能0的某些结果,比如说功能0的配置空间的中的基地址,该怎么办呢?难道还需要在两个驱动程序间通信么?
  这是我想了两天的疑惑,希望有高手解疑答惑。

以后怎么办? [img]http://www.driverdevelop.com/forum/upload/Xman/2004-04-05_2004324183110706.jpg[/img]
drinkeryj
驱动老牛
驱动老牛
  • 注册日期2001-03-23
  • 最后登录2006-05-16
  • 粉丝0
  • 关注0
  • 积分15分
  • 威望2点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-02-06 13:31
看来真是没人了解了。
以后怎么办? [img]http://www.driverdevelop.com/forum/upload/Xman/2004-04-05_2004324183110706.jpg[/img]
ttqy
驱动牛犊
驱动牛犊
  • 注册日期2001-09-26
  • 最后登录2002-05-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-02-16 13:52
You have write a bus driver, which act as a function driver of PCI.

Your bus driver then enum your functions.
WindThruEars
驱动老牛
驱动老牛
  • 注册日期2002-11-17
  • 最后登录2004-07-10
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-02-20 01:42
If W2K cannot see two devices on your card, writting a bus driver should be ok, refer to ddk source src/general/toaster.

But if W2K can see two devices, you will have trouble!

From your description, your card doesn\'t compliant to standard Windows MF driver model.
我是假耳朵
drinkeryj
驱动老牛
驱动老牛
  • 注册日期2001-03-23
  • 最后登录2006-05-16
  • 粉丝0
  • 关注0
  • 积分15分
  • 威望2点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-02-20 14:34
首先感谢ttqy和kanghai,能不能说得再明确些。win2k确实是找到了两个设备,一个是网卡,一个是pci桥。看它的样子好像是要求两个驱动程序的。
写bus driver就是为了代替系统的pci总线驱动程序来枚举我自己的设备么?
以后怎么办? [img]http://www.driverdevelop.com/forum/upload/Xman/2004-04-05_2004324183110706.jpg[/img]
游客

返回顶部