videoPortSetBusData 函数 (video.h)

VideoPortSetBusData 函数为具有已发布标准接口的动态可配置 I/O 总线上的适配器设置总线配置数据。

语法

VIDEOPORT_DEPRECATED VIDEOPORT_API ULONG VideoPortSetBusData(
       PVOID         HwDeviceExtension,
       BUS_DATA_TYPE BusDataType,
       ULONG         SlotNumber,
  [in] PVOID         Buffer,
       ULONG         Offset,
       ULONG         Length
);

参数

HwDeviceExtension

指向微型端口驱动程序的设备扩展的指针。

BusDataType

指定要设置的总线数据类型。 目前,其值可以是 “文种”、“ EisaConfiguration”或 “PCIConfiguration”之一。 但是,将来可能支持其他类型的标准化、动态可配置总线。 支持的总线类型的上限始终为 MaximumBusDataType

SlotNumber

对于 BusDataType,指定设备在总线上的位置。 对于所有其他总线类型,此参数应为零。

[in] Buffer

指向调用方提供的存储区域的指针,其中包含特定于 BusDataType 的配置信息。

指定 PCIConfiguration 时,缓冲区包含给定 SlotNumber 的部分或全部PCI_COMMON_CONFIG信息。 指定的 “偏移量”“长度 ”确定提供的信息量。

Offset

指定调用方提供的配置值开始的PCI_COMMON_CONFIG结构中的字节偏移量。 微型端口驱动程序可以使用 PCI_COMMON_HDR_LENGTH 指定PCI_COMMON_CONFIG中特定于设备的区域的偏移量。

Length

指定 Buffer 中的字节数。

返回值

VideoPortSetBusData 返回为给定 SlotNumber 成功设置的数据字节数。 如果给定的 BusDataType 对当前平台无效,或者提供的信息无效, 则 VideoPortSetBusData 返回零。

注解

PCI 总线上适配器的微型端口驱动程序很少调用 VideoPortSetBusData,除非异常情况或特定驱动程序的视频适配器的性质需要此类调用。

例如,如果微型端口驱动程序在初始化期间指示目标中止,则微型端口驱动程序可能会调用 VideoPortSetBusData 来清除 PCI 状态寄存器中的某个位。 如果 PCI 视频适配器必须配置特定于设备的数据,则其驱动程序也会调用此函数。 在任一情况下,此类驱动程序都可能会调用 VideoPortGetAccessRanges ,其中包含指向驱动程序提供的资源描述符数组的 RequestedResources 指针。

无法从微型端口驱动程序的 HwVidInterruptHwVidTimer 函数、VideoPortQueueDpc 或从 VideoPortSynchronizeExecution 的回调调用 VideoPortSetBusData

要求

要求
最低受支持的客户端 在 Windows 2000 及更高版本的 Windows 操作系统中可用。
目标平台 桌面
标头 video.h (包括 Video.h)
Library Videoprt.lib
DLL Videoprt.sys
IRQL PASSIVE_LEVEL

另请参阅

HalSetBusDataByOffset

HwVidFindAdapter

PCI_COMMON_CONFIG

PCI_SLOT_NUMBER

VideoPortGetAccessRanges

VideoPortGetBusData