Función ScsiPortGetBusData (srb.h)
La rutina ScsiPortGetBusData devuelve información de configuración específica del tipo de bus que un controlador de miniporte HwScsiFindAdapter rutina puede usar para determinar si admite un adaptador determinado en un bus de E/S determinado y configurar el HBA si lo hace.
Sintaxis
SCSIPORT_API ULONG ScsiPortGetBusData(
[in] PVOID DeviceExtension,
[in] ULONG BusDataType,
[in] ULONG SystemIoBusNumber,
[in] ULONG SlotNumber,
[in] PVOID Buffer,
[in] ULONG Length
);
Parámetros
[in] DeviceExtension
Puntero al área de almacenamiento del controlador de miniporte por HBA.
[in] BusDataType
Contiene un valor de tipo BUS_DATA_TYPE que especifica el tipo de datos de configuración específicos del bus que se van a devolver. Actualmente, este valor puede ser uno de los siguientes: Cmos, EisaConfiguration, Poso PCIConfiguration. Sin embargo, en el futuro se admitirán tipos adicionales de configuración de bus. El límite superior de los tipos admitidos siempre es MaximumBusDataType.
[in] SystemIoBusNumber
Especifica el número asignado por el sistema del bus de E/S. La rutina de HwScsiFindAdapt er del controlador de miniporte obtiene este valor del miembro de entrada PORT_CONFIGURATION_INFORMATION SystemIoBusNumber.
[in] SlotNumber
Especifica el número de ranura lógica o la ubicación del dispositivo.
Si PCIConfiguration se especifica como BusDataType, este parámetro debe especificarse como un valor de tipo PCI_SLOT_NUMBER.
[in] Buffer
Puntero a un búfer o área a la que se devuelven los datos de configuración o, si el longitud especificado es cero, apunta a una ubicación a la que el controlador de puerto específico del sistema operativo devuelve un puntero a un búfer que asigna.
[in] Length
Especifica el número máximo de bytes que se van a devolver en buffer, o cero si el autor de la llamada requiere que el controlador de puerto específico del sistema operativo asigne un búfer para contener los datos.
Valor devuelto
ScsiPortGetBusData devuelve el número de bytes de información de configuración que almacena en el búfer. Cuando la entrada BusDataType es PCIConfiguration, ScsiPortGetBusData puede devolver cualquiera de los valores siguientes para indicar un error.
Código devuelto | Descripción |
---|---|
|
El bus PCI no existe. |
|
El bus PCI existe, pero no hay ningún dispositivo en el pci especificado SlotNumber. El de búfer de contiene el valor PCI_INVALID_VENDOR_ID en el miembro VendorId de PCI_COMMON_CONFIG. |
Observaciones
ScsiPortGetBusData solo se puede llamar desde una rutina de HwScsiFindAdapter del controlador de miniporte o desde HwScsiAdapterControl cuando el tipo de control es ScsiSetRunningConfig. Las llamadas de otras rutinas del controlador de miniportar provocarán un error del sistema o una operación incorrecta para el autor de la llamada.
Los datos de configuración devueltos por ScsiPortGetBusData solo son válidos hasta que el controlador de miniporta llama ScsiPortGetBusData de nuevo. En cuanto el autor de la llamada HwScsiFindAdapter rutina devuelve el control, los datos de configuración devueltos no son válidos.
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de | Escritorio |
encabezado de | srb.h (include Miniport.h, Scsi.h) |
biblioteca de | Scsiport.lib |
Consulte también
de PORT_CONFIGURATION_INFORMATION (SCSI)