Bus IEEE 1394

Panoramica della tecnologia del bus IEEE 1394.

Per sviluppare il bus IEEE 1394, sono necessarie queste intestazioni:

Per la guida alla programmazione, vedere bus IEEE 1394.

IOCTLs

 
IOCTL_1394_CLASS

Un driver IEEE 1394 usa l'IRP IRP_MJ_INTERNAL_DEVICE_CONTROL, con IoControlCode IOCTL_1394_CLASS, per comunicare con l'autista del bus. Il driver ha accesso a tutte le operazioni fornite dal bus IEEE 1394 e dal relativo controller host tramite questa richiesta.
IOCTL_61883_CLASS

Un driver client IEC-61883 usa il IRP_MJ_INTERNAL_DEVICE_CONTROL IRP con IoControlCode IOCTL_61883_CLASS per comunicare con lo stack di driver 1394 usando il protocollo IEC-61883.

Enumerazioni

 
CMP_CONNECT_TYPE

Questa enumerazione specifica un tipo di connessione.
CMP_PLUG_LOCATION

Questa enumerazione specifica la posizione di un plug.
CMP_PLUG_TYPE

Questa enumerazione specifica il tipo di un plug.

Funzioni

 
PBUS_RESET_ROUTINE

Si tratta di una funzione fornita dal chiamante da chiamare dal driver di protocollo quando viene reimpostato il bus 1394.
PCMP_MONITOR_ROUTINE

Questa routine viene chiamata per il monitoraggio dei plug.
PCMP_NOTIFY_ROUTINE

Questa routine viene chiamata per la notifica plug.this routine is called for plug notification.

Strutture

 
ADDRESS_FIFO

La struttura ADDRESS_FIFO è una voce in un elenco collegato a singly di MDLs usato dalla richiesta del bus IEEE 1394 REQUEST_ALLOCATE_ADDRESS_RANGE.
ADDRESS_OFFSET

La struttura ADDRESS_OFFSET specifica l'indirizzo a 48 bit all'interno dello spazio indirizzi IEEE 1394 di un dispositivo.
ADDRESS_RANGE

La struttura ADDRESS_RANGE descrive un intervallo nello spazio indirizzi di un dispositivo IEEE 1394.
AV_61883_REQUEST

La struttura AV_61883_REQUEST viene usata per passare le richieste al driver di protocollo IEC-61883.
AV_PCR

La struttura AV_PCR specifica le impostazioni per un plug di input o di output.
BUS_GENERATION_NODE

La struttura BUS_GENERATION_NODE viene usata insieme alla richiesta di Av61883_GetUnitInfo per recuperare le caratteristiche del bus.
BUS_RESET_DATA

La struttura BUS_RESET_DATA specifica il contesto per la routine di notifica di reimpostazione del bus estesa.
BUS_RESET_NOTIFY

Questa struttura viene usata per registrare o annullare la registrazione del callback PBUS_RESET_ROUTINE.
CIP_ATTACH_FRAME

Questa struttura viene utilizzata in una richiesta di frame di collegamento.
CIP_CANCEL_FRAME

La richiesta annulla un buffer frame collegato. È possibile annullare un frame mentre il flusso è in esecuzione.
CIP_DATA_FORMAT_VER2

Questa struttura è un formato di dati CIP usato da CMP_CONNECT_VER2.
CIP_DATA_FORMAT_VER3

Questa struttura viene utilizzata da CipDataFormat.
CIP_FRAME

La struttura CIP_FRAME descrive un frame da collegare a un plug di input o di output.
CIP_LISTEN

Questa struttura viene utilizzata per una richiesta di ascolto. La richiesta inizia la ricezione isocrona sulla connessione specificata.
CIP_NOTIFY_INFO

La struttura CIP_NOTIFY_INFO contiene informazioni sul frame.
CIP_STOP

Questa struttura viene utilizzata per arrestare la trasmissione o la ricezione.
CIP_TALK

Questa struttura viene utilizzata per iniziare la trasmissione.
CIP_VALIDATE_INFO

La struttura CIP_VALIDATE_INFO contiene informazioni sul frame.
CMP_CONNECT_VER2

Questa struttura contiene informazioni per una richiesta di connessione. La richiesta tenta di stabilire una connessione a un registro di controllo plug nell'host locale.
CMP_CONNECT_VER3

Questa struttura contiene informazioni per una richiesta di connessione.
CMP_CREATE_PLUG

Questa struttura viene usata per creare un plug.
CMP_DELETE_PLUG

Questa struttura viene utilizzata per eliminare un plug. Av61883_CreatePlug.
CMP_DISCONNECT

Questa struttura viene utilizzata per interrompere una connessione.
CMP_GET_PLUG_HANDLE

Questa struttura viene usata per ottenere l'handle di una spina.
CMP_GET_PLUG_STATE

Questa struttura viene usata per ottenere lo stato di un plug.
CMP_MONITOR_INFO

La struttura CMP_MONITOR_INFO viene usata insieme alla richiesta di Av61883_MonitorPlugs per consentire a un driver di monitorare l'accesso ai plug-in oPCR e iPCR locali.
CMP_MONITOR_PLUGS

Questa struttura viene usata per monitorare l'accesso plug-in. La richiesta consente a un driver di monitorare l'accesso a plug-in oPCR e iPCR locali.
CMP_NOTIFY_INFO

Questa struttura viene utilizzata dal callback PCMP_NOTIFY_ROUTINE.
CMP_SET_PLUG

Questa struttura viene usata per assegnare le impostazioni a un plug.
CONFIG_ROM

La struttura CONFIG_ROM viene usata per contenere i primi 24 byte di un ROM di configurazione di un dispositivo IEEE 1394.
CYCLE_TIME

La struttura CYCLE_TIME contiene il tempo del ciclo isocrono IEEE 1394.
FCP_FRAME

La struttura FCP_FRAME descrive una richiesta fcp (Function Control Protocol).
FCP_GET_REQUEST

Questa struttura viene usata per una richiesta get.
FCP_REQUEST

Questa struttura viene utilizzata per una richiesta di invio.
FCP_RESPONSE

La struttura viene usata in una richiesta yjsy recupera la risposta FCP successiva dalla coda di richieste gestite dal driver di protocollo IEC-61883.
FCP_SEND_RESPONSE

Questa struttura viene usata per una risposta di invio.
GET_LOCAL_HOST_INFO1

La struttura GET_LOCAL_HOST_INFO1 contiene i dati restituiti da una richiesta di REQUEST_GET_LOCAL_HOST_INFO tramite u.GetLocalHostInformation.nLevel GET_HOST_UNIQUE_ID.
GET_LOCAL_HOST_INFO2

La struttura GET_LOCAL_HOST_INFO2 contiene i dati restituiti da una richiesta di REQUEST_GET_LOCAL_HOST_INFO tramite u.GetLocalHostInformation.nLevel GET_HOST_CAPABILITIES.
GET_LOCAL_HOST_INFO3

La struttura GET_LOCAL_HOST_INFO3 contiene i dati restituiti da una richiesta di REQUEST_GET_LOCAL_HOST_INFO usando u.GetLocalHostInformation.nLevel = GET_POWER_SUPPLIED.
GET_LOCAL_HOST_INFO4

La struttura GET_LOCAL_HOST_INFO4 contiene i dati restituiti da una richiesta di REQUEST_GET_LOCAL_HOST_INFO usando u.GetLocalHostInformation.nLevel = GET_PHYS_ADDR_ROUTINE.
GET_LOCAL_HOST_INFO5

La struttura GET_LOCAL_HOST_INFO5 contiene i dati restituiti da una richiesta di REQUEST_GET_LOCAL_HOST_INFO usando u.GetLocalHostInformation.nLevel = GET_HOST_CONFIG_ROM.
GET_LOCAL_HOST_INFO6

La struttura GET_LOCAL_HOST_INFO6 contiene i dati restituiti da una richiesta di REQUEST_GET_LOCAL_HOST_INFO tramite u.GetLocalHostInformation.nLevel = GET_HOST_CSR_CONTENTS.
GET_LOCAL_HOST_INFO7_W2K

La struttura GET_LOCAL_HOST_INFO7_W2K viene restituita da una richiesta di REQUEST_GET_LOCAL_HOST_INFO con you.GetLocalHostInformation.nLevel impostata su GET_HOST_DMA_CAPABILITIES.
GET_LOCAL_HOST_INFO7_WXP

La struttura GET_LOCAL_HOST_INFO7_WXP viene restituita da una richiesta di REQUEST_GET_LOCAL_HOST_INFO con you.GetLocalHostInformation.nLevel impostata su GET_HOST_DMA_CAPABILITIES.
GET_LOCAL_HOST_INFO8

La struttura GET_LOCAL_HOST_INFO8 contiene i dati restituiti da una richiesta di REQUEST_GET_LOCAL_HOST_INFO con you.GetLocalHostInformation.nLevel impostato su GET_HOST_DDI_VERSION.
GET_UNIT_CAPABILITIES

La struttura GET_UNIT_CAPABILITIES viene usata insieme alla richiesta di Av61883_GetUnitInfo per recuperare informazioni sull'unità sulle funzionalità di un dispositivo.
GET_UNIT_IDS

La struttura GET_UNIT_CAPABILITIES viene usata insieme alla richiesta di Av61883_GetUnitInfo per recuperare gli identificatori del dispositivo.
GET_UNIT_INFO

Questa struttura viene usata per ottenere informazioni sull'unità.
IO_ADDRESS

La struttura IO_ADDRESS specifica l'indirizzo di destinazione a 1394 bit a 64 bit per operazioni di lettura, scrittura e blocco.
IPCR

La struttura IPCR contiene i valori di inizializzazione per un plug di input.
IRB

I driver usano questa struttura per passare la maggior parte delle richieste al driver del bus IEEE 1394.
IRB_REQ_ALLOCATE_ADDRESS_RANGE

Questa struttura contiene i campi necessari per lo stack 1394 per eseguire una richiesta per allocare un intervallo di indirizzi.
IRB_REQ_ASYNC_LOCK

Questa struttura contiene i campi necessari per lo stack 1394 per eseguire una richiesta di blocco asincrona.
IRB_REQ_ASYNC_READ

Questa struttura contiene i campi necessari per lo stack 1394 per eseguire una richiesta di lettura asincrona.
IRB_REQ_ASYNC_STREAM

Questa struttura contiene i campi necessari per il driver del bus 1394 per eseguire una richiesta di scrittura asincrona.
IRB_REQ_ASYNC_WRITE

Questa struttura contiene i campi necessari per lo stack 1394 per eseguire una richiesta di scrittura asincrona.
IRB_REQ_BUS_RESET

Questa struttura contiene i campi necessari per il driver del bus 1394 per creare una richiesta di reimpostazione del bus.
IRB_REQ_BUS_RESET_NOTIFICATION

Questa struttura contiene i campi necessari per il conducente del bus 1394 per eseguire una richiesta di notifica di reimpostazione del bus.
IRB_REQ_CONTROL

Questa struttura contiene i campi necessari per il conducente del bus 1394 per eseguire una richiesta di controllo.
IRB_REQ_FREE_ADDRESS_RANGE

Questa struttura contiene i campi necessari per lo stack 1394 per eseguire una richiesta di intervallo di indirizzi gratuito.
IRB_REQ_GET_1394_ADDRESS_FROM_DEVICE_OBJECT

Questa struttura contiene i campi necessari per eseguire una richiesta Get1394AddressFromDeviceObject.
IRB_REQ_GET_CONFIG_ROM

Questa struttura contiene i campi necessari per l'esecuzione di una richiesta GetConfigRom da parte del conducente del bus.
IRB_REQ_GET_CONFIGURATION_INFORMATION

Questa struttura contiene i campi necessari per l'autista del bus 1394 per eseguire una richiesta GetConfigurationInformation.
IRB_REQ_GET_GENERATION_COUNT

Questa struttura contiene i campi necessari per l'autista del bus 1394 per eseguire una richiesta GetGenerationCount.
IRB_REQ_GET_LOCAL_HOST_INFORMATION

Questa struttura contiene i campi necessari per l'autista del bus 1394 per eseguire una richiesta GetLocalHostInformation.
IRB_REQ_GET_MAX_SPEED_BETWEEN_DEVICES

Questa struttura contiene i campi necessari per consentire al conducente del bus di eseguire una richiesta GetMaxSpeedBetweenDevices.
IRB_REQ_GET_SPEED_TOPOLOGY_MAPS

Questa struttura contiene i campi necessari per il driver del bus 1394 per eseguire una richiesta GetSpeedTopologyMaps.
IRB_REQ_ISOCH_ALLOCATE_BANDWIDTH

Questa struttura contiene i campi necessari per consentire al conducente del bus di eseguire una richiesta IsochAllocateBandwidth.
IRB_REQ_ISOCH_ALLOCATE_CHANNEL

Questa struttura contiene i campi necessari per consentire al conducente del bus 1394 di eseguire una richiesta IsochAllocateChannel.
IRB_REQ_ISOCH_ALLOCATE_RESOURCES_W2K

La struttura IRB_REQ_ISOCH_ALLOCATE_RESOURCES_W2K contiene i campi necessari per l'autista del bus 1394 per eseguire una richiesta IsochAllocateResources.
IRB_REQ_ISOCH_ALLOCATE_RESOURCES_WXP

La struttura IRB_REQ_ISOCH_ALLOCATE_RESOURCES_WXP contiene i campi necessari per l'autista del bus 1394 per eseguire una richiesta IsochAllocateResources.
IRB_REQ_ISOCH_ATTACH_BUFFERS

Questa struttura contiene i campi necessari per l'autista del bus 1394 per eseguire una richiesta IsochAttachBuffers.
IRB_REQ_ISOCH_DETACH_BUFFERS

Questa struttura contiene i campi necessari per eseguire una richiesta IsochDetachBuffers.
IRB_REQ_ISOCH_FREE_BANDWIDTH

Questa struttura contiene i campi necessari per consentire al conducente del bus di eseguire una richiesta IsochFreeBandwidth.
IRB_REQ_ISOCH_FREE_CHANNEL

Questa struttura contiene i campi necessari per eseguire una richiesta IsochFreeChannel.
IRB_REQ_ISOCH_FREE_RESOURCES

Questa struttura contiene i campi necessari per eseguire una richiesta IsochFreeResources.
IRB_REQ_ISOCH_LISTEN

Questa struttura contiene i campi necessari per eseguire una richiesta ReqIsochListen.
IRB_REQ_ISOCH_MODIFY_STREAM_PROPERTIES

Questa struttura contiene i campi necessari per il driver bus per eseguire una richiesta IsochModifyStreamProperties.
IRB_REQ_ISOCH_QUERY_CURRENT_CYCLE_TIME

Questa struttura contiene i campi necessari per il driver bus per eseguire una richiesta IsochQueryCurrentCycleTime.
IRB_REQ_ISOCH_QUERY_RESOURCES

Questa struttura contiene i campi necessari per eseguire una richiesta IsochQueryResources.
IRB_REQ_ISOCH_SET_CHANNEL_BANDWIDTH

Questa struttura contiene i campi necessari per il driver bus per eseguire una richiesta IsochSetChannelBandwidth.
IRB_REQ_ISOCH_STOP

Questa struttura contiene il campo necessario per eseguire una richiesta IsochStop.
IRB_REQ_ISOCH_TALK

Questa struttura contiene il campo necessario per eseguire una richiesta IsochTalk.
IRB_REQ_RECEIVE_PHY_PACKETS

Questa struttura contiene i campi necessari per eseguire una richiesta ReceivePhyPackets.
IRB_REQ_SEND_PHY_CONFIGURATION_PACKET

Questa struttura contiene i campi necessari per eseguire una richiesta SendPhyConfigurationPacket.
IRB_REQ_SEND_PHY_PACKET

Questa struttura contiene i campi necessari per eseguire una richiesta SendPhyPacket.
IRB_REQ_SET_DEVICE_XMIT_PROPERTIES

Questa struttura contiene i campi necessari per eseguire una richiesta SetDeviceXmitProperties.
IRB_REQ_SET_LOCAL_HOST_PROPERTIES

Questa struttura contiene i campi necessari per eseguire una richiesta SetLocalHostProperties.
ISOCH_DESCRIPTOR

La struttura ISOCH_DESCRIPTOR descrive un buffer da collegare o dettagliato da un handle di risorse, usando le richieste di REQUEST_ISOCH_ATTACH_BUFFERS e REQUEST_ISOCH_DETACH_BUFFERS.
NODE_ADDRESS

La struttura NODE_ADDRESS specifica il numero del bus a 10 bit e il numero di nodo a 6 bit che fungono da indirizzo del nodo per un nodo 1394.
NOTIFICATION_INFO_W2K

Il driver del bus passa NOTIFICATION_INFO_W2K alla routine di notifica fornita dal driver per un intervallo di indirizzi allocato dal driver in uno spazio indirizzi IEEE 1394.
NOTIFICATION_INFO_WXP

Il driver del bus passa NOTIFICATION_INFO_WXP alla routine di notifica fornita dal driver per un intervallo di indirizzi allocato dal driver in uno spazio indirizzi IEEE 1394.
OPCR

La struttura OPCR contiene i valori di inizializzazione per un plug di output.
PHY_CONFIGURATION_PACKET

La struttura PHY_CONFIGURATION_PACKET contiene un pacchetto di configurazione PHY non elaborato.
SELF_ID

La struttura SELF_ID contiene un pacchetto non elaborato senza pacchetti auto-ID. Per informazioni dettagliate, vedere il sito Web delle specifiche IEEE 1394 Trade Association.
SELF_ID_MORE

La struttura SELF_ID_MORE contiene un pacchetto non elaborato uno, due o tre pacchetti auto-ID. Per informazioni dettagliate, vedere la specifica IEEE 1394.
SET_CMP_ADDRESS_TYPE

La struttura SET_CMP_ADDRESS_TYPE viene usata insieme alla richiesta di Av61883_SetUnitInfo per impostare i parametri che il driver di protocollo IEC-61883 deve usare durante l'acquisizione e la trasmissione di pacchetti isocroni.
SET_FCP_NOTIFY

Questa struttura viene usata per la notifica FCP.
SET_LOCAL_HOST_PROPS2

SET_LOCAL_HOST_PROPS2 imposta un limite inferiore sul valore che il bus userà per il numero di gap.
SET_LOCAL_HOST_PROPS3

SET_LOCAL_HOST_PROPS3 contiene i dati necessari per definire o identificare una o più directory di unità nella ROM di configurazione di un controller host 1394.
SET_UNIT_DIRECTORY

Questa struttura viene usata per assegnare le impostazioni per una directory di unità.
SET_UNIT_INFO

Questa struttura viene utilizzata per impostare le informazioni sulle unità.
SPEED_MAP

La struttura SPEED_MAP archivia una mappa di velocità del bus IEEE 1394.
TEXTUAL_LEAF

La struttura TEXTUAL_LEAF descrive la descrizione del dispositivo che può essere archiviata nella CONFIGURAZIONE ROM dei dispositivi che soddisfano le specifiche PC 98 o PC 99.
TOPOLOGY_MAP

La struttura TOPOLOGY_MAP viene usata per archiviare una mappa della topologia del bus IEEE 1394. Le relazioni tra i dispositivi si trovano nei membri della porta delle voci in TOP_Self_ID_Array.
UNIT_DDI_VERSION

La struttura UNIT_DDI_VERSION viene usata insieme alla richiesta di Av61883_GetUnitInfo per recuperare la versione DDI 61883 corrente.
UNIT_DIAG_LEVEL

La struttura UNIT_DDI_VERSION viene usata insieme alla richiesta di Av61883_GetUnitInfo per recuperare il livello diag corrente
UNIT_ISOCH_PARAMS

La struttura UNIT_ISOCH_PARAMS viene usata per ottenere o impostare i parametri usati dal driver di protocollo IEC-61883 durante l'acquisizione o la trasmissione di pacchetti isocroni.