Windows Driver Kit: Buses
IRB

Drivers use this structure to pass most requests to IEEE 1394 bus driver.

typedef struct _IRB {
  ULONG  FunctionNumber;
  ULONG  Flags;
  ULONG  BusReserved[IRB_BUS_RESERVED_SZ];
  ULONG  PortReserved[IRB_PORT_RESERVED_SZ];
  union {
    .
    .
    .
  } u;
}

Members

FunctionNumber
Determines the type of request. Each request type is documented under the value of FunctionNumber in IEEE 1394 Bus I/O Requests.
Flags
Reserved. Drivers must set this member to zero with one exception. When making a REQUEST_ISOCH_ALLOCATE_BANDWIDTH request, the caller can set the IRB_FLAG_ALLOW_REMOTE_FREE flag in Flags to indicate that the system should free the bandwidth handle memory pointed to be IsochAllocateBandwidth.hBandwidth. If caller does not set this flag, then caller will have to free the bandwidth handle.
BusReserved
Reserved.
PortReserved
Reserved.
u
Specifies a union of structures, one for each value of FunctionNumber. The applicable submembers of u for each request are described with each request type in IEEE 1394 Bus I/O Requests.
FunctionNumberAssociated Member
REQUEST_ALLOCATE_ADDRESS_RANGEAllocateAddressRange
REQUEST_ASYNC_LOCKAsyncLock
REQUEST_ASYNC_READAsyncRead
REQUEST_ASYNC_STREAMAsyncStream
REQUEST_ASYNC_WRITEAsyncWrite
REQUEST_ISOCH_ALLOCATE_BANDWIDTHBusReset
REQUEST_ISOCH_ALLOCATE_BANDWIDTHBusResetNotification
REQUEST_ISOCH_ALLOCATE_BANDWIDTHControl
REQUEST_ISOCH_ALLOCATE_BANDWIDTHIsochAllocateBandwidth
REQUEST_ISOCH_DETACH_BUFFERSIsochAllocateChannel
REQUEST_ISOCH_DETACH_BUFFERSIsochAllocateResources
REQUEST_ISOCH_DETACH_BUFFERSIsochAttachBuffers
REQUEST_ISOCH_DETACH_BUFFERSIsochDetachBuffers
REQUEST_ISOCH_LISTENIsochFreeBandwidth
REQUEST_ISOCH_LISTENIsochFreeChannel
REQUEST_ISOCH_LISTENIsochFreeResources
REQUEST_ISOCH_LISTENIsochListen
REQUEST_ISOCH_QUERY_RESOURCESIsochQueryCurrentCycleTime
REQUEST_ISOCH_QUERY_RESOURCESIsochQueryResources
REQUEST_ISOCH_SET_CHANNEL_BANDWIDTHIsochSetChannelBandwidth
REQUEST_FREE_ADDRESS_RANGEIsochStop
REQUEST_FREE_ADDRESS_RANGEIsochTalk
REQUEST_FREE_ADDRESS_RANGEFreeAddressRange
REQUEST_GET_LOCAL_HOST_INFOGet1394AddressFromDeviceObject
REQUEST_GET_LOCAL_HOST_INFOGetConfigurationInformation
REQUEST_GET_LOCAL_HOST_INFOGetGenerationCount
REQUEST_GET_LOCAL_HOST_INFOGetLocalHostInformation
REQUEST_GET_SPEED_BETWEEN_DEVICESGetMaxSpeedBetweenDevices
REQUEST_GET_SPEED_TOPOLOGY_MAPSGetSpeedTopologyMaps
REQUEST_SEND_PHY_CONFIG_PACKETSendPhyConfigurationPacket
REQUEST_SET_LOCAL_HOST_PROPERTIESSetLocalHostProperties
REQUEST_SET_DEVICE_XMIT_PROPERTIESSetDeviceXmitProperties

Comments

The Parameters->Others.Arguments1 member of an IOCTL_1394_CLASS IRP points to an IRB structure. The bus driver uses the IRB to determine the type of request made by the device driver, and also to return the results of the operation. See IEEE 1394 Bus I/O Requests for a description of the behavior of each request.

Requirements

Headers: Declared in 1394.h. Include 1394.h.

See Also

IOCTL_1394_CLASS


Send feedback on this topic
Built on November 19, 2009
Page view tracker