Documentation
¶
Overview ¶
package descriptor is for the USB descriptor definitions. For the actual implementations, see the individual packages.
Index ¶
- Constants
- Variables
- func Append[T any](slices [][]T) []T
- func HIDCollection(id uint32) []byte
- func HIDInput(flags uint32) []byte
- func HIDLogicalMaximum(max int) []byte
- func HIDLogicalMinimum(min int) []byte
- func HIDOutput(flags uint32) []byte
- func HIDPhysicalMaximum(max int) []byte
- func HIDPhysicalMinimum(min int) []byte
- func HIDReportCount(count int) []byte
- func HIDReportID(id int) []byte
- func HIDReportSize(size int) []byte
- func HIDUnit(unit uint32) []byte
- func HIDUnitExponent(exp int) []byte
- func HIDUsage(id uint32) []byte
- func HIDUsageMaximum(max int) []byte
- func HIDUsageMinimum(min int) []byte
- func HIDUsagePage(id uint16) []byte
- type ClassHIDType
- func (d ClassHIDType) Bytes() []byte
- func (d ClassHIDType) ClassLength(v uint16)
- func (d ClassHIDType) ClassType(v uint8)
- func (d ClassHIDType) CountryCode(v uint8)
- func (d ClassHIDType) HID(v uint16)
- func (d ClassHIDType) Length(v uint8)
- func (d ClassHIDType) NumDescriptors(v uint8)
- func (d ClassHIDType) Type(v uint8)
- type ClassSpecificType
- type ConfigurationType
- func (d ConfigurationType) Attributes(v uint8)
- func (d ConfigurationType) Bytes() []byte
- func (d ConfigurationType) Configuration(v uint8)
- func (d ConfigurationType) ConfigurationValue(v uint8)
- func (d ConfigurationType) Length(v uint8)
- func (d ConfigurationType) MaxPower(v uint8)
- func (d ConfigurationType) NumInterfaces(v uint8)
- func (d ConfigurationType) TotalLength(v uint16)
- func (d ConfigurationType) Type(v uint8)
- type Descriptor
- type Device
- type DeviceDescBank
- type DeviceType
- func (d DeviceType) Bytes() []byte
- func (d DeviceType) Device(v uint16)
- func (d DeviceType) DeviceClass(v uint8)
- func (d DeviceType) DeviceProtocol(v uint8)
- func (d DeviceType) DeviceSubClass(v uint8)
- func (d DeviceType) Length(v uint8)
- func (d DeviceType) Manufacturer(v uint8)
- func (d DeviceType) MaxPacketSize0(v uint8)
- func (d DeviceType) NumConfigurations(v uint8)
- func (d DeviceType) Product(v uint8)
- func (d DeviceType) ProductID(v uint16)
- func (d DeviceType) SerialNumber(v uint8)
- func (d DeviceType) Type(v uint8)
- func (d DeviceType) USB(v uint16)
- func (d DeviceType) VendorID(v uint16)
- type EndpointType
- func (d EndpointType) Attributes(v uint8)
- func (d EndpointType) Bytes() []byte
- func (d EndpointType) EndpointAddress(v uint8)
- func (d EndpointType) GetMaxPacketSize() uint16
- func (d EndpointType) Interval(v uint8)
- func (d EndpointType) Length(v uint8)
- func (d EndpointType) MaxPacketSize(v uint16)
- func (d EndpointType) Type(v uint8)
- type InterfaceAssociationType
- func (d InterfaceAssociationType) Bytes() []byte
- func (d InterfaceAssociationType) FirstInterface(v uint8)
- func (d InterfaceAssociationType) Function(v uint8)
- func (d InterfaceAssociationType) FunctionClass(v uint8)
- func (d InterfaceAssociationType) FunctionProtocol(v uint8)
- func (d InterfaceAssociationType) FunctionSubClass(v uint8)
- func (d InterfaceAssociationType) InterfaceCount(v uint8)
- func (d InterfaceAssociationType) Length(v uint8)
- func (d InterfaceAssociationType) Type(v uint8)
- type InterfaceType
- func (d InterfaceType) AlternateSetting(v uint8)
- func (d InterfaceType) Bytes() []byte
- func (d InterfaceType) Interface(v uint8)
- func (d InterfaceType) InterfaceClass(v uint8)
- func (d InterfaceType) InterfaceNumber(v uint8)
- func (d InterfaceType) InterfaceProtocol(v uint8)
- func (d InterfaceType) InterfaceSubClass(v uint8)
- func (d InterfaceType) Length(v uint8)
- func (d InterfaceType) NumEndpoints(v uint8)
- func (d InterfaceType) Type(v uint8)
Constants ¶
View Source
const ( TypeDevice = 0x1 TypeConfiguration = 0x2 TypeString = 0x3 TypeInterface = 0x4 TypeEndpoint = 0x5 TypeDeviceQualifier = 0x6 TypeInterfaceAssociation = 0xb TypeClassHID = 0x21 TypeHIDReport = 0x22 TypeClassSpecific = 0x24 TypeClassSpecificEndpoint = 0x25 )
View Source
const ( TransferTypeControl uint8 = iota TransferTypeIsochronous TransferTypeBulk TransferTypeInterrupt )
View Source
const (
ClassHIDTypeLen = 9
)
Variables ¶
View Source
var ( HIDUsagePageGenericDesktop = HIDUsagePage(0x01) HIDUsagePageSimulationControls = HIDUsagePage(0x02) HIDUsagePageVRControls = HIDUsagePage(0x03) HIDUsagePageSportControls = HIDUsagePage(0x04) HIDUsagePageGameControls = HIDUsagePage(0x05) HIDUsagePageGenericControls = HIDUsagePage(0x06) HIDUsagePageKeyboard = HIDUsagePage(0x07) HIDUsagePageLED = HIDUsagePage(0x08) HIDUsagePageButton = HIDUsagePage(0x09) HIDUsagePageOrdinal = HIDUsagePage(0x0A) HIDUsagePageTelephony = HIDUsagePage(0x0B) HIDUsagePageConsumer = HIDUsagePage(0x0C) HIDUsagePageDigitizers = HIDUsagePage(0x0D) HIDUsagePageHaptics = HIDUsagePage(0x0E) HIDUsagePagePhysicalInput = HIDUsagePage(0x0F) HIDUsagePageUnicode = HIDUsagePage(0x10) HIDUsagePageSoC = HIDUsagePage(0x11) HIDUsagePageEyeHeadTrackers = HIDUsagePage(0x12) HIDUsagePageAuxDisplay = HIDUsagePage(0x14) HIDUsagePageSensors = HIDUsagePage(0x20) HIDUsagePageMedicalInstrument = HIDUsagePage(0x40) HIDUsagePageBrailleDisplay = HIDUsagePage(0x41) HIDUsagePageLighting = HIDUsagePage(0x59) HIDUsagePageMonitor = HIDUsagePage(0x80) HIDUsagePageMonitorEnum = HIDUsagePage(0x81) HIDUsagePageVESA = HIDUsagePage(0x82) HIDUsagePagePower = HIDUsagePage(0x84) HIDUsagePageBatterySystem = HIDUsagePage(0x85) HIDUsagePageBarcodeScanner = HIDUsagePage(0x8C) HIDUsagePageScales = HIDUsagePage(0x8D) HIDUsagePageMagneticStripe = HIDUsagePage(0x8E) HIDUsagePageCameraControl = HIDUsagePage(0x90) HIDUsagePageArcade = HIDUsagePage(0x91) HIDUsagePageGaming = HIDUsagePage(0x92) )
View Source
var ( HIDUsageDesktopPointer = HIDUsage(0x01) HIDUsageDesktopMouse = HIDUsage(0x02) HIDUsageDesktopJoystick = HIDUsage(0x04) HIDUsageDesktopGamepad = HIDUsage(0x05) HIDUsageDesktopKeyboard = HIDUsage(0x06) HIDUsageDesktopKeypad = HIDUsage(0x07) HIDUsageDesktopMultiaxis = HIDUsage(0x08) HIDUsageDesktopTablet = HIDUsage(0x09) HIDUsageDesktopWaterCooling = HIDUsage(0x0A) HIDUsageDesktopChassis = HIDUsage(0x0B) HIDUsageDesktopWireless = HIDUsage(0x0C) HIDUsageDesktopPortable = HIDUsage(0x0D) HIDUsageDesktopSystemMultiaxis = HIDUsage(0x0E) HIDUsageDesktopSpatial = HIDUsage(0x0F) HIDUsageDesktopAssistive = HIDUsage(0x10) HIDUsageDesktopDock = HIDUsage(0x11) HIDUsageDesktopDockable = HIDUsage(0x12) HIDUsageDesktopCallState = HIDUsage(0x13) HIDUsageDesktopX = HIDUsage(0x30) HIDUsageDesktopY = HIDUsage(0x31) HIDUsageDesktopZ = HIDUsage(0x32) HIDUsageDesktopRx = HIDUsage(0x33) HIDUsageDesktopRy = HIDUsage(0x34) HIDUsageDesktopRz = HIDUsage(0x35) HIDUsageDesktopSlider = HIDUsage(0x36) HIDUsageDesktopDial = HIDUsage(0x37) HIDUsageDesktopWheel = HIDUsage(0x38) HIDUsageDesktopHatSwitch = HIDUsage(0x39) HIDUsageDesktopCountedBuffer = HIDUsage(0x3A) )
View Source
var ( HIDUsageConsumerControl = HIDUsage(0x01) HIDUsageConsumerNumericKeypad = HIDUsage(0x02) HIDUsageConsumerProgrammableButtons = HIDUsage(0x03) HIDUsageConsumerMicrophone = HIDUsage(0x04) HIDUsageConsumerHeadphone = HIDUsage(0x05) HIDUsageConsumerGraphicEqualizer = HIDUsage(0x06) )
View Source
var ( HIDCollectionPhysical = HIDCollection(0x00) HIDCollectionApplication = HIDCollection(0x01) HIDCollectionEnd = []byte{0xC0} )
View Source
var ( // Input (Data,Ary,Abs), Key arrays (6 bytes) HIDInputDataAryAbs = HIDInput(0x00) // Input (Data, Variable, Absolute), Modifier byte HIDInputDataVarAbs = HIDInput(0x02) // Input (Const,Var,Abs), Modifier byte HIDInputConstVarAbs = HIDInput(0x03) // Input (Data, Variable, Relative), 2 position bytes (X & Y) HIDInputDataVarRel = HIDInput(0x06) // Output (Data, Variable, Absolute), Modifier byte HIDOutputDataVarAbs = HIDOutput(0x02) // Output (Const, Variable, Absolute), Modifier byte HIDOutputConstVarAbs = HIDOutput(0x03) )
View Source
var CDC = Descriptor{ Device: DeviceCDC.Bytes(), Configuration: Append([][]byte{ ConfigurationCDC.Bytes(), InterfaceAssociationCDC.Bytes(), InterfaceCDCControl.Bytes(), ClassSpecificCDCHeader.Bytes(), ClassSpecificCDCCallManagement.Bytes(), ClassSpecificCDCACM.Bytes(), ClassSpecificCDCUnion.Bytes(), EndpointEP1IN.Bytes(), InterfaceCDCData.Bytes(), EndpointEP2OUT.Bytes(), EndpointEP3IN.Bytes(), }), }
View Source
var CDCHID = Descriptor{ Device: DeviceCDC.Bytes(), Configuration: Append([][]byte{ ConfigurationCDCHID.Bytes(), InterfaceAssociationCDC.Bytes(), InterfaceCDCControl.Bytes(), ClassSpecificCDCHeader.Bytes(), ClassSpecificCDCACM.Bytes(), ClassSpecificCDCUnion.Bytes(), ClassSpecificCDCCallManagement.Bytes(), EndpointEP1IN.Bytes(), InterfaceCDCData.Bytes(), EndpointEP2OUT.Bytes(), EndpointEP3IN.Bytes(), InterfaceHID.Bytes(), ClassHID.Bytes(), EndpointEP4IN.Bytes(), EndpointEP5OUT.Bytes(), }), HID: map[uint16][]byte{ 2: Append([][]byte{ HIDUsagePageGenericDesktop, HIDUsageDesktopKeyboard, HIDCollectionApplication, HIDReportID(2), HIDUsagePageKeyboard, HIDUsageMinimum(224), HIDUsageMaximum(231), HIDLogicalMinimum(0), HIDLogicalMaximum(1), HIDReportSize(1), HIDReportCount(8), HIDInputDataVarAbs, HIDReportCount(1), HIDReportSize(8), HIDInputConstVarAbs, HIDReportCount(3), HIDReportSize(1), HIDUsagePageLED, HIDUsageMinimum(1), HIDUsageMaximum(3), HIDOutputDataVarAbs, HIDReportCount(5), HIDReportSize(1), HIDOutputConstVarAbs, HIDReportCount(6), HIDReportSize(8), HIDLogicalMinimum(0), HIDLogicalMaximum(255), HIDUsagePageKeyboard, HIDUsageMinimum(0), HIDUsageMaximum(255), HIDInputDataAryAbs, HIDCollectionEnd, HIDUsagePageGenericDesktop, HIDUsageDesktopMouse, HIDCollectionApplication, HIDUsageDesktopPointer, HIDCollectionPhysical, HIDReportID(1), HIDUsagePageButton, HIDUsageMinimum(1), HIDUsageMaximum(5), HIDLogicalMinimum(0), HIDLogicalMaximum(1), HIDReportCount(5), HIDReportSize(1), HIDInputDataVarAbs, HIDReportCount(1), HIDReportSize(3), HIDInputConstVarAbs, HIDUsagePageGenericDesktop, HIDUsageDesktopX, HIDUsageDesktopY, HIDUsageDesktopWheel, HIDLogicalMinimum(-127), HIDLogicalMaximum(127), HIDReportSize(8), HIDReportCount(3), HIDInputDataVarRel, HIDCollectionEnd, HIDCollectionEnd, HIDUsagePageConsumer, HIDUsageConsumerControl, HIDCollectionApplication, HIDReportID(3), HIDLogicalMinimum(0), HIDLogicalMaximum(8191), HIDUsageMinimum(0), HIDUsageMaximum(0x1FFF), HIDReportSize(16), HIDReportCount(1), HIDInputDataAryAbs, HIDCollectionEnd, }), }, }
View Source
var CDCJoystick = Descriptor{ Device: DeviceJoystick.Bytes(), Configuration: Append([][]byte{ ConfigurationCDCJoystick.Bytes(), InterfaceAssociationCDC.Bytes(), InterfaceCDCControl.Bytes(), ClassSpecificCDCHeader.Bytes(), ClassSpecificCDCACM.Bytes(), ClassSpecificCDCUnion.Bytes(), ClassSpecificCDCCallManagement.Bytes(), EndpointEP1IN.Bytes(), InterfaceCDCData.Bytes(), EndpointEP2OUT.Bytes(), EndpointEP3IN.Bytes(), InterfaceHIDJoystick.Bytes(), ClassHIDJoystick.Bytes(), EndpointEP4IN.Bytes(), EndpointEP5OUT.Bytes(), }), HID: map[uint16][]byte{}, }
CDCJoystick requires that you append the JoystickDescriptor to the Configuration before using. This is in order to support custom configurations.
View Source
var CDCMIDI = Descriptor{ Device: DeviceCDC.Bytes(), Configuration: Append([][]byte{ ConfigurationCDCMIDI.Bytes(), InterfaceAssociationCDC.Bytes(), InterfaceCDCControl.Bytes(), ClassSpecificCDCHeader.Bytes(), ClassSpecificCDCACM.Bytes(), ClassSpecificCDCUnion.Bytes(), ClassSpecificCDCCallManagement.Bytes(), EndpointEP1IN.Bytes(), InterfaceCDCData.Bytes(), EndpointEP2OUT.Bytes(), EndpointEP3IN.Bytes(), InterfaceAssociationMIDI.Bytes(), InterfaceAudio.Bytes(), ClassSpecificAudioInterface.Bytes(), InterfaceMIDIStreaming.Bytes(), ClassSpecificMIDIHeader.Bytes(), ClassSpecificMIDIInJack1.Bytes(), ClassSpecificMIDIInJack2.Bytes(), ClassSpecificMIDIOutJack1.Bytes(), ClassSpecificMIDIOutJack2.Bytes(), EndpointEP7OUT.Bytes(), ClassSpecificMIDIOutEndpoint.Bytes(), EndpointEP6IN.Bytes(), ClassSpecificMIDIInEndpoint.Bytes(), }), }
View Source
var ClassHID = ClassHIDType{ // contains filtered or unexported fields }
View Source
var ClassHIDJoystick = ClassHIDType{ // contains filtered or unexported fields }
View Source
var ClassSpecificAudioInterface = ClassSpecificType{ // contains filtered or unexported fields }
View Source
var ClassSpecificCDCACM = ClassSpecificType{ // contains filtered or unexported fields }
View Source
var ClassSpecificCDCCallManagement = ClassSpecificType{ // contains filtered or unexported fields }
View Source
var ClassSpecificCDCHeader = ClassSpecificType{ // contains filtered or unexported fields }
View Source
var ClassSpecificCDCUnion = ClassSpecificType{ // contains filtered or unexported fields }
View Source
var ClassSpecificMIDIHeader = ClassSpecificType{ // contains filtered or unexported fields }
View Source
var ClassSpecificMIDIInEndpoint = ClassSpecificType{ // contains filtered or unexported fields }
View Source
var ClassSpecificMIDIInJack1 = ClassSpecificType{ // contains filtered or unexported fields }
View Source
var ClassSpecificMIDIInJack2 = ClassSpecificType{ // contains filtered or unexported fields }
View Source
var ClassSpecificMIDIOutEndpoint = ClassSpecificType{ // contains filtered or unexported fields }
View Source
var ClassSpecificMIDIOutJack1 = ClassSpecificType{ // contains filtered or unexported fields }
View Source
var ClassSpecificMIDIOutJack2 = ClassSpecificType{ // contains filtered or unexported fields }
View Source
var ConfigurationCDC = ConfigurationType{ // contains filtered or unexported fields }
View Source
var ConfigurationCDCHID = ConfigurationType{ // contains filtered or unexported fields }
View Source
var ConfigurationCDCJoystick = ConfigurationType{ // contains filtered or unexported fields }
View Source
var ConfigurationCDCMIDI = ConfigurationType{ // contains filtered or unexported fields }
View Source
var ConfigurationMSC = ConfigurationType{ // contains filtered or unexported fields }
View Source
var DeviceCDC = DeviceType{ // contains filtered or unexported fields }
View Source
var DeviceJoystick = DeviceType{ // contains filtered or unexported fields }
View Source
var EndpointEP1IN = EndpointType{ // contains filtered or unexported fields }
View Source
var EndpointEP2OUT = EndpointType{ // contains filtered or unexported fields }
View Source
var EndpointEP3IN = EndpointType{ // contains filtered or unexported fields }
View Source
var EndpointEP4IN = EndpointType{ // contains filtered or unexported fields }
View Source
var EndpointEP5OUT = EndpointType{ // contains filtered or unexported fields }
View Source
var EndpointEP6IN = EndpointType{ // contains filtered or unexported fields }
View Source
var EndpointEP7OUT = EndpointType{ // contains filtered or unexported fields }
View Source
var EndpointMSCIN = EndpointType{ // contains filtered or unexported fields }
View Source
var EndpointMSCOUT = EndpointType{ // contains filtered or unexported fields }
View Source
var InterfaceAssociationCDC = InterfaceAssociationType{ // contains filtered or unexported fields }
View Source
var InterfaceAssociationMIDI = InterfaceAssociationType{ // contains filtered or unexported fields }
View Source
var InterfaceAssociationMSC = InterfaceAssociationType{ // contains filtered or unexported fields }
View Source
var InterfaceAudio = InterfaceType{ // contains filtered or unexported fields }
View Source
var InterfaceCDCControl = InterfaceType{ // contains filtered or unexported fields }
View Source
var InterfaceCDCData = InterfaceType{ // contains filtered or unexported fields }
View Source
var InterfaceHID = InterfaceType{ // contains filtered or unexported fields }
View Source
var InterfaceHIDJoystick = InterfaceType{ // contains filtered or unexported fields }
View Source
var InterfaceMIDIStreaming = InterfaceType{ // contains filtered or unexported fields }
View Source
var InterfaceMSC = InterfaceType{ // contains filtered or unexported fields }
View Source
var JoystickDefaultHIDReport = Append([][]byte{ HIDUsagePageGenericDesktop, HIDUsageDesktopJoystick, HIDCollectionApplication, HIDReportID(1), HIDUsagePageButton, HIDUsageMinimum(1), HIDUsageMaximum(16), HIDLogicalMinimum(0), HIDLogicalMaximum(1), HIDReportSize(1), HIDReportCount(16), HIDUnitExponent(0), HIDUnit(0), HIDInputDataVarAbs, HIDUsagePageGenericDesktop, HIDUsageDesktopHatSwitch, HIDLogicalMinimum(0), HIDLogicalMaximum(7), HIDPhysicalMinimum(0), HIDPhysicalMaximum(315), HIDUnit(0x14), HIDReportCount(1), HIDReportSize(4), HIDInputDataVarAbs, HIDUsageDesktopHatSwitch, HIDReportCount(1), HIDReportSize(4), HIDInputConstVarAbs, HIDUsageDesktopPointer, HIDLogicalMinimum(-32767), HIDLogicalMaximum(32767), HIDPhysicalMinimum(0), HIDPhysicalMaximum(0), HIDUnit(0), HIDReportCount(6), HIDReportSize(16), HIDCollectionPhysical, HIDUsageDesktopX, HIDUsageDesktopY, HIDUsageDesktopZ, HIDUsageDesktopRx, HIDUsageDesktopRy, HIDUsageDesktopRz, HIDInputDataVarAbs, HIDCollectionEnd, HIDCollectionEnd, })
View Source
var MSC = Descriptor{ Device: DeviceCDC.Bytes(), Configuration: Append([][]byte{ ConfigurationMSC.Bytes(), InterfaceAssociationCDC.Bytes(), InterfaceCDCControl.Bytes(), ClassSpecificCDCHeader.Bytes(), ClassSpecificCDCACM.Bytes(), ClassSpecificCDCUnion.Bytes(), ClassSpecificCDCCallManagement.Bytes(), EndpointEP1IN.Bytes(), InterfaceCDCData.Bytes(), EndpointEP2OUT.Bytes(), EndpointEP3IN.Bytes(), InterfaceAssociationMSC.Bytes(), InterfaceMSC.Bytes(), EndpointMSCIN.Bytes(), EndpointMSCOUT.Bytes(), }), }
Mass Storage Class
Functions ¶
func HIDCollection ¶ added in v0.33.0
func HIDLogicalMaximum ¶
func HIDLogicalMinimum ¶
func HIDPhysicalMaximum ¶
func HIDPhysicalMinimum ¶
func HIDReportCount ¶
func HIDReportID ¶
func HIDReportSize ¶
func HIDUnitExponent ¶
func HIDUsageMaximum ¶
func HIDUsageMinimum ¶
func HIDUsagePage ¶ added in v0.33.0
Types ¶
type ClassHIDType ¶
type ClassHIDType struct {
// contains filtered or unexported fields
}
func FindClassHIDType ¶
func FindClassHIDType(des, class []byte) (ClassHIDType, error)
FindClassHIDType tries to find the ClassHID class in the descriptor.
func (ClassHIDType) Bytes ¶
func (d ClassHIDType) Bytes() []byte
func (ClassHIDType) ClassLength ¶
func (d ClassHIDType) ClassLength(v uint16)
func (ClassHIDType) ClassType ¶
func (d ClassHIDType) ClassType(v uint8)
func (ClassHIDType) CountryCode ¶
func (d ClassHIDType) CountryCode(v uint8)
func (ClassHIDType) HID ¶
func (d ClassHIDType) HID(v uint16)
func (ClassHIDType) Length ¶
func (d ClassHIDType) Length(v uint8)
func (ClassHIDType) NumDescriptors ¶
func (d ClassHIDType) NumDescriptors(v uint8)
func (ClassHIDType) Type ¶
func (d ClassHIDType) Type(v uint8)
type ClassSpecificType ¶
type ClassSpecificType struct {
// contains filtered or unexported fields
}
func (ClassSpecificType) Bytes ¶
func (d ClassSpecificType) Bytes() []byte
func (ClassSpecificType) Length ¶
func (d ClassSpecificType) Length(v uint8)
type ConfigurationType ¶
type ConfigurationType struct {
// contains filtered or unexported fields
}
func (ConfigurationType) Attributes ¶
func (d ConfigurationType) Attributes(v uint8)
func (ConfigurationType) Bytes ¶
func (d ConfigurationType) Bytes() []byte
func (ConfigurationType) Configuration ¶
func (d ConfigurationType) Configuration(v uint8)
func (ConfigurationType) ConfigurationValue ¶
func (d ConfigurationType) ConfigurationValue(v uint8)
func (ConfigurationType) Length ¶
func (d ConfigurationType) Length(v uint8)
func (ConfigurationType) MaxPower ¶
func (d ConfigurationType) MaxPower(v uint8)
func (ConfigurationType) NumInterfaces ¶
func (d ConfigurationType) NumInterfaces(v uint8)
func (ConfigurationType) TotalLength ¶
func (d ConfigurationType) TotalLength(v uint16)
func (ConfigurationType) Type ¶
func (d ConfigurationType) Type(v uint8)
type Descriptor ¶
func (*Descriptor) Configure ¶
func (d *Descriptor) Configure(idVendor, idProduct uint16)
type Device ¶
type Device struct {
DeviceDescBank [2]DeviceDescBank
}
type DeviceDescBank ¶
type DeviceDescBank struct { ADDR volatile.Register32 PCKSIZE volatile.Register32 EXTREG volatile.Register16 STATUS_BK volatile.Register8 // contains filtered or unexported fields }
DeviceDescBank is the USB device endpoint .
type DeviceType ¶
type DeviceType struct {
// contains filtered or unexported fields
}
func (DeviceType) Bytes ¶
func (d DeviceType) Bytes() []byte
func (DeviceType) Device ¶
func (d DeviceType) Device(v uint16)
func (DeviceType) DeviceClass ¶
func (d DeviceType) DeviceClass(v uint8)
func (DeviceType) DeviceProtocol ¶
func (d DeviceType) DeviceProtocol(v uint8)
func (DeviceType) DeviceSubClass ¶
func (d DeviceType) DeviceSubClass(v uint8)
func (DeviceType) Length ¶
func (d DeviceType) Length(v uint8)
func (DeviceType) Manufacturer ¶
func (d DeviceType) Manufacturer(v uint8)
func (DeviceType) MaxPacketSize0 ¶
func (d DeviceType) MaxPacketSize0(v uint8)
func (DeviceType) NumConfigurations ¶
func (d DeviceType) NumConfigurations(v uint8)
func (DeviceType) Product ¶
func (d DeviceType) Product(v uint8)
func (DeviceType) ProductID ¶
func (d DeviceType) ProductID(v uint16)
func (DeviceType) SerialNumber ¶
func (d DeviceType) SerialNumber(v uint8)
func (DeviceType) Type ¶
func (d DeviceType) Type(v uint8)
func (DeviceType) USB ¶
func (d DeviceType) USB(v uint16)
func (DeviceType) VendorID ¶
func (d DeviceType) VendorID(v uint16)
type EndpointType ¶
type EndpointType struct {
// contains filtered or unexported fields
}
func (EndpointType) Attributes ¶
func (d EndpointType) Attributes(v uint8)
func (EndpointType) Bytes ¶
func (d EndpointType) Bytes() []byte
func (EndpointType) EndpointAddress ¶
func (d EndpointType) EndpointAddress(v uint8)
func (EndpointType) GetMaxPacketSize ¶ added in v0.38.0
func (d EndpointType) GetMaxPacketSize() uint16
func (EndpointType) Interval ¶
func (d EndpointType) Interval(v uint8)
func (EndpointType) Length ¶
func (d EndpointType) Length(v uint8)
func (EndpointType) MaxPacketSize ¶
func (d EndpointType) MaxPacketSize(v uint16)
func (EndpointType) Type ¶
func (d EndpointType) Type(v uint8)
type InterfaceAssociationType ¶
type InterfaceAssociationType struct {
// contains filtered or unexported fields
}
func (InterfaceAssociationType) Bytes ¶
func (d InterfaceAssociationType) Bytes() []byte
func (InterfaceAssociationType) FirstInterface ¶
func (d InterfaceAssociationType) FirstInterface(v uint8)
func (InterfaceAssociationType) Function ¶
func (d InterfaceAssociationType) Function(v uint8)
func (InterfaceAssociationType) FunctionClass ¶
func (d InterfaceAssociationType) FunctionClass(v uint8)
func (InterfaceAssociationType) FunctionProtocol ¶
func (d InterfaceAssociationType) FunctionProtocol(v uint8)
func (InterfaceAssociationType) FunctionSubClass ¶
func (d InterfaceAssociationType) FunctionSubClass(v uint8)
func (InterfaceAssociationType) InterfaceCount ¶
func (d InterfaceAssociationType) InterfaceCount(v uint8)
func (InterfaceAssociationType) Length ¶
func (d InterfaceAssociationType) Length(v uint8)
func (InterfaceAssociationType) Type ¶
func (d InterfaceAssociationType) Type(v uint8)
type InterfaceType ¶
type InterfaceType struct {
// contains filtered or unexported fields
}
func (InterfaceType) AlternateSetting ¶
func (d InterfaceType) AlternateSetting(v uint8)
func (InterfaceType) Bytes ¶
func (d InterfaceType) Bytes() []byte
func (InterfaceType) Interface ¶
func (d InterfaceType) Interface(v uint8)
func (InterfaceType) InterfaceClass ¶
func (d InterfaceType) InterfaceClass(v uint8)
func (InterfaceType) InterfaceNumber ¶
func (d InterfaceType) InterfaceNumber(v uint8)
func (InterfaceType) InterfaceProtocol ¶
func (d InterfaceType) InterfaceProtocol(v uint8)
func (InterfaceType) InterfaceSubClass ¶
func (d InterfaceType) InterfaceSubClass(v uint8)
func (InterfaceType) Length ¶
func (d InterfaceType) Length(v uint8)
func (InterfaceType) NumEndpoints ¶
func (d InterfaceType) NumEndpoints(v uint8)
func (InterfaceType) Type ¶
func (d InterfaceType) Type(v uint8)
Click to show internal directories.
Click to hide internal directories.