fwzfwz1
驱动中牛
驱动中牛
  • 注册日期2002-11-01
  • 最后登录2007-06-01
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望8点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
阅读:1393回复:14

热插拔的软件实现【50分】

楼主#
更多 发布于:2003-11-03 22:47
cpci板卡,板子的硬件设计已经实现热插拔,但是不知道,软件方面还应该作些什么?
主要有一下两点向高手请教:
1、板子插上后如何启动硬件检测和资源分配及驱动装载;
2、板子拔下后,如何通知bios释放资源。
请高手指点。
有了驱动,人才有了力量。
CYoung
驱动中牛
驱动中牛
  • 注册日期2003-06-10
  • 最后登录2005-01-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-11-04 09:04
1:你要编写一个pnp例程,当你装上驱动程序以后,进入StartDevice例程,在这个例程里面,有你分配的资源
2:在驱动程序卸载的时候释放资源
答得好的话,请兄弟们加点分,那是对我的肯定
fwzfwz1
驱动中牛
驱动中牛
  • 注册日期2002-11-01
  • 最后登录2007-06-01
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望8点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-11-04 09:11
 那么谁来完成驱动程序的安装和卸载,或者说在那里完成驱动程序的安装和卸载?
有了驱动,人才有了力量。
CYoung
驱动中牛
驱动中牛
  • 注册日期2003-06-10
  • 最后登录2005-01-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-11-04 09:24
驱动程序的安装和卸载当然是由你自己来完成,在驱动程序里面有相关的例程,当你要安装和卸载的时候就会调用了。
答得好的话,请兄弟们加点分,那是对我的肯定
fwzfwz1
驱动中牛
驱动中牛
  • 注册日期2002-11-01
  • 最后登录2007-06-01
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望8点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-11-04 09:28
那么谁来完成驱动程序的安装和卸载,或者说在那里完成驱动程序的安装和卸载?

你说的这些我知道,但是我是要实现热插拔呀,而且是完全热插拔。当pci板卡带电插上后,应该自动完成资源配置和驱动安装,而不是手动完成。
有了驱动,人才有了力量。
fwzfwz1
驱动中牛
驱动中牛
  • 注册日期2002-11-01
  • 最后登录2007-06-01
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望8点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-11-04 09:34
另外pci配置寄存器中有个capability寄存器是与此有关的,如何设置?
grant老兄,帮帮忙!

[编辑 -  11/4/03 by  fwzfwz1]
有了驱动,人才有了力量。
grant
驱动老牛
驱动老牛
  • 注册日期2001-05-14
  • 最后登录2007-04-13
  • 粉丝0
  • 关注0
  • 积分350分
  • 威望35点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-11-04 10:00
一般板子插上后,会产生一个中断通知系统。
挂这个中断你可以知道是不是你的板卡被插进来了
(通过查板上的一个寄存器)。
如果是的话,可以发一个命令让系统检查新硬件,
应该是DI_Setup****相关的API。
助人乃快乐之本 有人给分就更快乐了 :-)
fwzfwz1
驱动中牛
驱动中牛
  • 注册日期2002-11-01
  • 最后登录2007-06-01
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望8点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-11-04 10:10
一般板子插上后,会产生一个中断通知系统。
挂这个中断你可以知道是不是你的板卡被插进来了
(通过查板上的一个寄存器)。
如果是的话,可以发一个命令让系统检查新硬件,
应该是DI_Setup****相关的API。

1、中断,是不是ENUM中断, 他的中断号是多少,如何得知;
2、你所说的寄存器是不是pci配置寄存器中的capability寄存器,其位置在pci配置空间的0x34。
3、发一个命令让系统检查新硬件,是在中断服务程序里吗?如果是怎么还会有API函数,我感觉API函数应该是应用程序调用的。
请grant赐教!
有了驱动,人才有了力量。
grant
驱动老牛
驱动老牛
  • 注册日期2001-05-14
  • 最后登录2007-04-13
  • 粉丝0
  • 关注0
  • 积分350分
  • 威望35点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-11-04 11:14
>>1、中断,是不是ENUM中断, 他的中断号是多少,如何得知;
应该是每家厂家自己设计吧?我见到的好象是IRQ9。

>>2、你所说的寄存器是不是pci配置寄存器中的capability寄存器,其位置在pci配置空间的0x34。
存贮板卡插入拨出状态的寄存器。你看一下Hotswap规范。

>>3、发一个命令让系统检查新硬件,是在中断服务程序里吗?如果是怎么还会有API函数,我感觉API函数应该是应用程序调用的。
DDK中提供的函数。
助人乃快乐之本 有人给分就更快乐了 :-)
grant
驱动老牛
驱动老牛
  • 注册日期2001-05-14
  • 最后登录2007-04-13
  • 粉丝0
  • 关注0
  • 积分350分
  • 威望35点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-11-04 11:15
帖两份文件上来。
虽然说得不是很详细,但是还是说了一些东西的。
附件名称/大小 下载次数 最后更新
2003-11-04_white_paper-Win2kIntegration.2000_07.pdf (238KB)  61
助人乃快乐之本 有人给分就更快乐了 :-)
grant
驱动老牛
驱动老牛
  • 注册日期2001-05-14
  • 最后登录2007-04-13
  • 粉丝0
  • 关注0
  • 积分350分
  • 威望35点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2003-11-04 11:17
还有一份。
附件名称/大小 下载次数 最后更新
2003-11-04_white_paper-LinuxHSK-techbrief.2002_01_20.pdf (725KB)  94
助人乃快乐之本 有人给分就更快乐了 :-)
fwzfwz1
驱动中牛
驱动中牛
  • 注册日期2002-11-01
  • 最后登录2007-06-01
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望8点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2003-11-04 11:24
3x!!!
有了驱动,人才有了力量。
fwzfwz1
驱动中牛
驱动中牛
  • 注册日期2002-11-01
  • 最后登录2007-06-01
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望8点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2003-11-04 12:04
粗略看了一下,不太清楚Pigeon Point Hot Swap Kit? (HSK)
是win2000的一部分呢,还是一个独立的开发包?
有了驱动,人才有了力量。
grant
驱动老牛
驱动老牛
  • 注册日期2001-05-14
  • 最后登录2007-04-13
  • 粉丝0
  • 关注0
  • 积分350分
  • 威望35点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2003-11-04 17:52
粗略看了一下,不太清楚Pigeon Point Hot Swap Kit? (HSK)
是win2000的一部分呢,还是一个独立的开发包?

它是一个独立的开发包。
不要看它的开发包,它的文件中有许多关于HotSwap的具体细节。
助人乃快乐之本 有人给分就更快乐了 :-)
fwzfwz1
驱动中牛
驱动中牛
  • 注册日期2002-11-01
  • 最后登录2007-06-01
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望8点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2003-11-04 17:58
那么如果有这个开发包的话,是安装呢还是调用库函数呢?
我估计是安装,安装以后它和windows融为一体。
有了驱动,人才有了力量。
游客

返回顶部