使用即插即用 I/O 请求访问 PCMCIA 属性内存
本部分介绍电脑卡或 Cardbus 卡驱动程序如何使用即插即用 I/O 请求访问属性内存。
驱动程序通常使用此方法初始化设备、配置设备或从设备获取信息。 如果 I/O 开销是可接受的,并且可以通过 IRQL < DISPATCH_LEVEL进行访问,则驱动程序应使用此方法。
驱动程序只能在 IRQL < DISPATCH_LEVEL运行时使用此方法。
驱动程序执行以下操作序列:
创建并初始化新的IRP_MJ_PNP请求。
驱动程序指定 IRP_MN_READ_CONFIG 或 IRP_MN_WRITE_CONFIG 次要函数。
获取下一个堆栈位置。
在新堆栈位置中设置 Parameters.ReadWriteConfig 结构的以下成员:
WhichSpace
指定PCCARD_ATTRIBUTE_MEMORY的值。缓冲区
指向驱动程序为访问分配的分页内存缓冲区的指针。 对于写入操作,缓冲区包含要写入配置空间的数据。 对于读取操作,缓冲区为零填充缓冲区。 请求完成后,此缓冲区保存从设备读取的属性内存的副本。设置完成例程。
将请求向下发送到设备堆栈。
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈