Funzione HalGetBusDataByOffset (ntddk.h)
Avviso
HalGetBusDataByOffset e HalSetBusDataByOffset sono disponibili per la compatibilità con le versioni precedenti, ma devono essere usati solo se i metodi consigliati in Accesso allo spazio di configurazione del dispositivo non possono essere usati.
Questa funzione recupera informazioni, a partire dall'offset, su uno slot o un indirizzo su un bus di I/O.
Sintassi
NTHALAPI ULONG HalGetBusDataByOffset(
[in] BUS_DATA_TYPE BusDataType,
[in] ULONG BusNumber,
[in] ULONG SlotNumber,
[in] PVOID Buffer,
[in] ULONG Offset,
[in] ULONG Length
);
Parametri
[in] BusDataType
Dati del bus da recuperare. Il limite superiore dei tipi di bus supportato è sempre MaximumBusDataType. L'unico busDataType supportato è PCIConfiguration
Tutti gli altri tipi sono deprecati.
[in] BusNumber
Numero assegnato in base zero e al sistema del bus nei sistemi con diversi autobus dello stesso busDataType. Questo argomento contiene anche il numero di segmento. Per specificare il numero di segmento, usare (Segmento << 8) | BusNumber
[in] SlotNumber
Numero di slot logico o posizione del dispositivo. Se si specifica PCIConfiguration come busDataType, questo valore è un valore PCI_SLOT_NUMBER, ovvero i numeri di slot e funzione combinati.
[in] Buffer
Puntatore a un buffer fornito dal chiamante per informazioni di configurazione specifiche di BusDataType.
Se si specifica PCIConfiguration, il buffer contiene le informazioni sullo spazio di configurazione PCI per il numero di funzione e slotnumber specificato. L'offset e la lunghezza specificati determinano la quantità di informazioni da fornire. Alcuni membri dello spazio di configurazione PCI hanno valori di sola lettura Il chiamante è responsabile della conservazione dei valori forniti dal sistema dei membri di sola lettura. Si noti che per un dispositivo PCI Type-1, HalSetBusDataByOffset impedisce le scritture ai registri all'interno dell'intestazione comune (primi 256 byte dello spazio di configurazione).
[in] Offset
Offset di byte nella struttura PCI_COMMON_CONFIG per cui devono essere restituite le informazioni richieste. I chiamanti possono usare la costante definita dal sistema PCI_COMMON_HDR_LENGTH per specificare l'area specifica del dispositivo di PCI_COMMON_CONFIG.
[in] Length
Numero massimo di byte nel buffer.
Valore restituito
Il valore restituito è la lunghezza effettiva letto dallo spazio di configurazione.
Commenti
I driver di dispositivo chiamano questa funzione durante l'inizializzazione per individuare i dispositivi in un particolare bus di I/O. È possibile usare i dati di configurazione specifici del bus restituiti nelle chiamate successive ad altre funzioni di configurazione e inizializzazione, ad esempio HalTranslateBusAddress.
Quando si accede all'area specifica del dispositivo dello spazio di configurazione PCI, HalGetBusDataByOffset garantisce che questa funzione non legge mai o scrive i dati all'esterno dell'intervallo specificato dall'offset di input e lunghezza. Anche se la lunghezza di input è esattamente una parola da 1 byte o da 2 byte, questa funzione non accede mai ai dati all'esterno dell'intervallo richiesto.
Requisiti
Requisito | Valore |
---|---|
Intestazione | ntddk.h (include Ntddk.h) |