IRB_REQ_ISOCH_FREE_BANDWIDTH structure (1394.h)

This structure contains the fields necessary in order for the Bus driver to carry out an IsochFreeBandwidth request.

Syntax

typedef struct _IRB_REQ_ISOCH_FREE_BANDWIDTH {
  HANDLE hBandwidth;
  ULONG  nMaxBytesPerFrameRequested;
  ULONG  fulSpeed;
  ULONG  BytesPerFrameAvailable;
  ULONG  SpeedSelected;
  ULONG  nBandwidthUnitsRequired;
} IRB_REQ_ISOCH_FREE_BANDWIDTH;

Members

hBandwidth

Specifies the bandwidth handle to release.

nMaxBytesPerFrameRequested

fulSpeed

BytesPerFrameAvailable

SpeedSelected

nBandwidthUnitsRequired

Remarks

If successful, the bus driver sets Irp->IoStatus.Status to STATUS_SUCCESS, and the isochronous bandwidth is returned to the pool of available bandwidth.

A status of STATUS_INVALID_GENERATION also indicates success.

Do not resend the REQUEST_ISOCH_FREE_BANDWIDTH request in order to release isochronous bandwidth if the request failed with the STATUS_INVALID_GENERATION error code. In that case, it is safe to assume that isochronous bandwidth was released as a result of 1394 bus generation changes.

Requirements

Requirement Value
Header 1394.h