Bus IEEE 1394

Introducción a la tecnología de bus IEEE 1394.

Para desarrollar el bus IEEE 1394, necesita estos encabezados:

Para obtener la guía de programación, consulte bus IEEE 1394.

IOCTLs

 
IOCTL_1394_CLASS

Un controlador IEEE 1394 usa el IRP de IRP_MJ_INTERNAL_DEVICE_CONTROL, con ioControlCode IOCTL_1394_CLASS, para comunicarse con el controlador de autobús. El controlador tiene acceso a todas las operaciones proporcionadas por el bus IEEE 1394 y su controlador host a través de esta solicitud.
IOCTL_61883_CLASS

Un controlador cliente IEC-61883 usa la IRP_MJ_INTERNAL_DEVICE_CONTROL IRP con IoControlCode IOCTL_61883_CLASS para comunicarse con la pila de controladores 1394 mediante el protocolo IEC-61883.

Enumeraciones

 
CMP_CONNECT_TYPE

Esta enumeración especifica un tipo de conexión.
CMP_PLUG_LOCATION

Esta enumeración especifica la ubicación de un enchufe.
CMP_PLUG_TYPE

Esta enumeración especifica el tipo de un enchufe.

Funciones

 
PBUS_RESET_ROUTINE

Se trata de una función proporcionada por el autor de la llamada a la que llamará el controlador de protocolo cuando se restablezca el bus 1394.
PCMP_MONITOR_ROUTINE

Esta rutina se llama para la supervisión de enchufes.
PCMP_NOTIFY_ROUTINE

Esta rutina se llama para la notificación del enchufe.

Estructuras

 
ADDRESS_FIFO

La estructura ADDRESS_FIFO es una entrada en una lista vinculada de forma singly de MDL que usa la solicitud de bus IEEE 1394 de REQUEST_ALLOCATE_ADDRESS_RANGE.
ADDRESS_OFFSET

La estructura ADDRESS_OFFSET especifica la dirección de 48 bits dentro del espacio de direcciones IEEE 1394 de un dispositivo.
ADDRESS_RANGE

La estructura ADDRESS_RANGE describe un intervalo en el espacio de direcciones del dispositivo IEEE 1394.
AV_61883_REQUEST

La estructura AV_61883_REQUEST se usa para pasar solicitudes al controlador del protocolo IEC-61883.
AV_PCR

La estructura AV_PCR especifica la configuración de un enchufe de entrada o salida.
BUS_GENERATION_NODE

La estructura BUS_GENERATION_NODE se usa junto con la solicitud Av61883_GetUnitInfo para recuperar las características del bus.
BUS_RESET_DATA

La estructura BUS_RESET_DATA especifica el contexto de la rutina de notificación de restablecimiento de bus extendido.
BUS_RESET_NOTIFY

Esta estructura se usa para registrar o anular el registro de la devolución de llamada PBUS_RESET_ROUTINE.
CIP_ATTACH_FRAME

Esta estructura se usa en una solicitud de marco de asociación.
CIP_CANCEL_FRAME

La solicitud cancela un búfer de fotogramas adjunto. Se puede cancelar un fotograma mientras se ejecuta la secuencia.
CIP_DATA_FORMAT_VER2

Esta estructura es un formato de datos CIP que usa CMP_CONNECT_VER2.
CIP_DATA_FORMAT_VER3

CipDataFormat usa esta estructura.
CIP_FRAME

La estructura CIP_FRAME describe un marco que se va a conectar a un enchufe de entrada o salida.
CIP_LISTEN

Esta estructura se usa para una solicitud de escucha. La solicitud comienza la recepción isócrónica en la conexión especificada.
CIP_NOTIFY_INFO

La estructura CIP_NOTIFY_INFO contiene información sobre el marco.
CIP_STOP

Esta estructura se utiliza para detener la transmisión o recepción.
CIP_TALK

Esta estructura se usa para iniciar la transmisión.
CIP_VALIDATE_INFO

La estructura CIP_VALIDATE_INFO contiene información sobre el marco.
CMP_CONNECT_VER2

Esta estructura contiene información para una solicitud de conexión. La solicitud intenta realizar una conexión a un registro de control plug en el host local.
CMP_CONNECT_VER3

Esta estructura contiene información para una solicitud de conexión.
CMP_CREATE_PLUG

Esta estructura se usa para crear un enchufe.
CMP_DELETE_PLUG

Esta estructura se usa para eliminar un enchufe. Av61883_CreatePlug.
CMP_DISCONNECT

Esta estructura se usa para interrumpir una conexión.
CMP_GET_PLUG_HANDLE

Esta estructura se usa para obtener el controlador de un enchufe.
CMP_GET_PLUG_STATE

Esta estructura se usa para obtener el estado de un enchufe.
CMP_MONITOR_INFO

La estructura CMP_MONITOR_INFO se usa junto con la solicitud de Av61883_MonitorPlugs para permitir que un controlador supervise el acceso a los enchufes locales oPCR e iPCR.
CMP_MONITOR_PLUGS

Esta estructura se usa para supervisar el acceso a los enchufes. La solicitud permite a un controlador supervisar todo el acceso a los enchufes locales oPCR e iPCR.
CMP_NOTIFY_INFO

La devolución de llamada de PCMP_NOTIFY_ROUTINE usa esta estructura.
CMP_SET_PLUG

Esta estructura se usa para asignar la configuración a un enchufe.
CONFIG_ROM

La estructura CONFIG_ROM se usa para contener los primeros 24 bytes de un ROM de configuración del dispositivo IEEE 1394.
CYCLE_TIME

La estructura CYCLE_TIME contiene el tiempo del ciclo isocrónico IEEE 1394.
FCP_FRAME

La estructura FCP_FRAME describe una solicitud de protocolo de control de funciones (FCP).
FCP_GET_REQUEST

Esta estructura se usa para una solicitud get.
FCP_REQUEST

Esta estructura se usa para una solicitud de envío.
FCP_RESPONSE

La estructura se usa en una solicitud yjsy recupera la siguiente respuesta FCP de la cola de solicitudes mantenidas por el controlador del protocolo IEC-61883.
FCP_SEND_RESPONSE

Esta estructura se usa para una respuesta de envío.
GET_LOCAL_HOST_INFO1

La estructura GET_LOCAL_HOST_INFO1 contiene los datos devueltos por una solicitud de REQUEST_GET_LOCAL_HOST_INFO mediante u.GetLocalHostInformation.nLevel GET_HOST_UNIQUE_ID.
GET_LOCAL_HOST_INFO2

La estructura GET_LOCAL_HOST_INFO2 contiene los datos devueltos por una solicitud de REQUEST_GET_LOCAL_HOST_INFO mediante u.GetLocalHostInformation.nLevel GET_HOST_CAPABILITIES.
GET_LOCAL_HOST_INFO3

La estructura GET_LOCAL_HOST_INFO3 contiene los datos devueltos por una solicitud de REQUEST_GET_LOCAL_HOST_INFO mediante u.GetLocalHostInformation.nLevel = GET_POWER_SUPPLIED.
GET_LOCAL_HOST_INFO4

La estructura GET_LOCAL_HOST_INFO4 contiene los datos devueltos por una solicitud de REQUEST_GET_LOCAL_HOST_INFO mediante u.GetLocalHostInformation.nLevel = GET_PHYS_ADDR_ROUTINE.
GET_LOCAL_HOST_INFO5

La estructura GET_LOCAL_HOST_INFO5 contiene los datos devueltos por una solicitud de REQUEST_GET_LOCAL_HOST_INFO mediante u.GetLocalHostInformation.nLevel = GET_HOST_CONFIG_ROM.
GET_LOCAL_HOST_INFO6

La estructura GET_LOCAL_HOST_INFO6 contiene los datos devueltos por una solicitud de REQUEST_GET_LOCAL_HOST_INFO mediante u.GetLocalHostInformation.nLevel = GET_HOST_CSR_CONTENTS.
GET_LOCAL_HOST_INFO7_W2K

La estructura GET_LOCAL_HOST_INFO7_W2K se devuelve mediante una solicitud de REQUEST_GET_LOCAL_HOST_INFO con you.GetLocalHostInformation.nLevel establecido en GET_HOST_DMA_CAPABILITIES.
GET_LOCAL_HOST_INFO7_WXP

La estructura GET_LOCAL_HOST_INFO7_WXP se devuelve mediante una solicitud de REQUEST_GET_LOCAL_HOST_INFO con you.GetLocalHostInformation.nLevel establecido en GET_HOST_DMA_CAPABILITIES.
GET_LOCAL_HOST_INFO8

La estructura GET_LOCAL_HOST_INFO8 contiene los datos devueltos por una solicitud de REQUEST_GET_LOCAL_HOST_INFO con you.GetLocalHostInformation.nLevel establecido en GET_HOST_DDI_VERSION.
GET_UNIT_CAPABILITIES

La estructura GET_UNIT_CAPABILITIES se usa junto con la solicitud de Av61883_GetUnitInfo para recuperar información de unidad sobre las funcionalidades de un dispositivo.
GET_UNIT_IDS

La estructura GET_UNIT_CAPABILITIES se usa junto con la solicitud de Av61883_GetUnitInfo para recuperar identificadores de dispositivo.
GET_UNIT_INFO

Esta estructura se usa para obtener información de unidad.
IO_ADDRESS

La estructura IO_ADDRESS especifica la dirección de destino de 1394 de 64 bits para las operaciones de lectura, escritura y bloqueo.
IPCR

La estructura IPCR contiene valores de inicialización para un enchufe de entrada.
irB

Los controladores usan esta estructura para pasar la mayoría de las solicitudes al controlador de bus IEEE 1394.
IRB_REQ_ALLOCATE_ADDRESS_RANGE

Esta estructura contiene los campos necesarios para que la pila de 1394 lleve a cabo una solicitud para asignar un intervalo de direcciones.
IRB_REQ_ASYNC_LOCK

Esta estructura contiene los campos necesarios para que la pila de 1394 lleve a cabo una solicitud de bloqueo asincrónica.
IRB_REQ_ASYNC_READ

Esta estructura contiene los campos necesarios para que la pila de 1394 lleve a cabo una solicitud de lectura asincrónica.
IRB_REQ_ASYNC_STREAM

Esta estructura contiene los campos necesarios para que el controlador de bus 1394 lleve a cabo una solicitud de escritura asincrónica.
IRB_REQ_ASYNC_WRITE

Esta estructura contiene los campos necesarios para que la pila de 1394 lleve a cabo una solicitud de escritura asincrónica.
IRB_REQ_BUS_RESET

Esta estructura contiene los campos necesarios para que el controlador de bus 1394 cree una solicitud de restablecimiento de bus.
IRB_REQ_BUS_RESET_NOTIFICATION

Esta estructura contiene los campos necesarios para que el controlador de bus 1394 lleve a cabo una solicitud de notificación de restablecimiento de bus.
IRB_REQ_CONTROL

Esta estructura contiene los campos necesarios para que el controlador de bus 1394 lleve a cabo una solicitud de control.
IRB_REQ_FREE_ADDRESS_RANGE

Esta estructura contiene los campos necesarios para que la pila de 1394 lleve a cabo una solicitud de intervalo de direcciones libre.
IRB_REQ_GET_1394_ADDRESS_FROM_DEVICE_OBJECT

Esta estructura contiene los campos necesarios para llevar a cabo una solicitud Get1394AddressFromDeviceObject.
IRB_REQ_GET_CONFIG_ROM

Esta estructura contiene los campos necesarios para que el controlador de bus lleve a cabo una solicitud GetConfigRom.
IRB_REQ_GET_CONFIGURATION_INFORMATION

Esta estructura contiene los campos necesarios para que el controlador de bus 1394 lleve a cabo una solicitud GetConfigurationInformation.
IRB_REQ_GET_GENERATION_COUNT

Esta estructura contiene los campos necesarios para que el controlador de bus de 1394 lleve a cabo una solicitud GetGenerationCount.
IRB_REQ_GET_LOCAL_HOST_INFORMATION

Esta estructura contiene los campos necesarios para que el controlador de bus 1394 lleve a cabo una solicitud GetLocalHostInformation.
IRB_REQ_GET_MAX_SPEED_BETWEEN_DEVICES

Esta estructura contiene los campos necesarios para que el controlador de Bus lleve a cabo una solicitud GetMaxSpeedBetweenDevices.
IRB_REQ_GET_SPEED_TOPOLOGY_MAPS

Esta estructura contiene los campos necesarios para que el controlador de bus 1394 lleve a cabo una solicitud GetSpeedTopologyMaps.
IRB_REQ_ISOCH_ALLOCATE_BANDWIDTH

Esta estructura contiene los campos necesarios para que el controlador de Bus lleve a cabo una solicitud IsochAllocateBandwidth.
IRB_REQ_ISOCH_ALLOCATE_CHANNEL

Esta estructura contiene los campos necesarios para que el controlador de autobús de 1394 lleve a cabo una solicitud IsochAllocateChannel.
IRB_REQ_ISOCH_ALLOCATE_RESOURCES_W2K

La estructura IRB_REQ_ISOCH_ALLOCATE_RESOURCES_W2K contiene los campos necesarios para que el controlador de autobús de 1394 lleve a cabo una solicitud IsochAllocateResources.
IRB_REQ_ISOCH_ALLOCATE_RESOURCES_WXP

La estructura IRB_REQ_ISOCH_ALLOCATE_RESOURCES_WXP contiene los campos necesarios para que el controlador de bus de 1394 lleve a cabo una solicitud IsochAllocateResources.
IRB_REQ_ISOCH_ATTACH_BUFFERS

Esta estructura contiene los campos necesarios para que el controlador de autobús de 1394 lleve a cabo una solicitud IsochAttachBuffers.
IRB_REQ_ISOCH_DETACH_BUFFERS

Esta estructura contiene los campos necesarios para llevar a cabo una solicitud IsochDetachBuffers.
IRB_REQ_ISOCH_FREE_BANDWIDTH

Esta estructura contiene los campos necesarios para que el controlador de Bus lleve a cabo una solicitud IsochFreeBandwidth.
IRB_REQ_ISOCH_FREE_CHANNEL

Esta estructura contiene los campos necesarios para llevar a cabo una solicitud IsochFreeChannel.
IRB_REQ_ISOCH_FREE_RESOURCES

Esta estructura contiene los campos necesarios para llevar a cabo una solicitud IsochFreeResources.
IRB_REQ_ISOCH_LISTEN

Esta estructura contiene los campos necesarios para llevar a cabo una solicitud ReqIsochListen.
IRB_REQ_ISOCH_MODIFY_STREAM_PROPERTIES

Esta estructura contiene los campos necesarios para que el controlador bus lleve a cabo una solicitud IsochModifyStreamProperties.
IRB_REQ_ISOCH_QUERY_CURRENT_CYCLE_TIME

Esta estructura contiene los campos necesarios para que el controlador bus lleve a cabo una solicitud IsochQueryCurrentCycleTime.
IRB_REQ_ISOCH_QUERY_RESOURCES

Esta estructura contiene los campos necesarios para llevar a cabo una solicitud IsochQueryResources.
IRB_REQ_ISOCH_SET_CHANNEL_BANDWIDTH

Esta estructura contiene los campos necesarios para que el controlador de Bus lleve a cabo una solicitud IsochSetChannelBandwidth.
IRB_REQ_ISOCH_STOP

Esta estructura contiene el campo necesario para llevar a cabo una solicitud IsochStop.
IRB_REQ_ISOCH_TALK

Esta estructura contiene el campo necesario para llevar a cabo una solicitud de IsochTalk.
IRB_REQ_RECEIVE_PHY_PACKETS

Esta estructura contiene los campos necesarios para llevar a cabo una solicitud ReceivePhyPackets.
IRB_REQ_SEND_PHY_CONFIGURATION_PACKET

Esta estructura contiene los campos necesarios para llevar a cabo una solicitud SendPhyConfigurationPacket.
IRB_REQ_SEND_PHY_PACKET

Esta estructura contiene los campos necesarios para llevar a cabo una solicitud SendPhyPacket.
IRB_REQ_SET_DEVICE_XMIT_PROPERTIES

Esta estructura contiene los campos necesarios para llevar a cabo una solicitud SetDeviceXmitProperties.
IRB_REQ_SET_LOCAL_HOST_PROPERTIES

Esta estructura contiene los campos necesarios para llevar a cabo una solicitud SetLocalHostProperties.
ISOCH_DESCRIPTOR

La estructura ISOCH_DESCRIPTOR describe un búfer que se va a adjuntar o detallar desde un identificador de recursos mediante las solicitudes REQUEST_ISOCH_ATTACH_BUFFERS y REQUEST_ISOCH_DETACH_BUFFERS.
NODE_ADDRESS

La estructura de NODE_ADDRESS especifica el número de bus de 10 bits y el número de nodo de 6 bits que sirven como dirección de nodo para un nodo de 1394.
NOTIFICATION_INFO_W2K

El controlador de bus pasa NOTIFICATION_INFO_W2K a la rutina de notificación proporcionada por el controlador para un intervalo de direcciones asignado por el controlador en un espacio de direcciones IEEE 1394.
NOTIFICATION_INFO_WXP

El controlador de bus pasa NOTIFICATION_INFO_WXP a la rutina de notificación proporcionada por el controlador para un intervalo de direcciones asignado por el controlador en un espacio de direcciones IEEE 1394.
OPCR

La estructura OPCR contiene valores de inicialización para un enchufe de salida.
PHY_CONFIGURATION_PACKET

La estructura PHY_CONFIGURATION_PACKET contiene un paquete de configuración PHY sin procesar.
SELF_ID

La estructura de SELF_ID contiene un paquete sin procesar de autodirección de paquete. Consulte el sitio web de especificación ieee 1394 Trade Association para obtener más información.
SELF_ID_MORE

La estructura de SELF_ID_MORE contiene un paquete sin procesar uno, dos o tres paquetes de identificador propio. Consulte la especificación IEEE 1394 para obtener más información.
SET_CMP_ADDRESS_TYPE

La estructura SET_CMP_ADDRESS_TYPE se usa junto con la solicitud de Av61883_SetUnitInfo para establecer los parámetros que el controlador de protocolo IEC-61883 debe usar al capturar y transmitir paquetes isócronos.
SET_FCP_NOTIFY

Esta estructura se usa para la notificación de FCP.
SET_LOCAL_HOST_PROPS2

SET_LOCAL_HOST_PROPS2 establece un límite inferior en el valor que usará el bus para su recuento de huecos.
SET_LOCAL_HOST_PROPS3

SET_LOCAL_HOST_PROPS3 contiene los datos necesarios para definir o identificar uno o varios directorios de unidad en el ROM de configuración de un controlador de host 1394.
SET_UNIT_DIRECTORY

Esta estructura se usa para asignar la configuración de un directorio de unidad.
SET_UNIT_INFO

Esta estructura se usa para establecer información de unidad.
SPEED_MAP

La estructura SPEED_MAP almacena un mapa de velocidad de bus IEEE 1394.
TEXTUAL_LEAF

La estructura TEXTUAL_LEAF describe la descripción del dispositivo que se puede almacenar en el ROM de configuración de dispositivos que cumplen las especificaciones pc 98 o PC 99.
TOPOLOGY_MAP

La estructura TOPOLOGY_MAP se usa para almacenar un mapa de topología de bus IEEE 1394. Las relaciones entre dispositivos se encuentran en los miembros del puerto de las entradas de TOP_Self_ID_Array.
UNIT_DDI_VERSION

La estructura UNIT_DDI_VERSION se usa junto con la solicitud de Av61883_GetUnitInfo para recuperar la versión DDI 61883 actual.
UNIT_DIAG_LEVEL

La estructura UNIT_DDI_VERSION se usa junto con la solicitud de Av61883_GetUnitInfo para recuperar el nivel de diag actual.
UNIT_ISOCH_PARAMS

La estructura UNIT_ISOCH_PARAMS se usa para obtener o establecer los parámetros que usa el controlador de protocolo IEC-61883 al capturar o transmitir paquetes isócronos.