IOFireWireAVCConsts.h [plain text]
#ifndef _IOKIT_IOFIREWIREAVCCONSTS_H
#define _IOKIT_IOFIREWIREAVCCONSTS_H
typedef enum {
kAVCCommandResponse = 0,
kAVCAddress = 1,
kAVCOpcode = 2,
kAVCOperand0 = 3,
kAVCOperand1 = 4,
kAVCOperand2 = 5,
kAVCOperand3 = 6,
kAVCOperand4 = 7,
kAVCOperand5 = 8,
kAVCOperand6 = 9,
kAVCOperand7 = 10,
kAVCOperand8 = 11
} IOAVCFrameFields;
typedef enum {
kAVCControlCommand = 0x00,
kAVCStatusInquiryCommand = 0x01,
kAVCSpecificInquiryCommand = 0x02,
kAVCNotifyCommand = 0x03,
kAVCGeneralInquiryCommand = 0x04,
kAVCNotImplementedStatus = 0x08,
kAVCAcceptedStatus = 0x09,
kAVCRejectedStatus = 0x0a,
kAVCInTransitionStatus = 0x0b,
kAVCImplementedStatus = 0x0c,
kAVCChangedStatus = 0x0d,
kAVCInterimStatus = 0x0f
} IOAVCCommandResponse;
typedef enum {
kAVCPlugInfoOpcode = 0x02,
kAVCOutputPlugSignalFormatOpcode = 0x18,
kAVCInputPlugSignalFormatOpcode = 0x19,
kAVCUnitInfoOpcode = 0x30,
kAVCSubunitInfoOpcode = 0x31,
kAVCConnectionsOpcode = 0x22,
kAVCConnectOpcode = 0x24,
kAVCDisconnectOpcode = 0x25,
kAVCPowerOpcode = 0xB2,
kAVCSignalSourceOpcode = 0x1A,
kAVCVendorDependentOpcode = 0x00,
kAVCOutputSignalModeOpcode = 0x78,
kAVCInputSignalModeOpcode = 0x79,
kAVCSignalModeSD525_60 = 0x00,
kAVCSignalModeSDL525_60 = 0x04,
kAVCSignalModeHD1125_60 = 0x08,
kAVCSignalModeSD625_50 = 0x80,
kAVCSignalModeSDL625_50 = 0x84,
kAVCSignalModeHD1250_50 = 0x88,
kAVCSignalModeDVCPro525_60 = 0x78,
kAVCSignalModeDVCPro625_50 = 0xf8,
kAVCSignalModeDummyOperand = 0xff,
kAVCSignalModeMask_50 = 0x80,
kAVCSignalModeMask_STYPE = 0x7c,
kAVCSignalModeMask_SDL = 0x04,
kAVCSignalModeMask_DVCPro25 = 0x78
} IOAVCOpcodes;
typedef enum {
kAVCVideoMonitor = 0x00,
kAVCAudio = 0x01,
kAVCPrinter = 0x02,
kAVCDiskRecorder = 0x03,
kAVCTapeRecorder = 0x04,
kAVCTuner = 0x05,
kAVCVideoCamera = 0x07,
kAVCCameraStorage = 0x0b,
kAVCVendorUnique = 0x1c,
kAVCNumSubUnitTypes = 0x20
} IOAVCUnitTypes;
#define kAVCAllOpcodes 0xFF
#define kAVCAllSubunitsAndUnit 0xEE
#define kAVCMaxNumPlugs 31
#define kAVCAnyAvailableIsochPlug 0x7F
#define kAVCAnyAvailableExternalPlug 0xFF
#define kAVCAnyAvailableSubunitPlug 0xFF
#define kAVCMultiplePlugs 0xFD
#define kAVCInvalidPlug 0xFE
#define IOAVCAddress(type, id) (((type) << 3) | (id))
#define kAVCUnitAddress 0xff
#define IOAVCType(address) ((address) >> 3)
#define IOAVCId(address) ((address) & 0x7)
#define kIOFWPCRDataRate FWBitRange(0,1)
#define kIOFWPCRDataRatePhase FWBitRangePhase(0,1)
#define kIOFWPCRExtension FWBitRange(8,15)
#define kIOFWPCRExtensionPhase FWBitRangePhase(8,15)
#define kIOFWPCRNumPlugs FWBitRange(27,31)
#define kIOFWPCRNumPlugsPhase FWBitRangePhase(27,31)
#define kIOFWPCRBroadcastBase FWBitRange(2,7)
#define kIOFWPCRBroadcastBasePhase FWBitRangePhase(2,7)
#define kIOFWPCROnline FWBitRange(0,0)
#define kIOFWPCROnlinePhase FWBitRangePhase(0,0)
#define kIOFWPCRBroadcast FWBitRange(1,1)
#define kIOFWPCRBroadcastPhase FWBitRangePhase(1,1)
#define kIOFWPCRP2PCount FWBitRange(2,7)
#define kIOFWPCRP2PCountPhase FWBitRangePhase(2,7)
#define kIOFWPCRChannel FWBitRange(10,15)
#define kIOFWPCRChannelPhase FWBitRangePhase(10,15)
#define kIOFWPCROutputDataRate FWBitRange(16,17)
#define kIOFWPCROutputDataRatePhase FWBitRangePhase(16,17)
#define kIOFWPCROutputOverhead FWBitRange(18,21)
#define kIOFWPCROutputOverheadPhase FWBitRangePhase(18,21)
#define kIOFWPCROutputPayload FWBitRange(22,31)
#define kIOFWPCROutputPayloadPhase FWBitRangePhase(22,31)
enum
{
kFWAVCAsyncPlug0 = 0xa0,
kFWAVCAsyncPlug1 = 0xa1,
kFWAVCAsyncPlug2 = 0xa2,
kFWAVCAsyncPlug3 = 0xa3,
kFWAVCAsyncPlug4 = 0xa4,
kFWAVCAsyncPlug5 = 0xa5,
kFWAVCAsyncPlug6 = 0xa6,
kFWAVCAsyncPlug7 = 0xa7,
kFWAVCAsyncPlug8 = 0xa8,
kFWAVCAsyncPlug9 = 0xa9,
kFWAVCAsyncPlug10 = 0xa1,
kFWAVCAsyncPlug11 = 0xab,
kFWAVCAsyncPlug12 = 0xac,
kFWAVCAsyncPlug13 = 0xad,
kFWAVCAsyncPlug14 = 0xae,
kFWAVCAsyncPlug15 = 0xaf,
kFWAVCAsyncPlug16 = 0xb0,
kFWAVCAsyncPlug17 = 0xb1,
kFWAVCAsyncPlug18 = 0xb2,
kFWAVCAsyncPlug19 = 0xb3,
kFWAVCAsyncPlug20 = 0xb4,
kFWAVCAsyncPlug21 = 0xb5,
kFWAVCAsyncPlug22 = 0xb6,
kFWAVCAsyncPlug23 = 0xb7,
kFWAVCAsyncPlug24 = 0xb8,
kFWAVCAsyncPlug25 = 0xb9,
kFWAVCAsyncPlug26 = 0xba,
kFWAVCAsyncPlug27 = 0xbb,
kFWAVCAsyncPlug28 = 0xbc,
kFWAVCAsyncPlug29 = 0xbd,
kFWAVCAsyncPlug30 = 0xbe,
kFWAVCAsyncPlugAny = 0xbf
};
enum
{
kFWAVCStateBusSuspended = 0,
kFWAVCStateBusResumed = 1,
kFWAVCStatePlugReconnected = 2,
kFWAVCStatePlugDisconnected = 3,
kFWAVCStateDeviceRemoved = 4
};
enum
{
kFWAVCConsumerMode_MORE = 1,
kFWAVCConsumerMode_LAST = 4,
kFWAVCConsumerMode_LESS = 5,
kFWAVCConsumerMode_JUNK = 6,
kFWAVCConsumerMode_LOST = 7
};
enum
{
kFWAVCProducerMode_SEND = 5,
kFWAVCProducerMode_TOSS = 7
};
typedef enum
{
IOFWAVCPlugSubunitSourceType,
IOFWAVCPlugSubunitDestType,
IOFWAVCPlugIsochInputType,
IOFWAVCPlugIsochOutputType,
IOFWAVCPlugAsynchInputType,
IOFWAVCPlugAsynchOutputType,
IOFWAVCPlugExternalInputType,
IOFWAVCPlugExternalOutputType
} IOFWAVCPlugTypes;
typedef enum
{
kIOFWAVCSubunitPlugMsgConnected,
kIOFWAVCSubunitPlugMsgDisconnected,
kIOFWAVCSubunitPlugMsgConnectedPlugModified,
kIOFWAVCSubunitPlugMsgSignalFormatModified
} IOFWAVCSubunitPlugMessages;
#define kAVCPlugSignalFormatNTSCDV 0x80000000
#define kAVCPlugSignalFormatPalDV 0x80800000
#define kAVCPlugSignalFormatMPEGTS 0xA0000000
typedef enum
{
kAVCAsyncCommandStatePendingRequest,
kAVCAsyncCommandStateRequestSent,
kAVCAsyncCommandStateRequestFailed,
kAVCAsyncCommandStateWaitingForResponse,
kAVCAsyncCommandStateReceivedInterimResponse,
kAVCAsyncCommandStateReceivedFinalResponse,
kAVCAsyncCommandStateTimeOutBeforeResponse,
kAVCAsyncCommandStateBusReset,
kAVCAsyncCommandStateOutOfMemory,
kAVCAsyncCommandStateCancled
} IOFWAVCAsyncCommandState;
#endif // _IOKIT_IOFIREWIREAVCCONSTS_H