From 323ca502638f845897b690a8623f8a4cf9ce279b Mon Sep 17 00:00:00 2001 From: Andrey Konovalov Date: Thu, 10 Oct 2019 17:54:31 +0200 Subject: sys/linux/vusb.txt: describe UAC1 device class --- sys/linux/gen/386.go | 422 ++++++++++++++++++++++++++++++++++++++++--- sys/linux/gen/amd64.go | 422 ++++++++++++++++++++++++++++++++++++++++--- sys/linux/gen/arm.go | 422 ++++++++++++++++++++++++++++++++++++++++--- sys/linux/gen/arm64.go | 422 ++++++++++++++++++++++++++++++++++++++++--- sys/linux/gen/ppc64le.go | 422 ++++++++++++++++++++++++++++++++++++++++--- sys/linux/vusb.txt | 334 ++++++++++++++++++++++++++++++---- sys/linux/vusb_386.const | 68 +++++++ sys/linux/vusb_amd64.const | 68 +++++++ sys/linux/vusb_arm.const | 68 +++++++ sys/linux/vusb_arm64.const | 68 +++++++ sys/linux/vusb_ppc64le.const | 68 +++++++ 11 files changed, 2635 insertions(+), 149 deletions(-) (limited to 'sys/linux') diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go index 2d6cdeeab..b6f736836 100644 --- a/sys/linux/gen/386.go +++ b/sys/linux/gen/386.go @@ -117,6 +117,7 @@ var resources_386 = []*ResourceDesc{ {Name: "fd_usb_cdc_ncm", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_cdc_ncm"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usb_hid", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_hid"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usb_printer", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_printer"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_usb_uac1", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_uac1"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usbfs", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_usbfs"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usbmon", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_usbmon"}, Values: []uint64{18446744073709551615}}, {Name: "fd_userio", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_userio"}, Values: []uint64{18446744073709551615}}, @@ -25231,6 +25232,159 @@ var structDescs_386 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "nlattr_t[const[IFLA_IPTUN_COLLECT_METADATA, int16], void]"}, FldName: "IFLA_IPTUN_COLLECT_METADATA"}, &StructType{Key: StructKey{Name: "nlattr_t[const[IFLA_IPTUN_FWMARK, int16], int32]"}, FldName: "IFLA_IPTUN_FWMARK"}, }}}, + {Key: StructKey{Name: "uac1_ac_header_descriptor_2"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_ac_header_descriptor_2", TypeSize: 9}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 10}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "bcdADC", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "wTotalLength", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInCollection", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "baInterfaceNr0", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "baInterfaceNr1", TypeSize: 1}}, Val: 2}, + }}}, + {Key: StructKey{Name: "uac1_as_header_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_as_header_descriptor", TypeSize: 7}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalLink", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bDelay", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_format_types", FldName: "wFormatTag", TypeSize: 2}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 4097, 4098}}, + }}}, + {Key: StructKey{Name: "uac1_output_terminal_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_output_terminal_descriptor", TypeSize: 9}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 3}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_output_terminal_types", FldName: "wTerminalType", TypeSize: 2}}, Vals: []uint64{256, 257, 511, 768, 769, 770, 771, 772, 773, 774, 775}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAssocTerminal", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSourceID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iTerminal", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_as_iface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_iface_extra_descriptor", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac1_as_header_descriptor"}, FldName: "as_header"}, + &StructType{Key: StructKey{Name: "uac_format_type_i_continuous_descriptor"}, FldName: "format_type_i_continuous"}, + &StructType{Key: StructKey{Name: "uac_format_type_i_discrete_descriptor"}, FldName: "format_type_i_discrete"}, + &StructType{Key: StructKey{Name: "uac_format_type_ii_discrete_descriptor"}, FldName: "format_type_ii_discrete"}, + }}}, + {Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_iface_extra_descriptors", IsVarlen: true}, Fields: []Type{ + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "others", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "uac_as_iface_extra_descriptor"}}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_as_in_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_in_endpoint_descriptor", TypeSize: 16}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, FldName: "inner"}, + }}}, + {Key: StructKey{Name: "uac_as_out_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_out_endpoint_descriptor", TypeSize: 16}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, FldName: "inner"}, + }}}, + {Key: StructKey{Name: "uac_control_iface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_control_iface_extra_descriptor", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac_input_terminal_descriptor"}, FldName: "input_terminal"}, + &StructType{Key: StructKey{Name: "uac1_output_terminal_descriptor"}, FldName: "output_terminal"}, + &StructType{Key: StructKey{Name: "uac_mixer_unit_descriptor"}, FldName: "mixer_unit"}, + &StructType{Key: StructKey{Name: "uac_selector_unit_descriptor"}, FldName: "selector_unit"}, + &StructType{Key: StructKey{Name: "uac_feature_unit_descriptor"}, FldName: "feature_unit"}, + &StructType{Key: StructKey{Name: "uac_processing_unit_descriptor"}, FldName: "processing_unit"}, + &StructType{Key: StructKey{Name: "uac_extension_unit_descriptor"}, FldName: "extension_unit"}, + }}}, + {Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_control_iface_extra_descriptors", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac1_ac_header_descriptor_2"}, FldName: "header"}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "others", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "uac_control_iface_extra_descriptor"}}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_extension_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_extension_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 8}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wProcessType", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_feature_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_feature_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSourceID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bControlSize", TypeSize: 1}}, Path: []string{"bmaControls"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "bmaControls", IsVarlen: true}, Type: &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_feature_unit_controls", TypeSize: 2}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}}, Kind: 1, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iFeature", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_format_type_i_continuous_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_i_continuous_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSubframeSize", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bBitResolution", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tLowerSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 3}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tUpperSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 3}, + }}}, + {Key: StructKey{Name: "uac_format_type_i_discrete_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_i_discrete_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSubframeSize", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bBitResolution", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 9}, + }}}, + {Key: StructKey{Name: "uac_format_type_ii_discrete_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_ii_discrete_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxBitRate", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wSamplesPerFrame", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 9}, + }}}, + {Key: StructKey{Name: "uac_input_terminal_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_input_terminal_descriptor", TypeSize: 12}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_input_terminal_types", FldName: "wTerminalType", TypeSize: 2}}, Vals: []uint64{256, 257, 511, 512, 513, 514, 515, 516, 517, 518}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAssocTerminal", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wChannelConfig", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iChannelNames", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iTerminal", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_iso_endpoint_descriptor", TypeSize: 7}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 37}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_iso_ep_attributes", FldName: "bmAttributes", TypeSize: 1}}, Vals: []uint64{1, 2, 128}, BitMask: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bLockDelayUnits", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wLockDelay", TypeSize: 2}}}, + }}}, + {Key: StructKey{Name: "uac_mixer_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_mixer_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_processing_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_processing_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 7}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_processing_unit_types", FldName: "wProcessType", TypeSize: 2}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_selector_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_selector_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, {Key: StructKey{Name: "ucred"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ucred", TypeSize: 12}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "pid", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", TypeSize: 4}}, @@ -25485,13 +25639,13 @@ var structDescs_386 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "bcdCDC", TypeSize: 2}}}, }}}, - {Key: StructKey{Name: "usb_cdc_header_ethernet"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ethernet", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_cdc_header_ecm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ecm", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_cdc_union_desc_t[0, 0]"}, FldName: "union"}, &StructType{Key: StructKey{Name: "usb_cdc_header_desc"}, FldName: "header"}, &StructType{Key: StructKey{Name: "usb_cdc_ether_desc"}, FldName: "ether"}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "other", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_cdc_header_ethernet_other"}}, Kind: 1, RangeEnd: 6}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "other", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_cdc_header_ecm_other"}}, Kind: 1, RangeEnd: 6}, }}}, - {Key: StructKey{Name: "usb_cdc_header_ethernet_other"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ethernet_other", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_cdc_header_ecm_other"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ecm_other", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_cdc_call_mgmt_descriptor"}, FldName: "call_mgmt"}, &StructType{Key: StructKey{Name: "usb_cdc_acm_descriptor"}, FldName: "acm"}, &StructType{Key: StructKey{Name: "usb_cdc_country_functional_desc"}, FldName: "country_functional"}, @@ -25634,6 +25788,17 @@ var structDescs_386 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, &StructType{Key: StructKey{Name: "usb_interface_descriptors_cdc_ncm"}, FldName: "interfaces"}, }}}, + {Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 2}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "wTotalLength", TypeSize: 2}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumInterfaces", TypeSize: 1}}, Val: 3}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bConfigurationValue", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iConfiguration", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_config_attributes", FldName: "bmAttributes", TypeSize: 1}}, Vals: []uint64{128, 64, 32, 16}, BitMask: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "usb_interface_descriptors_uac1"}, FldName: "interfaces"}, + }}}, {Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], len[interfaces, int8], flags[usb_config_attributes, int8], array[usb_interface_descriptor_cdc_ecm, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_t[const[1, int8], len[interfaces, int8], flags[usb_config_attributes, int8], array[usb_interface_descriptor_cdc_ecm, 1]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 2}, @@ -25678,6 +25843,9 @@ var structDescs_386 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "interfaces", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_interface_descriptor"}}, Kind: 1, RangeBegin: 1, RangeEnd: 4}, }}}, + {Key: StructKey{Name: "usb_config_descriptor_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]"}, FldName: "inner"}, + }}}, {Key: StructKey{Name: "usb_ctrlrequest"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_ctrlrequest", TypeSize: 8}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_request_type_flags", FldName: "bRequestType", TypeSize: 1}}, Vals: []uint64{0, 128, 96, 0, 32, 64, 96, 31, 0, 1, 2, 3, 4, 5}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_requests", FldName: "bRequest", TypeSize: 1}}, Vals: []uint64{0, 1, 3, 5, 6, 7, 8, 9, 10, 11, 12, 48, 49, 13, 14, 14, 15, 15, 16, 17, 18, 19, 20, 21, 22, 23, 20, 21, 22, 23, 24}}, @@ -25743,6 +25911,23 @@ var structDescs_386 = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_hid"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, }}}, + {Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 18}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 1}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_versions", FldName: "bcdUSB", TypeSize: 2}}, Vals: []uint64{272, 512, 513, 592, 768, 784}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceProtocol", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_device_max_packet_sizes", FldName: "bMaxPacketSize0", TypeSize: 1}}, Vals: []uint64{8, 16, 32, 64, 255}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "idVendor", TypeSize: 2}}, Val: 7531}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "idProduct", TypeSize: 2}}, Val: 257}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bcdDevice", TypeSize: 2}}, Val: 64}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iManufacturer", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iProduct", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iSerialNumber", TypeSize: 1}}, Val: 3}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_uac1"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, + }}}, {Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x525, 0xa4a8, 64, array[usb_config_descriptor_printer, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_t[0, 0, 0, 0x525, 0xa4a8, 64, array[usb_config_descriptor_printer, 1]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 18}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 1}, @@ -25794,6 +25979,9 @@ var structDescs_386 = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_cdc_ncm"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, }}}, + {Key: StructKey{Name: "usb_device_descriptor_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]"}, FldName: "inner"}, + }}}, {Key: StructKey{Name: "usb_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]"}, FldName: "inner"}, }}}, @@ -25895,6 +26083,28 @@ var structDescs_386 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, }}}, + {Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bEndpointAddress", TypeSize: 1}}, Val: 130}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bmAttributes", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxPacketSize", TypeSize: 2}}, Kind: 2, RangeEnd: 1024}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterval", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bRefresh", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "extra"}, + }}}, + {Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bEndpointAddress", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bmAttributes", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxPacketSize", TypeSize: 2}}, Kind: 2, RangeEnd: 1024}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterval", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bRefresh", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "extra"}, + }}}, {Key: StructKey{Name: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, @@ -25925,6 +26135,7 @@ var structDescs_386 = []*KeyedStruct{ }}}, {Key: StructKey{Name: "usb_endpoint_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_extra_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_generic_descriptor"}, FldName: "generic"}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "uac_iso"}, }}}, {Key: StructKey{Name: "usb_ext_cap_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_ext_cap_descriptor", TypeSize: 7}, Fields: []Type{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, @@ -25984,10 +26195,10 @@ var structDescs_386 = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_hub_change_flags", FldName: "wHubChange", TypeSize: 2}}, Vals: []uint64{1, 2}, BitMask: true}, }}}, {Key: StructKey{Name: "usb_interface_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, FldName: "inner"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, FldName: "inner"}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_cdc_ecm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_cdc_ecm", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]"}, FldName: "inner"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]"}, FldName: "inner"}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_hid"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_hid", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[1:2], const[USB_CLASS_HID, int8], const[USB_INTERFACE_SUBCLASS_BOOT, int8], flags[usb_hid_protocols, int8], usb_hid_descriptor_hid, usb_endpoint_descriptors_hid]"}, FldName: "inner"}, @@ -25995,6 +26206,19 @@ var structDescs_386 = []*KeyedStruct{ {Key: StructKey{Name: "usb_interface_descriptor_printer"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_printer", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[1:2], const[USB_CLASS_PRINTER, int8], const[1, int8], int8[USBLP_FIRST_PROTOCOL:USBLP_LAST_PROTOCOL], void, usb_endpoint_descriptors_printer]"}, FldName: "inner"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, FldName: "extra"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, + }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, @@ -26034,7 +26258,7 @@ var structDescs_386 = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_printer"}, FldName: "endpoints"}, }}}, - {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, @@ -26044,21 +26268,21 @@ var structDescs_386 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 6}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, - &StructType{Key: StructKey{Name: "usb_cdc_header_ethernet"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ecm"}, FldName: "extra"}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_cdc_ecm"}, FldName: "endpoints"}, }}}, - {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]", TypeSize: 9}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAlternateSetting", TypeSize: 1}}}, - &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumEndpoints", TypeSize: 1}}, Path: []string{"endpoints"}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "extra", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_interface_extra_descriptor"}}, Kind: 1, RangeEnd: 2}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "endpoints", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_endpoint_descriptor"}}, Kind: 1, RangeEnd: 16}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]", TypeSize: 9}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, @@ -26073,6 +26297,19 @@ var structDescs_386 = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "uac_as_out_endpoint_descriptor"}, FldName: "endpoints"}, + }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]", TypeSize: 27}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, @@ -26086,15 +26323,64 @@ var structDescs_386 = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_cdc_ncm_data"}, FldName: "endpoints"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]", TypeSize: 9}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, + }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "uac_as_in_endpoint_descriptor"}, FldName: "endpoints"}, + }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterfaceNumber", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAlternateSetting", TypeSize: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumEndpoints", TypeSize: 1}}, Path: []string{"endpoints"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "extra", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_interface_extra_descriptor"}}, Kind: 1, RangeEnd: 2}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "endpoints", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_endpoint_descriptor"}}, Kind: 1, RangeEnd: 16}, + }}}, {Key: StructKey{Name: "usb_interface_descriptors_cdc_ncm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptors_cdc_ncm", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]"}, FldName: "control"}, &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]"}, FldName: "data_nop"}, &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]"}, FldName: "data"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptors_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptors_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]"}, FldName: "control"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, FldName: "as_out_alt_0"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]"}, FldName: "as_out_alt_1"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, FldName: "as_in_alt_0"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]"}, FldName: "as_in_alt_1"}, + }}}, {Key: StructKey{Name: "usb_interface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_extra_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_generic_descriptor"}, FldName: "generic"}, &StructType{Key: StructKey{Name: "usb_hid_descriptor_hid"}, FldName: "hid_hid"}, - &StructType{Key: StructKey{Name: "usb_cdc_header_ethernet"}, FldName: "usb_cdc"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ecm"}, FldName: "cdc_ecm"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ncm"}, FldName: "cdc_ncm"}, + &StructType{Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, FldName: "uac_control"}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "uac_as"}, }}}, {Key: StructKey{Name: "usb_port_status"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_port_status", IsVarlen: true}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_port_status_flags", FldName: "wPortStatus", TypeSize: 2}}, Vals: []uint64{1, 2, 4, 8, 16, 32, 256, 512, 1024, 2048, 4096, 480, 512, 7168, 0, 0, 32, 64, 96, 128, 160, 192, 224, 256, 288, 320, 352}}, @@ -27481,6 +27767,11 @@ var structDescs_386 = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_generic"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_DT_STRING", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_t[USB_TYPE_STANDARD, USB_DT_STRING, usb_string_descriptor]"}}}, }}}, + {Key: StructKey{Name: "vusb_descriptors_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_descriptors_uac1", TypeSize: 12}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_generic"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_DT_STRING", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_t[USB_TYPE_STANDARD, USB_DT_STRING, usb_string_descriptor]"}}}, + }}}, {Key: StructKey{Name: "vusb_response_generic"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_response_generic", IsVarlen: true}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_request_types", FldName: "type", TypeSize: 1}}, Vals: []uint64{0, 32, 64}, BitMask: true}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_requests", FldName: "req", TypeSize: 1}}, Vals: []uint64{0, 1, 3, 5, 6, 7, 8, 9, 10, 11, 12, 48, 49, 13, 14, 14, 15, 15, 16, 17, 18, 19, 20, 21, 22, 23, 20, 21, 22, 23, 24}}, @@ -27667,16 +27958,11 @@ var structDescs_386 = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"data"}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}}, }}}, - {Key: StructKey{Name: "vusb_responses"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses", TypeSize: 88}, Fields: []Type{ + {Key: StructKey{Name: "vusb_responses"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses", TypeSize: 68}, Fields: []Type{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_generic"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "get_interface", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_INTERFACE, int8]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "get_configuration", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_CONFIGURATION, int8]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_CUR", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_CUR, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MIN", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MIN, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MAX", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MAX, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "hub_USB_REQ_GET_STATUS_hub", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USB_REQ_GET_STATUS, usb_hub_status]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "hub_USB_REQ_GET_STATUS_port", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USB_REQ_GET_STATUS, usb_port_status]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "asix_AX_CMD_READ_MII_REG", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_VENDOR, AX_CMD_READ_MII_REG, int16]"}}}, @@ -27725,6 +28011,17 @@ var structDescs_386 = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USBLP_REQ_GET_STATUS", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USBLP_REQ_GET_STATUS, int8]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USBLP_REQ_HP_CHANNEL_CHANGE_REQUEST", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USBLP_REQ_HP_CHANNEL_CHANGE_REQUEST, int8]"}}}, }}}, + {Key: StructKey{Name: "vusb_responses_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses_uac1", TypeSize: 36}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_generic"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_REQ_GET_INTERFACE", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_INTERFACE, int8]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_REQ_GET_CONFIGURATION", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_CONFIGURATION, int8]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_CUR", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_CUR, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MIN", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MIN, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MAX", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MAX, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, + }}}, {Key: StructKey{Name: "winsize"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "winsize", TypeSize: 8}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "row", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "col", TypeSize: 2}}}, @@ -44042,6 +44339,12 @@ var syscalls_386 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dev", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "usb_device_descriptor_printer"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "conn_descs", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_connect_descriptors"}}}, }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_printer", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {Name: "syz_usb_connect$uac1", CallName: "syz_usb_connect", Args: []Type{ + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_device_speed", FldName: "speed", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "dev_len", TypeSize: 4}}, Path: []string{"dev"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dev", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "usb_device_descriptor_uac1"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "conn_descs", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_connect_descriptors"}}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_uac1", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {Name: "syz_usb_control_io", CallName: "syz_usb_control_io", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors"}}}, @@ -44067,6 +44370,11 @@ var syscalls_386 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors_printer"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "resps", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_responses_printer"}}}, }}, + {Name: "syz_usb_control_io$uac1", CallName: "syz_usb_control_io", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_uac1", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors_uac1"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "resps", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_responses_uac1"}}}, + }}, {Name: "syz_usb_disconnect", CallName: "syz_usb_disconnect", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb", FldName: "fd", TypeSize: 4}}, }}, @@ -46613,6 +46921,7 @@ var consts_386 = []ConstValue{ {Name: "FUTEX_WAKE", Value: 1}, {Name: "FUTEX_WAKE_PRIVATE", Value: 129}, {Name: "F_ADD_SEALS", Value: 1033}, + {Name: "F_AUDIO_NUM_INTERFACES", Value: 2}, {Name: "F_DUPFD"}, {Name: "F_DUPFD_CLOEXEC", Value: 1030}, {Name: "F_GETFD", Value: 1}, @@ -50996,11 +51305,71 @@ var consts_386 = []ConstValue{ {Name: "TX_RESET_MULTI_IDX", Value: 512}, {Name: "TX_SEND", Value: 4}, {Name: "TX_SETUP", Value: 1}, + {Name: "UAC1_EXTENSION_UNIT", Value: 8}, + {Name: "UAC1_PROCESSING_UNIT", Value: 7}, + {Name: "UAC_AS_GENERAL", Value: 1}, + {Name: "UAC_DT_AC_HEADER_LENGTH", Value: 10}, + {Name: "UAC_EP_CS_ATTR_FILL_MAX", Value: 128}, + {Name: "UAC_EP_CS_ATTR_PITCH_CONTROL", Value: 2}, + {Name: "UAC_EP_CS_ATTR_SAMPLE_RATE", Value: 1}, + {Name: "UAC_EP_GENERAL", Value: 1}, + {Name: "UAC_FEATURE_UNIT", Value: 6}, + {Name: "UAC_FORMAT_TYPE", Value: 2}, + {Name: "UAC_FORMAT_TYPE_I", Value: 1}, + {Name: "UAC_FORMAT_TYPE_II", Value: 2}, + {Name: "UAC_FORMAT_TYPE_II_AC3", Value: 4098}, + {Name: "UAC_FORMAT_TYPE_II_MPEG", Value: 4097}, + {Name: "UAC_FORMAT_TYPE_I_ALAW", Value: 4}, + {Name: "UAC_FORMAT_TYPE_I_IEEE_FLOAT", Value: 3}, + {Name: "UAC_FORMAT_TYPE_I_MULAW", Value: 5}, + {Name: "UAC_FORMAT_TYPE_I_PCM", Value: 1}, + {Name: "UAC_FORMAT_TYPE_I_PCM8", Value: 2}, + {Name: "UAC_FORMAT_TYPE_I_UNDEFINED"}, + {Name: "UAC_FU_AUTOMATIC_GAIN", Value: 7}, + {Name: "UAC_FU_BASS", Value: 3}, + {Name: "UAC_FU_BASS_BOOST", Value: 9}, + {Name: "UAC_FU_DELAY", Value: 8}, + {Name: "UAC_FU_GRAPHIC_EQUALIZER", Value: 6}, + {Name: "UAC_FU_LOUDNESS", Value: 10}, + {Name: "UAC_FU_MID", Value: 4}, + {Name: "UAC_FU_MUTE", Value: 1}, + {Name: "UAC_FU_TREBLE", Value: 5}, + {Name: "UAC_FU_VOLUME", Value: 2}, {Name: "UAC_GET_CUR", Value: 129}, {Name: "UAC_GET_MAX", Value: 131}, {Name: "UAC_GET_MEM", Value: 133}, {Name: "UAC_GET_MIN", Value: 130}, {Name: "UAC_GET_RES", Value: 132}, + {Name: "UAC_HEADER", Value: 1}, + {Name: "UAC_INPUT_TERMINAL", Value: 2}, + {Name: "UAC_INPUT_TERMINAL_DESKTOP_MICROPHONE", Value: 514}, + {Name: "UAC_INPUT_TERMINAL_MICROPHONE", Value: 513}, + {Name: "UAC_INPUT_TERMINAL_MICROPHONE_ARRAY", Value: 517}, + {Name: "UAC_INPUT_TERMINAL_OMNI_DIR_MICROPHONE", Value: 516}, + {Name: "UAC_INPUT_TERMINAL_PERSONAL_MICROPHONE", Value: 515}, + {Name: "UAC_INPUT_TERMINAL_PROC_MICROPHONE_ARRAY", Value: 518}, + {Name: "UAC_INPUT_TERMINAL_UNDEFINED", Value: 512}, + {Name: "UAC_MIXER_UNIT", Value: 4}, + {Name: "UAC_OUTPUT_TERMINAL", Value: 3}, + {Name: "UAC_OUTPUT_TERMINAL_COMMUNICATION_SPEAKER", Value: 774}, + {Name: "UAC_OUTPUT_TERMINAL_DESKTOP_SPEAKER", Value: 772}, + {Name: "UAC_OUTPUT_TERMINAL_HEADPHONES", Value: 770}, + {Name: "UAC_OUTPUT_TERMINAL_HEAD_MOUNTED_DISPLAY_AUDIO", Value: 771}, + {Name: "UAC_OUTPUT_TERMINAL_LOW_FREQ_EFFECTS_SPEAKER", Value: 775}, + {Name: "UAC_OUTPUT_TERMINAL_ROOM_SPEAKER", Value: 773}, + {Name: "UAC_OUTPUT_TERMINAL_SPEAKER", Value: 769}, + {Name: "UAC_OUTPUT_TERMINAL_UNDEFINED", Value: 768}, + {Name: "UAC_PROCESS_CHORUS", Value: 5}, + {Name: "UAC_PROCESS_DOLBY_PROLOGIC", Value: 2}, + {Name: "UAC_PROCESS_DYN_RANGE_COMP", Value: 6}, + {Name: "UAC_PROCESS_REVERB", Value: 4}, + {Name: "UAC_PROCESS_STEREO_EXTENDER", Value: 3}, + {Name: "UAC_PROCESS_UNDEFINED"}, + {Name: "UAC_PROCESS_UP_DOWNMIX", Value: 1}, + {Name: "UAC_SELECTOR_UNIT", Value: 5}, + {Name: "UAC_TERMINAL_STREAMING", Value: 257}, + {Name: "UAC_TERMINAL_UNDEFINED", Value: 256}, + {Name: "UAC_TERMINAL_VENDOR_SPEC", Value: 511}, {Name: "UDMABUF_CREATE", Value: 1075344706}, {Name: "UDMABUF_CREATE_LIST", Value: 1074296131}, {Name: "UDPLITE_RECV_CSCOV", Value: 11}, @@ -51145,6 +51514,7 @@ var consts_386 = []ConstValue{ {Name: "USB_CDC_SUBCLASS_ETHERNET", Value: 6}, {Name: "USB_CDC_SUBCLASS_NCM", Value: 13}, {Name: "USB_CDC_UNION_TYPE", Value: 6}, + {Name: "USB_CLASS_AUDIO", Value: 1}, {Name: "USB_CLASS_COMM", Value: 2}, {Name: "USB_CLASS_HID", Value: 3}, {Name: "USB_CLASS_PRINTER", Value: 7}, @@ -51158,6 +51528,7 @@ var consts_386 = []ConstValue{ {Name: "USB_DT_BOS_SIZE", Value: 5}, {Name: "USB_DT_CONFIG", Value: 2}, {Name: "USB_DT_CONFIG_SIZE", Value: 9}, + {Name: "USB_DT_CS_ENDPOINT", Value: 37}, {Name: "USB_DT_CS_INTERFACE", Value: 36}, {Name: "USB_DT_CS_RADIO_CONTROL", Value: 35}, {Name: "USB_DT_DEBUG", Value: 10}, @@ -51202,6 +51573,9 @@ var consts_386 = []ConstValue{ {Name: "USB_ENDPOINT_SYNC_ASYNC", Value: 4}, {Name: "USB_ENDPOINT_SYNC_NONE"}, {Name: "USB_ENDPOINT_SYNC_SYNC", Value: 12}, + {Name: "USB_ENDPOINT_UAC1_AS_ATTRIBUTES", Value: 9}, + {Name: "USB_ENDPOINT_UAC1_AS_IN_ADDRESS", Value: 130}, + {Name: "USB_ENDPOINT_UAC1_AS_OUT_ADDRESS", Value: 1}, {Name: "USB_ENDPOINT_USAGE_DATA"}, {Name: "USB_ENDPOINT_USAGE_FEEDBACK", Value: 16}, {Name: "USB_ENDPOINT_XFER_BULK", Value: 2}, @@ -51316,6 +51690,8 @@ var consts_386 = []ConstValue{ {Name: "USB_SS_PORT_LS_U3", Value: 96}, {Name: "USB_SS_PORT_STAT_POWER", Value: 512}, {Name: "USB_SS_PORT_STAT_SPEED", Value: 7168}, + {Name: "USB_SUBCLASS_AUDIOCONTROL", Value: 1}, + {Name: "USB_SUBCLASS_AUDIOSTREAMING", Value: 2}, {Name: "USB_TYPE_CLASS", Value: 32}, {Name: "USB_TYPE_MASK", Value: 96}, {Name: "USB_TYPE_RESERVED", Value: 96}, @@ -53060,4 +53436,4 @@ var consts_386 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_386 = "32ec25e64d206fb2799732848a208618f3a6d0fe" +const revision_386 = "aa1396241f46bcc6fb20a1c9a155aff4af6b18b9" diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go index f771baa83..3ecfcf795 100644 --- a/sys/linux/gen/amd64.go +++ b/sys/linux/gen/amd64.go @@ -117,6 +117,7 @@ var resources_amd64 = []*ResourceDesc{ {Name: "fd_usb_cdc_ncm", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_cdc_ncm"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usb_hid", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_hid"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usb_printer", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_printer"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_usb_uac1", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_uac1"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usbfs", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_usbfs"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usbmon", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_usbmon"}, Values: []uint64{18446744073709551615}}, {Name: "fd_userio", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_userio"}, Values: []uint64{18446744073709551615}}, @@ -25603,6 +25604,159 @@ var structDescs_amd64 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "nlattr_t[const[IFLA_IPTUN_COLLECT_METADATA, int16], void]"}, FldName: "IFLA_IPTUN_COLLECT_METADATA"}, &StructType{Key: StructKey{Name: "nlattr_t[const[IFLA_IPTUN_FWMARK, int16], int32]"}, FldName: "IFLA_IPTUN_FWMARK"}, }}}, + {Key: StructKey{Name: "uac1_ac_header_descriptor_2"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_ac_header_descriptor_2", TypeSize: 9}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 10}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "bcdADC", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "wTotalLength", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInCollection", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "baInterfaceNr0", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "baInterfaceNr1", TypeSize: 1}}, Val: 2}, + }}}, + {Key: StructKey{Name: "uac1_as_header_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_as_header_descriptor", TypeSize: 7}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalLink", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bDelay", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_format_types", FldName: "wFormatTag", TypeSize: 2}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 4097, 4098}}, + }}}, + {Key: StructKey{Name: "uac1_output_terminal_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_output_terminal_descriptor", TypeSize: 9}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 3}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_output_terminal_types", FldName: "wTerminalType", TypeSize: 2}}, Vals: []uint64{256, 257, 511, 768, 769, 770, 771, 772, 773, 774, 775}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAssocTerminal", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSourceID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iTerminal", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_as_iface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_iface_extra_descriptor", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac1_as_header_descriptor"}, FldName: "as_header"}, + &StructType{Key: StructKey{Name: "uac_format_type_i_continuous_descriptor"}, FldName: "format_type_i_continuous"}, + &StructType{Key: StructKey{Name: "uac_format_type_i_discrete_descriptor"}, FldName: "format_type_i_discrete"}, + &StructType{Key: StructKey{Name: "uac_format_type_ii_discrete_descriptor"}, FldName: "format_type_ii_discrete"}, + }}}, + {Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_iface_extra_descriptors", IsVarlen: true}, Fields: []Type{ + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "others", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "uac_as_iface_extra_descriptor"}}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_as_in_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_in_endpoint_descriptor", TypeSize: 16}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, FldName: "inner"}, + }}}, + {Key: StructKey{Name: "uac_as_out_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_out_endpoint_descriptor", TypeSize: 16}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, FldName: "inner"}, + }}}, + {Key: StructKey{Name: "uac_control_iface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_control_iface_extra_descriptor", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac_input_terminal_descriptor"}, FldName: "input_terminal"}, + &StructType{Key: StructKey{Name: "uac1_output_terminal_descriptor"}, FldName: "output_terminal"}, + &StructType{Key: StructKey{Name: "uac_mixer_unit_descriptor"}, FldName: "mixer_unit"}, + &StructType{Key: StructKey{Name: "uac_selector_unit_descriptor"}, FldName: "selector_unit"}, + &StructType{Key: StructKey{Name: "uac_feature_unit_descriptor"}, FldName: "feature_unit"}, + &StructType{Key: StructKey{Name: "uac_processing_unit_descriptor"}, FldName: "processing_unit"}, + &StructType{Key: StructKey{Name: "uac_extension_unit_descriptor"}, FldName: "extension_unit"}, + }}}, + {Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_control_iface_extra_descriptors", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac1_ac_header_descriptor_2"}, FldName: "header"}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "others", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "uac_control_iface_extra_descriptor"}}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_extension_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_extension_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 8}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wProcessType", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_feature_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_feature_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSourceID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bControlSize", TypeSize: 1}}, Path: []string{"bmaControls"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "bmaControls", IsVarlen: true}, Type: &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_feature_unit_controls", TypeSize: 2}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}}, Kind: 1, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iFeature", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_format_type_i_continuous_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_i_continuous_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSubframeSize", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bBitResolution", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tLowerSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 3}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tUpperSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 3}, + }}}, + {Key: StructKey{Name: "uac_format_type_i_discrete_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_i_discrete_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSubframeSize", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bBitResolution", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 9}, + }}}, + {Key: StructKey{Name: "uac_format_type_ii_discrete_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_ii_discrete_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxBitRate", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wSamplesPerFrame", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 9}, + }}}, + {Key: StructKey{Name: "uac_input_terminal_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_input_terminal_descriptor", TypeSize: 12}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_input_terminal_types", FldName: "wTerminalType", TypeSize: 2}}, Vals: []uint64{256, 257, 511, 512, 513, 514, 515, 516, 517, 518}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAssocTerminal", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wChannelConfig", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iChannelNames", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iTerminal", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_iso_endpoint_descriptor", TypeSize: 7}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 37}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_iso_ep_attributes", FldName: "bmAttributes", TypeSize: 1}}, Vals: []uint64{1, 2, 128}, BitMask: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bLockDelayUnits", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wLockDelay", TypeSize: 2}}}, + }}}, + {Key: StructKey{Name: "uac_mixer_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_mixer_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_processing_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_processing_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 7}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_processing_unit_types", FldName: "wProcessType", TypeSize: 2}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_selector_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_selector_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, {Key: StructKey{Name: "ucred"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ucred", TypeSize: 12}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "pid", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", TypeSize: 4}}, @@ -25856,13 +26010,13 @@ var structDescs_amd64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "bcdCDC", TypeSize: 2}}}, }}}, - {Key: StructKey{Name: "usb_cdc_header_ethernet"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ethernet", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_cdc_header_ecm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ecm", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_cdc_union_desc_t[0, 0]"}, FldName: "union"}, &StructType{Key: StructKey{Name: "usb_cdc_header_desc"}, FldName: "header"}, &StructType{Key: StructKey{Name: "usb_cdc_ether_desc"}, FldName: "ether"}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "other", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_cdc_header_ethernet_other"}}, Kind: 1, RangeEnd: 6}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "other", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_cdc_header_ecm_other"}}, Kind: 1, RangeEnd: 6}, }}}, - {Key: StructKey{Name: "usb_cdc_header_ethernet_other"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ethernet_other", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_cdc_header_ecm_other"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ecm_other", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_cdc_call_mgmt_descriptor"}, FldName: "call_mgmt"}, &StructType{Key: StructKey{Name: "usb_cdc_acm_descriptor"}, FldName: "acm"}, &StructType{Key: StructKey{Name: "usb_cdc_country_functional_desc"}, FldName: "country_functional"}, @@ -26005,6 +26159,17 @@ var structDescs_amd64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, &StructType{Key: StructKey{Name: "usb_interface_descriptors_cdc_ncm"}, FldName: "interfaces"}, }}}, + {Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 2}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "wTotalLength", TypeSize: 2}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumInterfaces", TypeSize: 1}}, Val: 3}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bConfigurationValue", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iConfiguration", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_config_attributes", FldName: "bmAttributes", TypeSize: 1}}, Vals: []uint64{128, 64, 32, 16}, BitMask: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "usb_interface_descriptors_uac1"}, FldName: "interfaces"}, + }}}, {Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], len[interfaces, int8], flags[usb_config_attributes, int8], array[usb_interface_descriptor_cdc_ecm, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_t[const[1, int8], len[interfaces, int8], flags[usb_config_attributes, int8], array[usb_interface_descriptor_cdc_ecm, 1]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 2}, @@ -26049,6 +26214,9 @@ var structDescs_amd64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "interfaces", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_interface_descriptor"}}, Kind: 1, RangeBegin: 1, RangeEnd: 4}, }}}, + {Key: StructKey{Name: "usb_config_descriptor_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]"}, FldName: "inner"}, + }}}, {Key: StructKey{Name: "usb_ctrlrequest"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_ctrlrequest", TypeSize: 8}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_request_type_flags", FldName: "bRequestType", TypeSize: 1}}, Vals: []uint64{0, 128, 96, 0, 32, 64, 96, 31, 0, 1, 2, 3, 4, 5}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_requests", FldName: "bRequest", TypeSize: 1}}, Vals: []uint64{0, 1, 3, 5, 6, 7, 8, 9, 10, 11, 12, 48, 49, 13, 14, 14, 15, 15, 16, 17, 18, 19, 20, 21, 22, 23, 20, 21, 22, 23, 24}}, @@ -26114,6 +26282,23 @@ var structDescs_amd64 = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_hid"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, }}}, + {Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 18}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 1}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_versions", FldName: "bcdUSB", TypeSize: 2}}, Vals: []uint64{272, 512, 513, 592, 768, 784}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceProtocol", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_device_max_packet_sizes", FldName: "bMaxPacketSize0", TypeSize: 1}}, Vals: []uint64{8, 16, 32, 64, 255}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "idVendor", TypeSize: 2}}, Val: 7531}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "idProduct", TypeSize: 2}}, Val: 257}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bcdDevice", TypeSize: 2}}, Val: 64}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iManufacturer", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iProduct", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iSerialNumber", TypeSize: 1}}, Val: 3}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_uac1"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, + }}}, {Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x525, 0xa4a8, 64, array[usb_config_descriptor_printer, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_t[0, 0, 0, 0x525, 0xa4a8, 64, array[usb_config_descriptor_printer, 1]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 18}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 1}, @@ -26165,6 +26350,9 @@ var structDescs_amd64 = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_cdc_ncm"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, }}}, + {Key: StructKey{Name: "usb_device_descriptor_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]"}, FldName: "inner"}, + }}}, {Key: StructKey{Name: "usb_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]"}, FldName: "inner"}, }}}, @@ -26266,6 +26454,28 @@ var structDescs_amd64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, }}}, + {Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bEndpointAddress", TypeSize: 1}}, Val: 130}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bmAttributes", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxPacketSize", TypeSize: 2}}, Kind: 2, RangeEnd: 1024}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterval", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bRefresh", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "extra"}, + }}}, + {Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bEndpointAddress", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bmAttributes", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxPacketSize", TypeSize: 2}}, Kind: 2, RangeEnd: 1024}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterval", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bRefresh", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "extra"}, + }}}, {Key: StructKey{Name: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, @@ -26296,6 +26506,7 @@ var structDescs_amd64 = []*KeyedStruct{ }}}, {Key: StructKey{Name: "usb_endpoint_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_extra_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_generic_descriptor"}, FldName: "generic"}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "uac_iso"}, }}}, {Key: StructKey{Name: "usb_ext_cap_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_ext_cap_descriptor", TypeSize: 7}, Fields: []Type{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, @@ -26355,10 +26566,10 @@ var structDescs_amd64 = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_hub_change_flags", FldName: "wHubChange", TypeSize: 2}}, Vals: []uint64{1, 2}, BitMask: true}, }}}, {Key: StructKey{Name: "usb_interface_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, FldName: "inner"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, FldName: "inner"}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_cdc_ecm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_cdc_ecm", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]"}, FldName: "inner"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]"}, FldName: "inner"}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_hid"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_hid", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[1:2], const[USB_CLASS_HID, int8], const[USB_INTERFACE_SUBCLASS_BOOT, int8], flags[usb_hid_protocols, int8], usb_hid_descriptor_hid, usb_endpoint_descriptors_hid]"}, FldName: "inner"}, @@ -26366,6 +26577,19 @@ var structDescs_amd64 = []*KeyedStruct{ {Key: StructKey{Name: "usb_interface_descriptor_printer"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_printer", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[1:2], const[USB_CLASS_PRINTER, int8], const[1, int8], int8[USBLP_FIRST_PROTOCOL:USBLP_LAST_PROTOCOL], void, usb_endpoint_descriptors_printer]"}, FldName: "inner"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, FldName: "extra"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, + }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, @@ -26405,7 +26629,7 @@ var structDescs_amd64 = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_printer"}, FldName: "endpoints"}, }}}, - {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, @@ -26415,21 +26639,21 @@ var structDescs_amd64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 6}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, - &StructType{Key: StructKey{Name: "usb_cdc_header_ethernet"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ecm"}, FldName: "extra"}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_cdc_ecm"}, FldName: "endpoints"}, }}}, - {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]", TypeSize: 9}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAlternateSetting", TypeSize: 1}}}, - &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumEndpoints", TypeSize: 1}}, Path: []string{"endpoints"}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "extra", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_interface_extra_descriptor"}}, Kind: 1, RangeEnd: 2}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "endpoints", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_endpoint_descriptor"}}, Kind: 1, RangeEnd: 16}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]", TypeSize: 9}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, @@ -26444,6 +26668,19 @@ var structDescs_amd64 = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "uac_as_out_endpoint_descriptor"}, FldName: "endpoints"}, + }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]", TypeSize: 27}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, @@ -26457,15 +26694,64 @@ var structDescs_amd64 = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_cdc_ncm_data"}, FldName: "endpoints"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]", TypeSize: 9}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, + }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "uac_as_in_endpoint_descriptor"}, FldName: "endpoints"}, + }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterfaceNumber", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAlternateSetting", TypeSize: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumEndpoints", TypeSize: 1}}, Path: []string{"endpoints"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "extra", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_interface_extra_descriptor"}}, Kind: 1, RangeEnd: 2}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "endpoints", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_endpoint_descriptor"}}, Kind: 1, RangeEnd: 16}, + }}}, {Key: StructKey{Name: "usb_interface_descriptors_cdc_ncm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptors_cdc_ncm", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]"}, FldName: "control"}, &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]"}, FldName: "data_nop"}, &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]"}, FldName: "data"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptors_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptors_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]"}, FldName: "control"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, FldName: "as_out_alt_0"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]"}, FldName: "as_out_alt_1"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, FldName: "as_in_alt_0"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]"}, FldName: "as_in_alt_1"}, + }}}, {Key: StructKey{Name: "usb_interface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_extra_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_generic_descriptor"}, FldName: "generic"}, &StructType{Key: StructKey{Name: "usb_hid_descriptor_hid"}, FldName: "hid_hid"}, - &StructType{Key: StructKey{Name: "usb_cdc_header_ethernet"}, FldName: "usb_cdc"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ecm"}, FldName: "cdc_ecm"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ncm"}, FldName: "cdc_ncm"}, + &StructType{Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, FldName: "uac_control"}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "uac_as"}, }}}, {Key: StructKey{Name: "usb_port_status"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_port_status", IsVarlen: true}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_port_status_flags", FldName: "wPortStatus", TypeSize: 2}}, Vals: []uint64{1, 2, 4, 8, 16, 32, 256, 512, 1024, 2048, 4096, 480, 512, 7168, 0, 0, 32, 64, 96, 128, 160, 192, 224, 256, 288, 320, 352}}, @@ -27866,6 +28152,11 @@ var structDescs_amd64 = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_generic"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_DT_STRING", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_t[USB_TYPE_STANDARD, USB_DT_STRING, usb_string_descriptor]"}}}, }}}, + {Key: StructKey{Name: "vusb_descriptors_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_descriptors_uac1", TypeSize: 20}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_generic"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_DT_STRING", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_t[USB_TYPE_STANDARD, USB_DT_STRING, usb_string_descriptor]"}}}, + }}}, {Key: StructKey{Name: "vusb_response_generic"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_response_generic", IsVarlen: true}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_request_types", FldName: "type", TypeSize: 1}}, Vals: []uint64{0, 32, 64}, BitMask: true}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_requests", FldName: "req", TypeSize: 1}}, Vals: []uint64{0, 1, 3, 5, 6, 7, 8, 9, 10, 11, 12, 48, 49, 13, 14, 14, 15, 15, 16, 17, 18, 19, 20, 21, 22, 23, 20, 21, 22, 23, 24}}, @@ -28052,16 +28343,11 @@ var structDescs_amd64 = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"data"}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}}, }}}, - {Key: StructKey{Name: "vusb_responses"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses", TypeSize: 172}, Fields: []Type{ + {Key: StructKey{Name: "vusb_responses"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses", TypeSize: 132}, Fields: []Type{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_generic"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "get_interface", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_INTERFACE, int8]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "get_configuration", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_CONFIGURATION, int8]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_CUR", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_CUR, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MIN", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MIN, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MAX", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MAX, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "hub_USB_REQ_GET_STATUS_hub", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USB_REQ_GET_STATUS, usb_hub_status]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "hub_USB_REQ_GET_STATUS_port", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USB_REQ_GET_STATUS, usb_port_status]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "asix_AX_CMD_READ_MII_REG", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_VENDOR, AX_CMD_READ_MII_REG, int16]"}}}, @@ -28110,6 +28396,17 @@ var structDescs_amd64 = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USBLP_REQ_GET_STATUS", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USBLP_REQ_GET_STATUS, int8]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USBLP_REQ_HP_CHANNEL_CHANGE_REQUEST", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USBLP_REQ_HP_CHANNEL_CHANGE_REQUEST, int8]"}}}, }}}, + {Key: StructKey{Name: "vusb_responses_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses_uac1", TypeSize: 68}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_generic"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_REQ_GET_INTERFACE", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_INTERFACE, int8]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_REQ_GET_CONFIGURATION", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_CONFIGURATION, int8]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_CUR", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_CUR, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MIN", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MIN, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MAX", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MAX, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, + }}}, {Key: StructKey{Name: "winsize"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "winsize", TypeSize: 8}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "row", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "col", TypeSize: 2}}}, @@ -44571,6 +44868,12 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dev", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "usb_device_descriptor_printer"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "conn_descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_connect_descriptors"}}}, }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_printer", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {Name: "syz_usb_connect$uac1", CallName: "syz_usb_connect", Args: []Type{ + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_device_speed", FldName: "speed", TypeSize: 8}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "dev_len", TypeSize: 8}}, Path: []string{"dev"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dev", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "usb_device_descriptor_uac1"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "conn_descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_connect_descriptors"}}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_uac1", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {Name: "syz_usb_control_io", CallName: "syz_usb_control_io", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors"}}}, @@ -44596,6 +44899,11 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors_printer"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "resps", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_responses_printer"}}}, }}, + {Name: "syz_usb_control_io$uac1", CallName: "syz_usb_control_io", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_uac1", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors_uac1"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "resps", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_responses_uac1"}}}, + }}, {Name: "syz_usb_disconnect", CallName: "syz_usb_disconnect", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb", FldName: "fd", TypeSize: 4}}, }}, @@ -47142,6 +47450,7 @@ var consts_amd64 = []ConstValue{ {Name: "FUTEX_WAKE", Value: 1}, {Name: "FUTEX_WAKE_PRIVATE", Value: 129}, {Name: "F_ADD_SEALS", Value: 1033}, + {Name: "F_AUDIO_NUM_INTERFACES", Value: 2}, {Name: "F_DUPFD"}, {Name: "F_DUPFD_CLOEXEC", Value: 1030}, {Name: "F_GETFD", Value: 1}, @@ -51539,11 +51848,71 @@ var consts_amd64 = []ConstValue{ {Name: "TX_RESET_MULTI_IDX", Value: 512}, {Name: "TX_SEND", Value: 4}, {Name: "TX_SETUP", Value: 1}, + {Name: "UAC1_EXTENSION_UNIT", Value: 8}, + {Name: "UAC1_PROCESSING_UNIT", Value: 7}, + {Name: "UAC_AS_GENERAL", Value: 1}, + {Name: "UAC_DT_AC_HEADER_LENGTH", Value: 10}, + {Name: "UAC_EP_CS_ATTR_FILL_MAX", Value: 128}, + {Name: "UAC_EP_CS_ATTR_PITCH_CONTROL", Value: 2}, + {Name: "UAC_EP_CS_ATTR_SAMPLE_RATE", Value: 1}, + {Name: "UAC_EP_GENERAL", Value: 1}, + {Name: "UAC_FEATURE_UNIT", Value: 6}, + {Name: "UAC_FORMAT_TYPE", Value: 2}, + {Name: "UAC_FORMAT_TYPE_I", Value: 1}, + {Name: "UAC_FORMAT_TYPE_II", Value: 2}, + {Name: "UAC_FORMAT_TYPE_II_AC3", Value: 4098}, + {Name: "UAC_FORMAT_TYPE_II_MPEG", Value: 4097}, + {Name: "UAC_FORMAT_TYPE_I_ALAW", Value: 4}, + {Name: "UAC_FORMAT_TYPE_I_IEEE_FLOAT", Value: 3}, + {Name: "UAC_FORMAT_TYPE_I_MULAW", Value: 5}, + {Name: "UAC_FORMAT_TYPE_I_PCM", Value: 1}, + {Name: "UAC_FORMAT_TYPE_I_PCM8", Value: 2}, + {Name: "UAC_FORMAT_TYPE_I_UNDEFINED"}, + {Name: "UAC_FU_AUTOMATIC_GAIN", Value: 7}, + {Name: "UAC_FU_BASS", Value: 3}, + {Name: "UAC_FU_BASS_BOOST", Value: 9}, + {Name: "UAC_FU_DELAY", Value: 8}, + {Name: "UAC_FU_GRAPHIC_EQUALIZER", Value: 6}, + {Name: "UAC_FU_LOUDNESS", Value: 10}, + {Name: "UAC_FU_MID", Value: 4}, + {Name: "UAC_FU_MUTE", Value: 1}, + {Name: "UAC_FU_TREBLE", Value: 5}, + {Name: "UAC_FU_VOLUME", Value: 2}, {Name: "UAC_GET_CUR", Value: 129}, {Name: "UAC_GET_MAX", Value: 131}, {Name: "UAC_GET_MEM", Value: 133}, {Name: "UAC_GET_MIN", Value: 130}, {Name: "UAC_GET_RES", Value: 132}, + {Name: "UAC_HEADER", Value: 1}, + {Name: "UAC_INPUT_TERMINAL", Value: 2}, + {Name: "UAC_INPUT_TERMINAL_DESKTOP_MICROPHONE", Value: 514}, + {Name: "UAC_INPUT_TERMINAL_MICROPHONE", Value: 513}, + {Name: "UAC_INPUT_TERMINAL_MICROPHONE_ARRAY", Value: 517}, + {Name: "UAC_INPUT_TERMINAL_OMNI_DIR_MICROPHONE", Value: 516}, + {Name: "UAC_INPUT_TERMINAL_PERSONAL_MICROPHONE", Value: 515}, + {Name: "UAC_INPUT_TERMINAL_PROC_MICROPHONE_ARRAY", Value: 518}, + {Name: "UAC_INPUT_TERMINAL_UNDEFINED", Value: 512}, + {Name: "UAC_MIXER_UNIT", Value: 4}, + {Name: "UAC_OUTPUT_TERMINAL", Value: 3}, + {Name: "UAC_OUTPUT_TERMINAL_COMMUNICATION_SPEAKER", Value: 774}, + {Name: "UAC_OUTPUT_TERMINAL_DESKTOP_SPEAKER", Value: 772}, + {Name: "UAC_OUTPUT_TERMINAL_HEADPHONES", Value: 770}, + {Name: "UAC_OUTPUT_TERMINAL_HEAD_MOUNTED_DISPLAY_AUDIO", Value: 771}, + {Name: "UAC_OUTPUT_TERMINAL_LOW_FREQ_EFFECTS_SPEAKER", Value: 775}, + {Name: "UAC_OUTPUT_TERMINAL_ROOM_SPEAKER", Value: 773}, + {Name: "UAC_OUTPUT_TERMINAL_SPEAKER", Value: 769}, + {Name: "UAC_OUTPUT_TERMINAL_UNDEFINED", Value: 768}, + {Name: "UAC_PROCESS_CHORUS", Value: 5}, + {Name: "UAC_PROCESS_DOLBY_PROLOGIC", Value: 2}, + {Name: "UAC_PROCESS_DYN_RANGE_COMP", Value: 6}, + {Name: "UAC_PROCESS_REVERB", Value: 4}, + {Name: "UAC_PROCESS_STEREO_EXTENDER", Value: 3}, + {Name: "UAC_PROCESS_UNDEFINED"}, + {Name: "UAC_PROCESS_UP_DOWNMIX", Value: 1}, + {Name: "UAC_SELECTOR_UNIT", Value: 5}, + {Name: "UAC_TERMINAL_STREAMING", Value: 257}, + {Name: "UAC_TERMINAL_UNDEFINED", Value: 256}, + {Name: "UAC_TERMINAL_VENDOR_SPEC", Value: 511}, {Name: "UDMABUF_CREATE", Value: 1075344706}, {Name: "UDMABUF_CREATE_LIST", Value: 1074296131}, {Name: "UDPLITE_RECV_CSCOV", Value: 11}, @@ -51688,6 +52057,7 @@ var consts_amd64 = []ConstValue{ {Name: "USB_CDC_SUBCLASS_ETHERNET", Value: 6}, {Name: "USB_CDC_SUBCLASS_NCM", Value: 13}, {Name: "USB_CDC_UNION_TYPE", Value: 6}, + {Name: "USB_CLASS_AUDIO", Value: 1}, {Name: "USB_CLASS_COMM", Value: 2}, {Name: "USB_CLASS_HID", Value: 3}, {Name: "USB_CLASS_PRINTER", Value: 7}, @@ -51701,6 +52071,7 @@ var consts_amd64 = []ConstValue{ {Name: "USB_DT_BOS_SIZE", Value: 5}, {Name: "USB_DT_CONFIG", Value: 2}, {Name: "USB_DT_CONFIG_SIZE", Value: 9}, + {Name: "USB_DT_CS_ENDPOINT", Value: 37}, {Name: "USB_DT_CS_INTERFACE", Value: 36}, {Name: "USB_DT_CS_RADIO_CONTROL", Value: 35}, {Name: "USB_DT_DEBUG", Value: 10}, @@ -51745,6 +52116,9 @@ var consts_amd64 = []ConstValue{ {Name: "USB_ENDPOINT_SYNC_ASYNC", Value: 4}, {Name: "USB_ENDPOINT_SYNC_NONE"}, {Name: "USB_ENDPOINT_SYNC_SYNC", Value: 12}, + {Name: "USB_ENDPOINT_UAC1_AS_ATTRIBUTES", Value: 9}, + {Name: "USB_ENDPOINT_UAC1_AS_IN_ADDRESS", Value: 130}, + {Name: "USB_ENDPOINT_UAC1_AS_OUT_ADDRESS", Value: 1}, {Name: "USB_ENDPOINT_USAGE_DATA"}, {Name: "USB_ENDPOINT_USAGE_FEEDBACK", Value: 16}, {Name: "USB_ENDPOINT_XFER_BULK", Value: 2}, @@ -51859,6 +52233,8 @@ var consts_amd64 = []ConstValue{ {Name: "USB_SS_PORT_LS_U3", Value: 96}, {Name: "USB_SS_PORT_STAT_POWER", Value: 512}, {Name: "USB_SS_PORT_STAT_SPEED", Value: 7168}, + {Name: "USB_SUBCLASS_AUDIOCONTROL", Value: 1}, + {Name: "USB_SUBCLASS_AUDIOSTREAMING", Value: 2}, {Name: "USB_TYPE_CLASS", Value: 32}, {Name: "USB_TYPE_MASK", Value: 96}, {Name: "USB_TYPE_RESERVED", Value: 96}, @@ -53604,4 +53980,4 @@ var consts_amd64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_amd64 = "e67391fb5f288242074ad5ff6365f61b9c247b9e" +const revision_amd64 = "e7d25307e725b1e6951f545be84795f566d999a8" diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go index a340603fe..188f1ad77 100644 --- a/sys/linux/gen/arm.go +++ b/sys/linux/gen/arm.go @@ -117,6 +117,7 @@ var resources_arm = []*ResourceDesc{ {Name: "fd_usb_cdc_ncm", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_cdc_ncm"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usb_hid", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_hid"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usb_printer", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_printer"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_usb_uac1", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_uac1"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usbfs", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_usbfs"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usbmon", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_usbmon"}, Values: []uint64{18446744073709551615}}, {Name: "fd_userio", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_userio"}, Values: []uint64{18446744073709551615}}, @@ -25053,6 +25054,159 @@ var structDescs_arm = []*KeyedStruct{ &StructType{Key: StructKey{Name: "nlattr_t[const[IFLA_IPTUN_COLLECT_METADATA, int16], void]"}, FldName: "IFLA_IPTUN_COLLECT_METADATA"}, &StructType{Key: StructKey{Name: "nlattr_t[const[IFLA_IPTUN_FWMARK, int16], int32]"}, FldName: "IFLA_IPTUN_FWMARK"}, }}}, + {Key: StructKey{Name: "uac1_ac_header_descriptor_2"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_ac_header_descriptor_2", TypeSize: 9}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 10}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "bcdADC", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "wTotalLength", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInCollection", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "baInterfaceNr0", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "baInterfaceNr1", TypeSize: 1}}, Val: 2}, + }}}, + {Key: StructKey{Name: "uac1_as_header_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_as_header_descriptor", TypeSize: 7}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalLink", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bDelay", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_format_types", FldName: "wFormatTag", TypeSize: 2}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 4097, 4098}}, + }}}, + {Key: StructKey{Name: "uac1_output_terminal_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_output_terminal_descriptor", TypeSize: 9}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 3}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_output_terminal_types", FldName: "wTerminalType", TypeSize: 2}}, Vals: []uint64{256, 257, 511, 768, 769, 770, 771, 772, 773, 774, 775}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAssocTerminal", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSourceID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iTerminal", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_as_iface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_iface_extra_descriptor", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac1_as_header_descriptor"}, FldName: "as_header"}, + &StructType{Key: StructKey{Name: "uac_format_type_i_continuous_descriptor"}, FldName: "format_type_i_continuous"}, + &StructType{Key: StructKey{Name: "uac_format_type_i_discrete_descriptor"}, FldName: "format_type_i_discrete"}, + &StructType{Key: StructKey{Name: "uac_format_type_ii_discrete_descriptor"}, FldName: "format_type_ii_discrete"}, + }}}, + {Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_iface_extra_descriptors", IsVarlen: true}, Fields: []Type{ + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "others", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "uac_as_iface_extra_descriptor"}}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_as_in_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_in_endpoint_descriptor", TypeSize: 16}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, FldName: "inner"}, + }}}, + {Key: StructKey{Name: "uac_as_out_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_out_endpoint_descriptor", TypeSize: 16}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, FldName: "inner"}, + }}}, + {Key: StructKey{Name: "uac_control_iface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_control_iface_extra_descriptor", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac_input_terminal_descriptor"}, FldName: "input_terminal"}, + &StructType{Key: StructKey{Name: "uac1_output_terminal_descriptor"}, FldName: "output_terminal"}, + &StructType{Key: StructKey{Name: "uac_mixer_unit_descriptor"}, FldName: "mixer_unit"}, + &StructType{Key: StructKey{Name: "uac_selector_unit_descriptor"}, FldName: "selector_unit"}, + &StructType{Key: StructKey{Name: "uac_feature_unit_descriptor"}, FldName: "feature_unit"}, + &StructType{Key: StructKey{Name: "uac_processing_unit_descriptor"}, FldName: "processing_unit"}, + &StructType{Key: StructKey{Name: "uac_extension_unit_descriptor"}, FldName: "extension_unit"}, + }}}, + {Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_control_iface_extra_descriptors", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac1_ac_header_descriptor_2"}, FldName: "header"}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "others", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "uac_control_iface_extra_descriptor"}}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_extension_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_extension_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 8}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wProcessType", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_feature_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_feature_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSourceID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bControlSize", TypeSize: 1}}, Path: []string{"bmaControls"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "bmaControls", IsVarlen: true}, Type: &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_feature_unit_controls", TypeSize: 2}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}}, Kind: 1, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iFeature", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_format_type_i_continuous_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_i_continuous_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSubframeSize", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bBitResolution", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tLowerSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 3}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tUpperSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 3}, + }}}, + {Key: StructKey{Name: "uac_format_type_i_discrete_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_i_discrete_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSubframeSize", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bBitResolution", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 9}, + }}}, + {Key: StructKey{Name: "uac_format_type_ii_discrete_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_ii_discrete_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxBitRate", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wSamplesPerFrame", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 9}, + }}}, + {Key: StructKey{Name: "uac_input_terminal_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_input_terminal_descriptor", TypeSize: 12}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_input_terminal_types", FldName: "wTerminalType", TypeSize: 2}}, Vals: []uint64{256, 257, 511, 512, 513, 514, 515, 516, 517, 518}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAssocTerminal", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wChannelConfig", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iChannelNames", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iTerminal", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_iso_endpoint_descriptor", TypeSize: 7}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 37}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_iso_ep_attributes", FldName: "bmAttributes", TypeSize: 1}}, Vals: []uint64{1, 2, 128}, BitMask: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bLockDelayUnits", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wLockDelay", TypeSize: 2}}}, + }}}, + {Key: StructKey{Name: "uac_mixer_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_mixer_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_processing_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_processing_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 7}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_processing_unit_types", FldName: "wProcessType", TypeSize: 2}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_selector_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_selector_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, {Key: StructKey{Name: "ucred"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ucred", TypeSize: 12}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "pid", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", TypeSize: 4}}, @@ -25307,13 +25461,13 @@ var structDescs_arm = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "bcdCDC", TypeSize: 2}}}, }}}, - {Key: StructKey{Name: "usb_cdc_header_ethernet"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ethernet", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_cdc_header_ecm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ecm", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_cdc_union_desc_t[0, 0]"}, FldName: "union"}, &StructType{Key: StructKey{Name: "usb_cdc_header_desc"}, FldName: "header"}, &StructType{Key: StructKey{Name: "usb_cdc_ether_desc"}, FldName: "ether"}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "other", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_cdc_header_ethernet_other"}}, Kind: 1, RangeEnd: 6}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "other", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_cdc_header_ecm_other"}}, Kind: 1, RangeEnd: 6}, }}}, - {Key: StructKey{Name: "usb_cdc_header_ethernet_other"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ethernet_other", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_cdc_header_ecm_other"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ecm_other", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_cdc_call_mgmt_descriptor"}, FldName: "call_mgmt"}, &StructType{Key: StructKey{Name: "usb_cdc_acm_descriptor"}, FldName: "acm"}, &StructType{Key: StructKey{Name: "usb_cdc_country_functional_desc"}, FldName: "country_functional"}, @@ -25456,6 +25610,17 @@ var structDescs_arm = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, &StructType{Key: StructKey{Name: "usb_interface_descriptors_cdc_ncm"}, FldName: "interfaces"}, }}}, + {Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 2}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "wTotalLength", TypeSize: 2}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumInterfaces", TypeSize: 1}}, Val: 3}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bConfigurationValue", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iConfiguration", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_config_attributes", FldName: "bmAttributes", TypeSize: 1}}, Vals: []uint64{128, 64, 32, 16}, BitMask: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "usb_interface_descriptors_uac1"}, FldName: "interfaces"}, + }}}, {Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], len[interfaces, int8], flags[usb_config_attributes, int8], array[usb_interface_descriptor_cdc_ecm, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_t[const[1, int8], len[interfaces, int8], flags[usb_config_attributes, int8], array[usb_interface_descriptor_cdc_ecm, 1]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 2}, @@ -25500,6 +25665,9 @@ var structDescs_arm = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "interfaces", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_interface_descriptor"}}, Kind: 1, RangeBegin: 1, RangeEnd: 4}, }}}, + {Key: StructKey{Name: "usb_config_descriptor_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]"}, FldName: "inner"}, + }}}, {Key: StructKey{Name: "usb_ctrlrequest"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_ctrlrequest", TypeSize: 8}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_request_type_flags", FldName: "bRequestType", TypeSize: 1}}, Vals: []uint64{0, 128, 96, 0, 32, 64, 96, 31, 0, 1, 2, 3, 4, 5}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_requests", FldName: "bRequest", TypeSize: 1}}, Vals: []uint64{0, 1, 3, 5, 6, 7, 8, 9, 10, 11, 12, 48, 49, 13, 14, 14, 15, 15, 16, 17, 18, 19, 20, 21, 22, 23, 20, 21, 22, 23, 24}}, @@ -25565,6 +25733,23 @@ var structDescs_arm = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_hid"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, }}}, + {Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 18}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 1}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_versions", FldName: "bcdUSB", TypeSize: 2}}, Vals: []uint64{272, 512, 513, 592, 768, 784}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceProtocol", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_device_max_packet_sizes", FldName: "bMaxPacketSize0", TypeSize: 1}}, Vals: []uint64{8, 16, 32, 64, 255}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "idVendor", TypeSize: 2}}, Val: 7531}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "idProduct", TypeSize: 2}}, Val: 257}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bcdDevice", TypeSize: 2}}, Val: 64}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iManufacturer", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iProduct", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iSerialNumber", TypeSize: 1}}, Val: 3}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_uac1"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, + }}}, {Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x525, 0xa4a8, 64, array[usb_config_descriptor_printer, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_t[0, 0, 0, 0x525, 0xa4a8, 64, array[usb_config_descriptor_printer, 1]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 18}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 1}, @@ -25616,6 +25801,9 @@ var structDescs_arm = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_cdc_ncm"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, }}}, + {Key: StructKey{Name: "usb_device_descriptor_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]"}, FldName: "inner"}, + }}}, {Key: StructKey{Name: "usb_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]"}, FldName: "inner"}, }}}, @@ -25717,6 +25905,28 @@ var structDescs_arm = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, }}}, + {Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bEndpointAddress", TypeSize: 1}}, Val: 130}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bmAttributes", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxPacketSize", TypeSize: 2}}, Kind: 2, RangeEnd: 1024}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterval", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bRefresh", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "extra"}, + }}}, + {Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bEndpointAddress", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bmAttributes", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxPacketSize", TypeSize: 2}}, Kind: 2, RangeEnd: 1024}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterval", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bRefresh", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "extra"}, + }}}, {Key: StructKey{Name: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, @@ -25747,6 +25957,7 @@ var structDescs_arm = []*KeyedStruct{ }}}, {Key: StructKey{Name: "usb_endpoint_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_extra_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_generic_descriptor"}, FldName: "generic"}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "uac_iso"}, }}}, {Key: StructKey{Name: "usb_ext_cap_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_ext_cap_descriptor", TypeSize: 7}, Fields: []Type{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, @@ -25806,10 +26017,10 @@ var structDescs_arm = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_hub_change_flags", FldName: "wHubChange", TypeSize: 2}}, Vals: []uint64{1, 2}, BitMask: true}, }}}, {Key: StructKey{Name: "usb_interface_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, FldName: "inner"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, FldName: "inner"}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_cdc_ecm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_cdc_ecm", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]"}, FldName: "inner"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]"}, FldName: "inner"}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_hid"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_hid", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[1:2], const[USB_CLASS_HID, int8], const[USB_INTERFACE_SUBCLASS_BOOT, int8], flags[usb_hid_protocols, int8], usb_hid_descriptor_hid, usb_endpoint_descriptors_hid]"}, FldName: "inner"}, @@ -25817,6 +26028,19 @@ var structDescs_arm = []*KeyedStruct{ {Key: StructKey{Name: "usb_interface_descriptor_printer"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_printer", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[1:2], const[USB_CLASS_PRINTER, int8], const[1, int8], int8[USBLP_FIRST_PROTOCOL:USBLP_LAST_PROTOCOL], void, usb_endpoint_descriptors_printer]"}, FldName: "inner"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, FldName: "extra"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, + }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, @@ -25856,7 +26080,7 @@ var structDescs_arm = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_printer"}, FldName: "endpoints"}, }}}, - {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, @@ -25866,21 +26090,21 @@ var structDescs_arm = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 6}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, - &StructType{Key: StructKey{Name: "usb_cdc_header_ethernet"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ecm"}, FldName: "extra"}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_cdc_ecm"}, FldName: "endpoints"}, }}}, - {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]", TypeSize: 9}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAlternateSetting", TypeSize: 1}}}, - &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumEndpoints", TypeSize: 1}}, Path: []string{"endpoints"}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "extra", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_interface_extra_descriptor"}}, Kind: 1, RangeEnd: 2}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "endpoints", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_endpoint_descriptor"}}, Kind: 1, RangeEnd: 16}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]", TypeSize: 9}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, @@ -25895,6 +26119,19 @@ var structDescs_arm = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "uac_as_out_endpoint_descriptor"}, FldName: "endpoints"}, + }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]", TypeSize: 27}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, @@ -25908,15 +26145,64 @@ var structDescs_arm = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_cdc_ncm_data"}, FldName: "endpoints"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]", TypeSize: 9}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, + }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "uac_as_in_endpoint_descriptor"}, FldName: "endpoints"}, + }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterfaceNumber", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAlternateSetting", TypeSize: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumEndpoints", TypeSize: 1}}, Path: []string{"endpoints"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "extra", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_interface_extra_descriptor"}}, Kind: 1, RangeEnd: 2}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "endpoints", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_endpoint_descriptor"}}, Kind: 1, RangeEnd: 16}, + }}}, {Key: StructKey{Name: "usb_interface_descriptors_cdc_ncm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptors_cdc_ncm", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]"}, FldName: "control"}, &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]"}, FldName: "data_nop"}, &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]"}, FldName: "data"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptors_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptors_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]"}, FldName: "control"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, FldName: "as_out_alt_0"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]"}, FldName: "as_out_alt_1"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, FldName: "as_in_alt_0"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]"}, FldName: "as_in_alt_1"}, + }}}, {Key: StructKey{Name: "usb_interface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_extra_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_generic_descriptor"}, FldName: "generic"}, &StructType{Key: StructKey{Name: "usb_hid_descriptor_hid"}, FldName: "hid_hid"}, - &StructType{Key: StructKey{Name: "usb_cdc_header_ethernet"}, FldName: "usb_cdc"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ecm"}, FldName: "cdc_ecm"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ncm"}, FldName: "cdc_ncm"}, + &StructType{Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, FldName: "uac_control"}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "uac_as"}, }}}, {Key: StructKey{Name: "usb_port_status"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_port_status", IsVarlen: true}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_port_status_flags", FldName: "wPortStatus", TypeSize: 2}}, Vals: []uint64{1, 2, 4, 8, 16, 32, 256, 512, 1024, 2048, 4096, 480, 512, 7168, 0, 0, 32, 64, 96, 128, 160, 192, 224, 256, 288, 320, 352}}, @@ -27287,6 +27573,11 @@ var structDescs_arm = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_generic"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_DT_STRING", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_t[USB_TYPE_STANDARD, USB_DT_STRING, usb_string_descriptor]"}}}, }}}, + {Key: StructKey{Name: "vusb_descriptors_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_descriptors_uac1", TypeSize: 12}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_generic"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_DT_STRING", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_t[USB_TYPE_STANDARD, USB_DT_STRING, usb_string_descriptor]"}}}, + }}}, {Key: StructKey{Name: "vusb_response_generic"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_response_generic", IsVarlen: true}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_request_types", FldName: "type", TypeSize: 1}}, Vals: []uint64{0, 32, 64}, BitMask: true}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_requests", FldName: "req", TypeSize: 1}}, Vals: []uint64{0, 1, 3, 5, 6, 7, 8, 9, 10, 11, 12, 48, 49, 13, 14, 14, 15, 15, 16, 17, 18, 19, 20, 21, 22, 23, 20, 21, 22, 23, 24}}, @@ -27473,16 +27764,11 @@ var structDescs_arm = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"data"}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}}, }}}, - {Key: StructKey{Name: "vusb_responses"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses", TypeSize: 88}, Fields: []Type{ + {Key: StructKey{Name: "vusb_responses"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses", TypeSize: 68}, Fields: []Type{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_generic"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "get_interface", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_INTERFACE, int8]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "get_configuration", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_CONFIGURATION, int8]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_CUR", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_CUR, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MIN", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MIN, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MAX", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MAX, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "hub_USB_REQ_GET_STATUS_hub", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USB_REQ_GET_STATUS, usb_hub_status]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "hub_USB_REQ_GET_STATUS_port", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USB_REQ_GET_STATUS, usb_port_status]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "asix_AX_CMD_READ_MII_REG", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_VENDOR, AX_CMD_READ_MII_REG, int16]"}}}, @@ -27531,6 +27817,17 @@ var structDescs_arm = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USBLP_REQ_GET_STATUS", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USBLP_REQ_GET_STATUS, int8]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USBLP_REQ_HP_CHANNEL_CHANGE_REQUEST", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USBLP_REQ_HP_CHANNEL_CHANGE_REQUEST, int8]"}}}, }}}, + {Key: StructKey{Name: "vusb_responses_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses_uac1", TypeSize: 36}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_generic"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_REQ_GET_INTERFACE", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_INTERFACE, int8]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_REQ_GET_CONFIGURATION", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_CONFIGURATION, int8]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_CUR", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_CUR, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MIN", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MIN, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MAX", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MAX, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, + }}}, {Key: StructKey{Name: "winsize"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "winsize", TypeSize: 8}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "row", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "col", TypeSize: 2}}}, @@ -43698,6 +43995,12 @@ var syscalls_arm = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dev", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "usb_device_descriptor_printer"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "conn_descs", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_connect_descriptors"}}}, }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_printer", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {Name: "syz_usb_connect$uac1", CallName: "syz_usb_connect", Args: []Type{ + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_device_speed", FldName: "speed", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "dev_len", TypeSize: 4}}, Path: []string{"dev"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dev", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "usb_device_descriptor_uac1"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "conn_descs", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_connect_descriptors"}}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_uac1", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {Name: "syz_usb_control_io", CallName: "syz_usb_control_io", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors"}}}, @@ -43723,6 +44026,11 @@ var syscalls_arm = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors_printer"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "resps", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_responses_printer"}}}, }}, + {Name: "syz_usb_control_io$uac1", CallName: "syz_usb_control_io", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_uac1", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors_uac1"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "resps", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_responses_uac1"}}}, + }}, {Name: "syz_usb_disconnect", CallName: "syz_usb_disconnect", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb", FldName: "fd", TypeSize: 4}}, }}, @@ -46253,6 +46561,7 @@ var consts_arm = []ConstValue{ {Name: "FUTEX_WAKE", Value: 1}, {Name: "FUTEX_WAKE_PRIVATE", Value: 129}, {Name: "F_ADD_SEALS", Value: 1033}, + {Name: "F_AUDIO_NUM_INTERFACES", Value: 2}, {Name: "F_DUPFD"}, {Name: "F_DUPFD_CLOEXEC", Value: 1030}, {Name: "F_GETFD", Value: 1}, @@ -50583,11 +50892,71 @@ var consts_arm = []ConstValue{ {Name: "TX_RESET_MULTI_IDX", Value: 512}, {Name: "TX_SEND", Value: 4}, {Name: "TX_SETUP", Value: 1}, + {Name: "UAC1_EXTENSION_UNIT", Value: 8}, + {Name: "UAC1_PROCESSING_UNIT", Value: 7}, + {Name: "UAC_AS_GENERAL", Value: 1}, + {Name: "UAC_DT_AC_HEADER_LENGTH", Value: 10}, + {Name: "UAC_EP_CS_ATTR_FILL_MAX", Value: 128}, + {Name: "UAC_EP_CS_ATTR_PITCH_CONTROL", Value: 2}, + {Name: "UAC_EP_CS_ATTR_SAMPLE_RATE", Value: 1}, + {Name: "UAC_EP_GENERAL", Value: 1}, + {Name: "UAC_FEATURE_UNIT", Value: 6}, + {Name: "UAC_FORMAT_TYPE", Value: 2}, + {Name: "UAC_FORMAT_TYPE_I", Value: 1}, + {Name: "UAC_FORMAT_TYPE_II", Value: 2}, + {Name: "UAC_FORMAT_TYPE_II_AC3", Value: 4098}, + {Name: "UAC_FORMAT_TYPE_II_MPEG", Value: 4097}, + {Name: "UAC_FORMAT_TYPE_I_ALAW", Value: 4}, + {Name: "UAC_FORMAT_TYPE_I_IEEE_FLOAT", Value: 3}, + {Name: "UAC_FORMAT_TYPE_I_MULAW", Value: 5}, + {Name: "UAC_FORMAT_TYPE_I_PCM", Value: 1}, + {Name: "UAC_FORMAT_TYPE_I_PCM8", Value: 2}, + {Name: "UAC_FORMAT_TYPE_I_UNDEFINED"}, + {Name: "UAC_FU_AUTOMATIC_GAIN", Value: 7}, + {Name: "UAC_FU_BASS", Value: 3}, + {Name: "UAC_FU_BASS_BOOST", Value: 9}, + {Name: "UAC_FU_DELAY", Value: 8}, + {Name: "UAC_FU_GRAPHIC_EQUALIZER", Value: 6}, + {Name: "UAC_FU_LOUDNESS", Value: 10}, + {Name: "UAC_FU_MID", Value: 4}, + {Name: "UAC_FU_MUTE", Value: 1}, + {Name: "UAC_FU_TREBLE", Value: 5}, + {Name: "UAC_FU_VOLUME", Value: 2}, {Name: "UAC_GET_CUR", Value: 129}, {Name: "UAC_GET_MAX", Value: 131}, {Name: "UAC_GET_MEM", Value: 133}, {Name: "UAC_GET_MIN", Value: 130}, {Name: "UAC_GET_RES", Value: 132}, + {Name: "UAC_HEADER", Value: 1}, + {Name: "UAC_INPUT_TERMINAL", Value: 2}, + {Name: "UAC_INPUT_TERMINAL_DESKTOP_MICROPHONE", Value: 514}, + {Name: "UAC_INPUT_TERMINAL_MICROPHONE", Value: 513}, + {Name: "UAC_INPUT_TERMINAL_MICROPHONE_ARRAY", Value: 517}, + {Name: "UAC_INPUT_TERMINAL_OMNI_DIR_MICROPHONE", Value: 516}, + {Name: "UAC_INPUT_TERMINAL_PERSONAL_MICROPHONE", Value: 515}, + {Name: "UAC_INPUT_TERMINAL_PROC_MICROPHONE_ARRAY", Value: 518}, + {Name: "UAC_INPUT_TERMINAL_UNDEFINED", Value: 512}, + {Name: "UAC_MIXER_UNIT", Value: 4}, + {Name: "UAC_OUTPUT_TERMINAL", Value: 3}, + {Name: "UAC_OUTPUT_TERMINAL_COMMUNICATION_SPEAKER", Value: 774}, + {Name: "UAC_OUTPUT_TERMINAL_DESKTOP_SPEAKER", Value: 772}, + {Name: "UAC_OUTPUT_TERMINAL_HEADPHONES", Value: 770}, + {Name: "UAC_OUTPUT_TERMINAL_HEAD_MOUNTED_DISPLAY_AUDIO", Value: 771}, + {Name: "UAC_OUTPUT_TERMINAL_LOW_FREQ_EFFECTS_SPEAKER", Value: 775}, + {Name: "UAC_OUTPUT_TERMINAL_ROOM_SPEAKER", Value: 773}, + {Name: "UAC_OUTPUT_TERMINAL_SPEAKER", Value: 769}, + {Name: "UAC_OUTPUT_TERMINAL_UNDEFINED", Value: 768}, + {Name: "UAC_PROCESS_CHORUS", Value: 5}, + {Name: "UAC_PROCESS_DOLBY_PROLOGIC", Value: 2}, + {Name: "UAC_PROCESS_DYN_RANGE_COMP", Value: 6}, + {Name: "UAC_PROCESS_REVERB", Value: 4}, + {Name: "UAC_PROCESS_STEREO_EXTENDER", Value: 3}, + {Name: "UAC_PROCESS_UNDEFINED"}, + {Name: "UAC_PROCESS_UP_DOWNMIX", Value: 1}, + {Name: "UAC_SELECTOR_UNIT", Value: 5}, + {Name: "UAC_TERMINAL_STREAMING", Value: 257}, + {Name: "UAC_TERMINAL_UNDEFINED", Value: 256}, + {Name: "UAC_TERMINAL_VENDOR_SPEC", Value: 511}, {Name: "UDMABUF_CREATE", Value: 1075344706}, {Name: "UDMABUF_CREATE_LIST", Value: 1074296131}, {Name: "UDPLITE_RECV_CSCOV", Value: 11}, @@ -50732,6 +51101,7 @@ var consts_arm = []ConstValue{ {Name: "USB_CDC_SUBCLASS_ETHERNET", Value: 6}, {Name: "USB_CDC_SUBCLASS_NCM", Value: 13}, {Name: "USB_CDC_UNION_TYPE", Value: 6}, + {Name: "USB_CLASS_AUDIO", Value: 1}, {Name: "USB_CLASS_COMM", Value: 2}, {Name: "USB_CLASS_HID", Value: 3}, {Name: "USB_CLASS_PRINTER", Value: 7}, @@ -50745,6 +51115,7 @@ var consts_arm = []ConstValue{ {Name: "USB_DT_BOS_SIZE", Value: 5}, {Name: "USB_DT_CONFIG", Value: 2}, {Name: "USB_DT_CONFIG_SIZE", Value: 9}, + {Name: "USB_DT_CS_ENDPOINT", Value: 37}, {Name: "USB_DT_CS_INTERFACE", Value: 36}, {Name: "USB_DT_CS_RADIO_CONTROL", Value: 35}, {Name: "USB_DT_DEBUG", Value: 10}, @@ -50789,6 +51160,9 @@ var consts_arm = []ConstValue{ {Name: "USB_ENDPOINT_SYNC_ASYNC", Value: 4}, {Name: "USB_ENDPOINT_SYNC_NONE"}, {Name: "USB_ENDPOINT_SYNC_SYNC", Value: 12}, + {Name: "USB_ENDPOINT_UAC1_AS_ATTRIBUTES", Value: 9}, + {Name: "USB_ENDPOINT_UAC1_AS_IN_ADDRESS", Value: 130}, + {Name: "USB_ENDPOINT_UAC1_AS_OUT_ADDRESS", Value: 1}, {Name: "USB_ENDPOINT_USAGE_DATA"}, {Name: "USB_ENDPOINT_USAGE_FEEDBACK", Value: 16}, {Name: "USB_ENDPOINT_XFER_BULK", Value: 2}, @@ -50903,6 +51277,8 @@ var consts_arm = []ConstValue{ {Name: "USB_SS_PORT_LS_U3", Value: 96}, {Name: "USB_SS_PORT_STAT_POWER", Value: 512}, {Name: "USB_SS_PORT_STAT_SPEED", Value: 7168}, + {Name: "USB_SUBCLASS_AUDIOCONTROL", Value: 1}, + {Name: "USB_SUBCLASS_AUDIOSTREAMING", Value: 2}, {Name: "USB_TYPE_CLASS", Value: 32}, {Name: "USB_TYPE_MASK", Value: 96}, {Name: "USB_TYPE_RESERVED", Value: 96}, @@ -52637,4 +53013,4 @@ var consts_arm = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_arm = "c9bd6b30255ee024f901224d0aa51fb8d1316b0a" +const revision_arm = "83c3c7ca6808ff3085c1422f4eb13a6917a9d6a5" diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go index 1530b5563..31910adab 100644 --- a/sys/linux/gen/arm64.go +++ b/sys/linux/gen/arm64.go @@ -117,6 +117,7 @@ var resources_arm64 = []*ResourceDesc{ {Name: "fd_usb_cdc_ncm", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_cdc_ncm"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usb_hid", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_hid"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usb_printer", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_printer"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_usb_uac1", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_uac1"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usbfs", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_usbfs"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usbmon", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_usbmon"}, Values: []uint64{18446744073709551615}}, {Name: "fd_userio", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_userio"}, Values: []uint64{18446744073709551615}}, @@ -25420,6 +25421,159 @@ var structDescs_arm64 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "nlattr_t[const[IFLA_IPTUN_COLLECT_METADATA, int16], void]"}, FldName: "IFLA_IPTUN_COLLECT_METADATA"}, &StructType{Key: StructKey{Name: "nlattr_t[const[IFLA_IPTUN_FWMARK, int16], int32]"}, FldName: "IFLA_IPTUN_FWMARK"}, }}}, + {Key: StructKey{Name: "uac1_ac_header_descriptor_2"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_ac_header_descriptor_2", TypeSize: 9}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 10}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "bcdADC", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "wTotalLength", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInCollection", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "baInterfaceNr0", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "baInterfaceNr1", TypeSize: 1}}, Val: 2}, + }}}, + {Key: StructKey{Name: "uac1_as_header_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_as_header_descriptor", TypeSize: 7}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalLink", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bDelay", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_format_types", FldName: "wFormatTag", TypeSize: 2}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 4097, 4098}}, + }}}, + {Key: StructKey{Name: "uac1_output_terminal_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_output_terminal_descriptor", TypeSize: 9}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 3}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_output_terminal_types", FldName: "wTerminalType", TypeSize: 2}}, Vals: []uint64{256, 257, 511, 768, 769, 770, 771, 772, 773, 774, 775}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAssocTerminal", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSourceID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iTerminal", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_as_iface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_iface_extra_descriptor", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac1_as_header_descriptor"}, FldName: "as_header"}, + &StructType{Key: StructKey{Name: "uac_format_type_i_continuous_descriptor"}, FldName: "format_type_i_continuous"}, + &StructType{Key: StructKey{Name: "uac_format_type_i_discrete_descriptor"}, FldName: "format_type_i_discrete"}, + &StructType{Key: StructKey{Name: "uac_format_type_ii_discrete_descriptor"}, FldName: "format_type_ii_discrete"}, + }}}, + {Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_iface_extra_descriptors", IsVarlen: true}, Fields: []Type{ + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "others", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "uac_as_iface_extra_descriptor"}}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_as_in_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_in_endpoint_descriptor", TypeSize: 16}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, FldName: "inner"}, + }}}, + {Key: StructKey{Name: "uac_as_out_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_out_endpoint_descriptor", TypeSize: 16}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, FldName: "inner"}, + }}}, + {Key: StructKey{Name: "uac_control_iface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_control_iface_extra_descriptor", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac_input_terminal_descriptor"}, FldName: "input_terminal"}, + &StructType{Key: StructKey{Name: "uac1_output_terminal_descriptor"}, FldName: "output_terminal"}, + &StructType{Key: StructKey{Name: "uac_mixer_unit_descriptor"}, FldName: "mixer_unit"}, + &StructType{Key: StructKey{Name: "uac_selector_unit_descriptor"}, FldName: "selector_unit"}, + &StructType{Key: StructKey{Name: "uac_feature_unit_descriptor"}, FldName: "feature_unit"}, + &StructType{Key: StructKey{Name: "uac_processing_unit_descriptor"}, FldName: "processing_unit"}, + &StructType{Key: StructKey{Name: "uac_extension_unit_descriptor"}, FldName: "extension_unit"}, + }}}, + {Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_control_iface_extra_descriptors", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac1_ac_header_descriptor_2"}, FldName: "header"}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "others", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "uac_control_iface_extra_descriptor"}}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_extension_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_extension_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 8}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wProcessType", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_feature_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_feature_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSourceID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bControlSize", TypeSize: 1}}, Path: []string{"bmaControls"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "bmaControls", IsVarlen: true}, Type: &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_feature_unit_controls", TypeSize: 2}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}}, Kind: 1, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iFeature", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_format_type_i_continuous_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_i_continuous_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSubframeSize", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bBitResolution", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tLowerSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 3}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tUpperSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 3}, + }}}, + {Key: StructKey{Name: "uac_format_type_i_discrete_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_i_discrete_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSubframeSize", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bBitResolution", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 9}, + }}}, + {Key: StructKey{Name: "uac_format_type_ii_discrete_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_ii_discrete_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxBitRate", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wSamplesPerFrame", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 9}, + }}}, + {Key: StructKey{Name: "uac_input_terminal_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_input_terminal_descriptor", TypeSize: 12}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_input_terminal_types", FldName: "wTerminalType", TypeSize: 2}}, Vals: []uint64{256, 257, 511, 512, 513, 514, 515, 516, 517, 518}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAssocTerminal", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wChannelConfig", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iChannelNames", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iTerminal", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_iso_endpoint_descriptor", TypeSize: 7}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 37}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_iso_ep_attributes", FldName: "bmAttributes", TypeSize: 1}}, Vals: []uint64{1, 2, 128}, BitMask: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bLockDelayUnits", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wLockDelay", TypeSize: 2}}}, + }}}, + {Key: StructKey{Name: "uac_mixer_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_mixer_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_processing_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_processing_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 7}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_processing_unit_types", FldName: "wProcessType", TypeSize: 2}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_selector_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_selector_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, {Key: StructKey{Name: "ucred"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ucred", TypeSize: 12}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "pid", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", TypeSize: 4}}, @@ -25673,13 +25827,13 @@ var structDescs_arm64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "bcdCDC", TypeSize: 2}}}, }}}, - {Key: StructKey{Name: "usb_cdc_header_ethernet"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ethernet", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_cdc_header_ecm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ecm", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_cdc_union_desc_t[0, 0]"}, FldName: "union"}, &StructType{Key: StructKey{Name: "usb_cdc_header_desc"}, FldName: "header"}, &StructType{Key: StructKey{Name: "usb_cdc_ether_desc"}, FldName: "ether"}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "other", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_cdc_header_ethernet_other"}}, Kind: 1, RangeEnd: 6}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "other", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_cdc_header_ecm_other"}}, Kind: 1, RangeEnd: 6}, }}}, - {Key: StructKey{Name: "usb_cdc_header_ethernet_other"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ethernet_other", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_cdc_header_ecm_other"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ecm_other", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_cdc_call_mgmt_descriptor"}, FldName: "call_mgmt"}, &StructType{Key: StructKey{Name: "usb_cdc_acm_descriptor"}, FldName: "acm"}, &StructType{Key: StructKey{Name: "usb_cdc_country_functional_desc"}, FldName: "country_functional"}, @@ -25822,6 +25976,17 @@ var structDescs_arm64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, &StructType{Key: StructKey{Name: "usb_interface_descriptors_cdc_ncm"}, FldName: "interfaces"}, }}}, + {Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 2}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "wTotalLength", TypeSize: 2}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumInterfaces", TypeSize: 1}}, Val: 3}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bConfigurationValue", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iConfiguration", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_config_attributes", FldName: "bmAttributes", TypeSize: 1}}, Vals: []uint64{128, 64, 32, 16}, BitMask: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "usb_interface_descriptors_uac1"}, FldName: "interfaces"}, + }}}, {Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], len[interfaces, int8], flags[usb_config_attributes, int8], array[usb_interface_descriptor_cdc_ecm, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_t[const[1, int8], len[interfaces, int8], flags[usb_config_attributes, int8], array[usb_interface_descriptor_cdc_ecm, 1]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 2}, @@ -25866,6 +26031,9 @@ var structDescs_arm64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "interfaces", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_interface_descriptor"}}, Kind: 1, RangeBegin: 1, RangeEnd: 4}, }}}, + {Key: StructKey{Name: "usb_config_descriptor_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]"}, FldName: "inner"}, + }}}, {Key: StructKey{Name: "usb_ctrlrequest"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_ctrlrequest", TypeSize: 8}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_request_type_flags", FldName: "bRequestType", TypeSize: 1}}, Vals: []uint64{0, 128, 96, 0, 32, 64, 96, 31, 0, 1, 2, 3, 4, 5}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_requests", FldName: "bRequest", TypeSize: 1}}, Vals: []uint64{0, 1, 3, 5, 6, 7, 8, 9, 10, 11, 12, 48, 49, 13, 14, 14, 15, 15, 16, 17, 18, 19, 20, 21, 22, 23, 20, 21, 22, 23, 24}}, @@ -25931,6 +26099,23 @@ var structDescs_arm64 = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_hid"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, }}}, + {Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 18}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 1}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_versions", FldName: "bcdUSB", TypeSize: 2}}, Vals: []uint64{272, 512, 513, 592, 768, 784}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceProtocol", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_device_max_packet_sizes", FldName: "bMaxPacketSize0", TypeSize: 1}}, Vals: []uint64{8, 16, 32, 64, 255}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "idVendor", TypeSize: 2}}, Val: 7531}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "idProduct", TypeSize: 2}}, Val: 257}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bcdDevice", TypeSize: 2}}, Val: 64}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iManufacturer", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iProduct", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iSerialNumber", TypeSize: 1}}, Val: 3}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_uac1"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, + }}}, {Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x525, 0xa4a8, 64, array[usb_config_descriptor_printer, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_t[0, 0, 0, 0x525, 0xa4a8, 64, array[usb_config_descriptor_printer, 1]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 18}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 1}, @@ -25982,6 +26167,9 @@ var structDescs_arm64 = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_cdc_ncm"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, }}}, + {Key: StructKey{Name: "usb_device_descriptor_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]"}, FldName: "inner"}, + }}}, {Key: StructKey{Name: "usb_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]"}, FldName: "inner"}, }}}, @@ -26083,6 +26271,28 @@ var structDescs_arm64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, }}}, + {Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bEndpointAddress", TypeSize: 1}}, Val: 130}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bmAttributes", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxPacketSize", TypeSize: 2}}, Kind: 2, RangeEnd: 1024}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterval", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bRefresh", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "extra"}, + }}}, + {Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bEndpointAddress", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bmAttributes", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxPacketSize", TypeSize: 2}}, Kind: 2, RangeEnd: 1024}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterval", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bRefresh", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "extra"}, + }}}, {Key: StructKey{Name: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, @@ -26113,6 +26323,7 @@ var structDescs_arm64 = []*KeyedStruct{ }}}, {Key: StructKey{Name: "usb_endpoint_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_extra_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_generic_descriptor"}, FldName: "generic"}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "uac_iso"}, }}}, {Key: StructKey{Name: "usb_ext_cap_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_ext_cap_descriptor", TypeSize: 7}, Fields: []Type{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, @@ -26172,10 +26383,10 @@ var structDescs_arm64 = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_hub_change_flags", FldName: "wHubChange", TypeSize: 2}}, Vals: []uint64{1, 2}, BitMask: true}, }}}, {Key: StructKey{Name: "usb_interface_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, FldName: "inner"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, FldName: "inner"}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_cdc_ecm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_cdc_ecm", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]"}, FldName: "inner"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]"}, FldName: "inner"}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_hid"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_hid", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[1:2], const[USB_CLASS_HID, int8], const[USB_INTERFACE_SUBCLASS_BOOT, int8], flags[usb_hid_protocols, int8], usb_hid_descriptor_hid, usb_endpoint_descriptors_hid]"}, FldName: "inner"}, @@ -26183,6 +26394,19 @@ var structDescs_arm64 = []*KeyedStruct{ {Key: StructKey{Name: "usb_interface_descriptor_printer"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_printer", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[1:2], const[USB_CLASS_PRINTER, int8], const[1, int8], int8[USBLP_FIRST_PROTOCOL:USBLP_LAST_PROTOCOL], void, usb_endpoint_descriptors_printer]"}, FldName: "inner"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, FldName: "extra"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, + }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, @@ -26222,7 +26446,7 @@ var structDescs_arm64 = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_printer"}, FldName: "endpoints"}, }}}, - {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, @@ -26232,21 +26456,21 @@ var structDescs_arm64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 6}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, - &StructType{Key: StructKey{Name: "usb_cdc_header_ethernet"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ecm"}, FldName: "extra"}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_cdc_ecm"}, FldName: "endpoints"}, }}}, - {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]", TypeSize: 9}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAlternateSetting", TypeSize: 1}}}, - &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumEndpoints", TypeSize: 1}}, Path: []string{"endpoints"}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "extra", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_interface_extra_descriptor"}}, Kind: 1, RangeEnd: 2}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "endpoints", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_endpoint_descriptor"}}, Kind: 1, RangeEnd: 16}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]", TypeSize: 9}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, @@ -26261,6 +26485,19 @@ var structDescs_arm64 = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "uac_as_out_endpoint_descriptor"}, FldName: "endpoints"}, + }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]", TypeSize: 27}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, @@ -26274,15 +26511,64 @@ var structDescs_arm64 = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_cdc_ncm_data"}, FldName: "endpoints"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]", TypeSize: 9}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, + }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "uac_as_in_endpoint_descriptor"}, FldName: "endpoints"}, + }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterfaceNumber", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAlternateSetting", TypeSize: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumEndpoints", TypeSize: 1}}, Path: []string{"endpoints"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "extra", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_interface_extra_descriptor"}}, Kind: 1, RangeEnd: 2}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "endpoints", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_endpoint_descriptor"}}, Kind: 1, RangeEnd: 16}, + }}}, {Key: StructKey{Name: "usb_interface_descriptors_cdc_ncm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptors_cdc_ncm", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]"}, FldName: "control"}, &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]"}, FldName: "data_nop"}, &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]"}, FldName: "data"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptors_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptors_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]"}, FldName: "control"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, FldName: "as_out_alt_0"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]"}, FldName: "as_out_alt_1"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, FldName: "as_in_alt_0"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]"}, FldName: "as_in_alt_1"}, + }}}, {Key: StructKey{Name: "usb_interface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_extra_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_generic_descriptor"}, FldName: "generic"}, &StructType{Key: StructKey{Name: "usb_hid_descriptor_hid"}, FldName: "hid_hid"}, - &StructType{Key: StructKey{Name: "usb_cdc_header_ethernet"}, FldName: "usb_cdc"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ecm"}, FldName: "cdc_ecm"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ncm"}, FldName: "cdc_ncm"}, + &StructType{Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, FldName: "uac_control"}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "uac_as"}, }}}, {Key: StructKey{Name: "usb_port_status"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_port_status", IsVarlen: true}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_port_status_flags", FldName: "wPortStatus", TypeSize: 2}}, Vals: []uint64{1, 2, 4, 8, 16, 32, 256, 512, 1024, 2048, 4096, 480, 512, 7168, 0, 0, 32, 64, 96, 128, 160, 192, 224, 256, 288, 320, 352}}, @@ -27658,6 +27944,11 @@ var structDescs_arm64 = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_generic"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_DT_STRING", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_t[USB_TYPE_STANDARD, USB_DT_STRING, usb_string_descriptor]"}}}, }}}, + {Key: StructKey{Name: "vusb_descriptors_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_descriptors_uac1", TypeSize: 20}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_generic"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_DT_STRING", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_t[USB_TYPE_STANDARD, USB_DT_STRING, usb_string_descriptor]"}}}, + }}}, {Key: StructKey{Name: "vusb_response_generic"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_response_generic", IsVarlen: true}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_request_types", FldName: "type", TypeSize: 1}}, Vals: []uint64{0, 32, 64}, BitMask: true}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_requests", FldName: "req", TypeSize: 1}}, Vals: []uint64{0, 1, 3, 5, 6, 7, 8, 9, 10, 11, 12, 48, 49, 13, 14, 14, 15, 15, 16, 17, 18, 19, 20, 21, 22, 23, 20, 21, 22, 23, 24}}, @@ -27844,16 +28135,11 @@ var structDescs_arm64 = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"data"}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}}, }}}, - {Key: StructKey{Name: "vusb_responses"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses", TypeSize: 172}, Fields: []Type{ + {Key: StructKey{Name: "vusb_responses"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses", TypeSize: 132}, Fields: []Type{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_generic"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "get_interface", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_INTERFACE, int8]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "get_configuration", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_CONFIGURATION, int8]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_CUR", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_CUR, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MIN", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MIN, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MAX", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MAX, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "hub_USB_REQ_GET_STATUS_hub", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USB_REQ_GET_STATUS, usb_hub_status]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "hub_USB_REQ_GET_STATUS_port", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USB_REQ_GET_STATUS, usb_port_status]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "asix_AX_CMD_READ_MII_REG", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_VENDOR, AX_CMD_READ_MII_REG, int16]"}}}, @@ -27902,6 +28188,17 @@ var structDescs_arm64 = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USBLP_REQ_GET_STATUS", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USBLP_REQ_GET_STATUS, int8]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USBLP_REQ_HP_CHANNEL_CHANGE_REQUEST", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USBLP_REQ_HP_CHANNEL_CHANGE_REQUEST, int8]"}}}, }}}, + {Key: StructKey{Name: "vusb_responses_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses_uac1", TypeSize: 68}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_generic"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_REQ_GET_INTERFACE", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_INTERFACE, int8]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_REQ_GET_CONFIGURATION", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_CONFIGURATION, int8]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_CUR", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_CUR, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MIN", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MIN, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MAX", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MAX, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, + }}}, {Key: StructKey{Name: "winsize"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "winsize", TypeSize: 8}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "row", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "col", TypeSize: 2}}}, @@ -44047,6 +44344,12 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dev", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "usb_device_descriptor_printer"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "conn_descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_connect_descriptors"}}}, }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_printer", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {Name: "syz_usb_connect$uac1", CallName: "syz_usb_connect", Args: []Type{ + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_device_speed", FldName: "speed", TypeSize: 8}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "dev_len", TypeSize: 8}}, Path: []string{"dev"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dev", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "usb_device_descriptor_uac1"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "conn_descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_connect_descriptors"}}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_uac1", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {Name: "syz_usb_control_io", CallName: "syz_usb_control_io", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors"}}}, @@ -44072,6 +44375,11 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors_printer"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "resps", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_responses_printer"}}}, }}, + {Name: "syz_usb_control_io$uac1", CallName: "syz_usb_control_io", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_uac1", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors_uac1"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "resps", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_responses_uac1"}}}, + }}, {Name: "syz_usb_disconnect", CallName: "syz_usb_disconnect", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb", FldName: "fd", TypeSize: 4}}, }}, @@ -46588,6 +46896,7 @@ var consts_arm64 = []ConstValue{ {Name: "FUTEX_WAKE", Value: 1}, {Name: "FUTEX_WAKE_PRIVATE", Value: 129}, {Name: "F_ADD_SEALS", Value: 1033}, + {Name: "F_AUDIO_NUM_INTERFACES", Value: 2}, {Name: "F_DUPFD"}, {Name: "F_DUPFD_CLOEXEC", Value: 1030}, {Name: "F_GETFD", Value: 1}, @@ -50932,11 +51241,71 @@ var consts_arm64 = []ConstValue{ {Name: "TX_RESET_MULTI_IDX", Value: 512}, {Name: "TX_SEND", Value: 4}, {Name: "TX_SETUP", Value: 1}, + {Name: "UAC1_EXTENSION_UNIT", Value: 8}, + {Name: "UAC1_PROCESSING_UNIT", Value: 7}, + {Name: "UAC_AS_GENERAL", Value: 1}, + {Name: "UAC_DT_AC_HEADER_LENGTH", Value: 10}, + {Name: "UAC_EP_CS_ATTR_FILL_MAX", Value: 128}, + {Name: "UAC_EP_CS_ATTR_PITCH_CONTROL", Value: 2}, + {Name: "UAC_EP_CS_ATTR_SAMPLE_RATE", Value: 1}, + {Name: "UAC_EP_GENERAL", Value: 1}, + {Name: "UAC_FEATURE_UNIT", Value: 6}, + {Name: "UAC_FORMAT_TYPE", Value: 2}, + {Name: "UAC_FORMAT_TYPE_I", Value: 1}, + {Name: "UAC_FORMAT_TYPE_II", Value: 2}, + {Name: "UAC_FORMAT_TYPE_II_AC3", Value: 4098}, + {Name: "UAC_FORMAT_TYPE_II_MPEG", Value: 4097}, + {Name: "UAC_FORMAT_TYPE_I_ALAW", Value: 4}, + {Name: "UAC_FORMAT_TYPE_I_IEEE_FLOAT", Value: 3}, + {Name: "UAC_FORMAT_TYPE_I_MULAW", Value: 5}, + {Name: "UAC_FORMAT_TYPE_I_PCM", Value: 1}, + {Name: "UAC_FORMAT_TYPE_I_PCM8", Value: 2}, + {Name: "UAC_FORMAT_TYPE_I_UNDEFINED"}, + {Name: "UAC_FU_AUTOMATIC_GAIN", Value: 7}, + {Name: "UAC_FU_BASS", Value: 3}, + {Name: "UAC_FU_BASS_BOOST", Value: 9}, + {Name: "UAC_FU_DELAY", Value: 8}, + {Name: "UAC_FU_GRAPHIC_EQUALIZER", Value: 6}, + {Name: "UAC_FU_LOUDNESS", Value: 10}, + {Name: "UAC_FU_MID", Value: 4}, + {Name: "UAC_FU_MUTE", Value: 1}, + {Name: "UAC_FU_TREBLE", Value: 5}, + {Name: "UAC_FU_VOLUME", Value: 2}, {Name: "UAC_GET_CUR", Value: 129}, {Name: "UAC_GET_MAX", Value: 131}, {Name: "UAC_GET_MEM", Value: 133}, {Name: "UAC_GET_MIN", Value: 130}, {Name: "UAC_GET_RES", Value: 132}, + {Name: "UAC_HEADER", Value: 1}, + {Name: "UAC_INPUT_TERMINAL", Value: 2}, + {Name: "UAC_INPUT_TERMINAL_DESKTOP_MICROPHONE", Value: 514}, + {Name: "UAC_INPUT_TERMINAL_MICROPHONE", Value: 513}, + {Name: "UAC_INPUT_TERMINAL_MICROPHONE_ARRAY", Value: 517}, + {Name: "UAC_INPUT_TERMINAL_OMNI_DIR_MICROPHONE", Value: 516}, + {Name: "UAC_INPUT_TERMINAL_PERSONAL_MICROPHONE", Value: 515}, + {Name: "UAC_INPUT_TERMINAL_PROC_MICROPHONE_ARRAY", Value: 518}, + {Name: "UAC_INPUT_TERMINAL_UNDEFINED", Value: 512}, + {Name: "UAC_MIXER_UNIT", Value: 4}, + {Name: "UAC_OUTPUT_TERMINAL", Value: 3}, + {Name: "UAC_OUTPUT_TERMINAL_COMMUNICATION_SPEAKER", Value: 774}, + {Name: "UAC_OUTPUT_TERMINAL_DESKTOP_SPEAKER", Value: 772}, + {Name: "UAC_OUTPUT_TERMINAL_HEADPHONES", Value: 770}, + {Name: "UAC_OUTPUT_TERMINAL_HEAD_MOUNTED_DISPLAY_AUDIO", Value: 771}, + {Name: "UAC_OUTPUT_TERMINAL_LOW_FREQ_EFFECTS_SPEAKER", Value: 775}, + {Name: "UAC_OUTPUT_TERMINAL_ROOM_SPEAKER", Value: 773}, + {Name: "UAC_OUTPUT_TERMINAL_SPEAKER", Value: 769}, + {Name: "UAC_OUTPUT_TERMINAL_UNDEFINED", Value: 768}, + {Name: "UAC_PROCESS_CHORUS", Value: 5}, + {Name: "UAC_PROCESS_DOLBY_PROLOGIC", Value: 2}, + {Name: "UAC_PROCESS_DYN_RANGE_COMP", Value: 6}, + {Name: "UAC_PROCESS_REVERB", Value: 4}, + {Name: "UAC_PROCESS_STEREO_EXTENDER", Value: 3}, + {Name: "UAC_PROCESS_UNDEFINED"}, + {Name: "UAC_PROCESS_UP_DOWNMIX", Value: 1}, + {Name: "UAC_SELECTOR_UNIT", Value: 5}, + {Name: "UAC_TERMINAL_STREAMING", Value: 257}, + {Name: "UAC_TERMINAL_UNDEFINED", Value: 256}, + {Name: "UAC_TERMINAL_VENDOR_SPEC", Value: 511}, {Name: "UDMABUF_CREATE", Value: 1075344706}, {Name: "UDMABUF_CREATE_LIST", Value: 1074296131}, {Name: "UDPLITE_RECV_CSCOV", Value: 11}, @@ -51081,6 +51450,7 @@ var consts_arm64 = []ConstValue{ {Name: "USB_CDC_SUBCLASS_ETHERNET", Value: 6}, {Name: "USB_CDC_SUBCLASS_NCM", Value: 13}, {Name: "USB_CDC_UNION_TYPE", Value: 6}, + {Name: "USB_CLASS_AUDIO", Value: 1}, {Name: "USB_CLASS_COMM", Value: 2}, {Name: "USB_CLASS_HID", Value: 3}, {Name: "USB_CLASS_PRINTER", Value: 7}, @@ -51094,6 +51464,7 @@ var consts_arm64 = []ConstValue{ {Name: "USB_DT_BOS_SIZE", Value: 5}, {Name: "USB_DT_CONFIG", Value: 2}, {Name: "USB_DT_CONFIG_SIZE", Value: 9}, + {Name: "USB_DT_CS_ENDPOINT", Value: 37}, {Name: "USB_DT_CS_INTERFACE", Value: 36}, {Name: "USB_DT_CS_RADIO_CONTROL", Value: 35}, {Name: "USB_DT_DEBUG", Value: 10}, @@ -51138,6 +51509,9 @@ var consts_arm64 = []ConstValue{ {Name: "USB_ENDPOINT_SYNC_ASYNC", Value: 4}, {Name: "USB_ENDPOINT_SYNC_NONE"}, {Name: "USB_ENDPOINT_SYNC_SYNC", Value: 12}, + {Name: "USB_ENDPOINT_UAC1_AS_ATTRIBUTES", Value: 9}, + {Name: "USB_ENDPOINT_UAC1_AS_IN_ADDRESS", Value: 130}, + {Name: "USB_ENDPOINT_UAC1_AS_OUT_ADDRESS", Value: 1}, {Name: "USB_ENDPOINT_USAGE_DATA"}, {Name: "USB_ENDPOINT_USAGE_FEEDBACK", Value: 16}, {Name: "USB_ENDPOINT_XFER_BULK", Value: 2}, @@ -51252,6 +51626,8 @@ var consts_arm64 = []ConstValue{ {Name: "USB_SS_PORT_LS_U3", Value: 96}, {Name: "USB_SS_PORT_STAT_POWER", Value: 512}, {Name: "USB_SS_PORT_STAT_SPEED", Value: 7168}, + {Name: "USB_SUBCLASS_AUDIOCONTROL", Value: 1}, + {Name: "USB_SUBCLASS_AUDIOSTREAMING", Value: 2}, {Name: "USB_TYPE_CLASS", Value: 32}, {Name: "USB_TYPE_MASK", Value: 96}, {Name: "USB_TYPE_RESERVED", Value: 96}, @@ -52956,4 +53332,4 @@ var consts_arm64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_arm64 = "eb499140f0bbe4b6bd7b5bf9a9c5d7e0e22409aa" +const revision_arm64 = "e37e0795739c9fbd08ef79ba57bcee09ec4262f9" diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go index 1ca5dd1a7..d1a6e58d9 100644 --- a/sys/linux/gen/ppc64le.go +++ b/sys/linux/gen/ppc64le.go @@ -117,6 +117,7 @@ var resources_ppc64le = []*ResourceDesc{ {Name: "fd_usb_cdc_ncm", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_cdc_ncm"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usb_hid", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_hid"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usb_printer", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_printer"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_usb_uac1", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd_usb", "fd_usb_uac1"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usbfs", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_usbfs"}, Values: []uint64{18446744073709551615}}, {Name: "fd_usbmon", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_usbmon"}, Values: []uint64{18446744073709551615}}, {Name: "fd_userio", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_userio"}, Values: []uint64{18446744073709551615}}, @@ -25290,6 +25291,159 @@ var structDescs_ppc64le = []*KeyedStruct{ &StructType{Key: StructKey{Name: "nlattr_t[const[IFLA_IPTUN_COLLECT_METADATA, int16], void]"}, FldName: "IFLA_IPTUN_COLLECT_METADATA"}, &StructType{Key: StructKey{Name: "nlattr_t[const[IFLA_IPTUN_FWMARK, int16], int32]"}, FldName: "IFLA_IPTUN_FWMARK"}, }}}, + {Key: StructKey{Name: "uac1_ac_header_descriptor_2"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_ac_header_descriptor_2", TypeSize: 9}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 10}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "bcdADC", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "wTotalLength", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInCollection", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "baInterfaceNr0", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "baInterfaceNr1", TypeSize: 1}}, Val: 2}, + }}}, + {Key: StructKey{Name: "uac1_as_header_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_as_header_descriptor", TypeSize: 7}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalLink", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bDelay", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_format_types", FldName: "wFormatTag", TypeSize: 2}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 4097, 4098}}, + }}}, + {Key: StructKey{Name: "uac1_output_terminal_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac1_output_terminal_descriptor", TypeSize: 9}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 3}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_output_terminal_types", FldName: "wTerminalType", TypeSize: 2}}, Vals: []uint64{256, 257, 511, 768, 769, 770, 771, 772, 773, 774, 775}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAssocTerminal", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSourceID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iTerminal", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_as_iface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_iface_extra_descriptor", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac1_as_header_descriptor"}, FldName: "as_header"}, + &StructType{Key: StructKey{Name: "uac_format_type_i_continuous_descriptor"}, FldName: "format_type_i_continuous"}, + &StructType{Key: StructKey{Name: "uac_format_type_i_discrete_descriptor"}, FldName: "format_type_i_discrete"}, + &StructType{Key: StructKey{Name: "uac_format_type_ii_discrete_descriptor"}, FldName: "format_type_ii_discrete"}, + }}}, + {Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_iface_extra_descriptors", IsVarlen: true}, Fields: []Type{ + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "others", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "uac_as_iface_extra_descriptor"}}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_as_in_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_in_endpoint_descriptor", TypeSize: 16}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, FldName: "inner"}, + }}}, + {Key: StructKey{Name: "uac_as_out_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_as_out_endpoint_descriptor", TypeSize: 16}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, FldName: "inner"}, + }}}, + {Key: StructKey{Name: "uac_control_iface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_control_iface_extra_descriptor", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac_input_terminal_descriptor"}, FldName: "input_terminal"}, + &StructType{Key: StructKey{Name: "uac1_output_terminal_descriptor"}, FldName: "output_terminal"}, + &StructType{Key: StructKey{Name: "uac_mixer_unit_descriptor"}, FldName: "mixer_unit"}, + &StructType{Key: StructKey{Name: "uac_selector_unit_descriptor"}, FldName: "selector_unit"}, + &StructType{Key: StructKey{Name: "uac_feature_unit_descriptor"}, FldName: "feature_unit"}, + &StructType{Key: StructKey{Name: "uac_processing_unit_descriptor"}, FldName: "processing_unit"}, + &StructType{Key: StructKey{Name: "uac_extension_unit_descriptor"}, FldName: "extension_unit"}, + }}}, + {Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_control_iface_extra_descriptors", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "uac1_ac_header_descriptor_2"}, FldName: "header"}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "others", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "uac_control_iface_extra_descriptor"}}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_extension_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_extension_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 8}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wProcessType", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_feature_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_feature_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSourceID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bControlSize", TypeSize: 1}}, Path: []string{"bmaControls"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "bmaControls", IsVarlen: true}, Type: &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_feature_unit_controls", TypeSize: 2}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}}, Kind: 1, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iFeature", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_format_type_i_continuous_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_i_continuous_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSubframeSize", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bBitResolution", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tLowerSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 3}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tUpperSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 3}, + }}}, + {Key: StructKey{Name: "uac_format_type_i_discrete_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_i_discrete_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSubframeSize", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bBitResolution", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 9}, + }}}, + {Key: StructKey{Name: "uac_format_type_ii_discrete_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_format_type_ii_discrete_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bFormatType", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxBitRate", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wSamplesPerFrame", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSamFreqType", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "tSamFreq", IsVarlen: true}, Kind: 1, RangeEnd: 9}, + }}}, + {Key: StructKey{Name: "uac_input_terminal_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_input_terminal_descriptor", TypeSize: 12}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bTerminalID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_input_terminal_types", FldName: "wTerminalType", TypeSize: 2}}, Vals: []uint64{256, 257, 511, 512, 513, 514, 515, 516, 517, 518}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAssocTerminal", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrChannels", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wChannelConfig", TypeSize: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iChannelNames", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iTerminal", TypeSize: 1}}}, + }}}, + {Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_iso_endpoint_descriptor", TypeSize: 7}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 37}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 1}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_iso_ep_attributes", FldName: "bmAttributes", TypeSize: 1}}, Vals: []uint64{1, 2, 128}, BitMask: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bLockDelayUnits", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wLockDelay", TypeSize: 2}}}, + }}}, + {Key: StructKey{Name: "uac_mixer_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_mixer_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_processing_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_processing_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 7}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "uac_processing_unit_types", FldName: "wProcessType", TypeSize: 2}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, + {Key: StructKey{Name: "uac_selector_unit_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "uac_selector_unit_descriptor", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 36}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}, Val: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bUnitID", TypeSize: 1}}, Kind: 2, RangeBegin: 1, RangeEnd: 6}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bNrInPins", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "baSourceID", IsVarlen: true}, Kind: 1, RangeEnd: 6}, + }}}, {Key: StructKey{Name: "ucred"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ucred", TypeSize: 12}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "pid", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", FldName: "uid", TypeSize: 4}}, @@ -25543,13 +25697,13 @@ var structDescs_ppc64le = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorSubType", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "bcdCDC", TypeSize: 2}}}, }}}, - {Key: StructKey{Name: "usb_cdc_header_ethernet"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ethernet", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_cdc_header_ecm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ecm", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_cdc_union_desc_t[0, 0]"}, FldName: "union"}, &StructType{Key: StructKey{Name: "usb_cdc_header_desc"}, FldName: "header"}, &StructType{Key: StructKey{Name: "usb_cdc_ether_desc"}, FldName: "ether"}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "other", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_cdc_header_ethernet_other"}}, Kind: 1, RangeEnd: 6}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "other", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_cdc_header_ecm_other"}}, Kind: 1, RangeEnd: 6}, }}}, - {Key: StructKey{Name: "usb_cdc_header_ethernet_other"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ethernet_other", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_cdc_header_ecm_other"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_cdc_header_ecm_other", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_cdc_call_mgmt_descriptor"}, FldName: "call_mgmt"}, &StructType{Key: StructKey{Name: "usb_cdc_acm_descriptor"}, FldName: "acm"}, &StructType{Key: StructKey{Name: "usb_cdc_country_functional_desc"}, FldName: "country_functional"}, @@ -25692,6 +25846,17 @@ var structDescs_ppc64le = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, &StructType{Key: StructKey{Name: "usb_interface_descriptors_cdc_ncm"}, FldName: "interfaces"}, }}}, + {Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 2}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "wTotalLength", TypeSize: 2}}, Path: []string{"parent"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumInterfaces", TypeSize: 1}}, Val: 3}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bConfigurationValue", TypeSize: 1}}, Val: 1}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iConfiguration", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_config_attributes", FldName: "bmAttributes", TypeSize: 1}}, Vals: []uint64{128, 64, 32, 16}, BitMask: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "usb_interface_descriptors_uac1"}, FldName: "interfaces"}, + }}}, {Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], len[interfaces, int8], flags[usb_config_attributes, int8], array[usb_interface_descriptor_cdc_ecm, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_t[const[1, int8], len[interfaces, int8], flags[usb_config_attributes, int8], array[usb_interface_descriptor_cdc_ecm, 1]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 2}, @@ -25736,6 +25901,9 @@ var structDescs_ppc64le = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bMaxPower", TypeSize: 1}}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "interfaces", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_interface_descriptor"}}, Kind: 1, RangeBegin: 1, RangeEnd: 4}, }}}, + {Key: StructKey{Name: "usb_config_descriptor_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_config_descriptor_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1]"}, FldName: "inner"}, + }}}, {Key: StructKey{Name: "usb_ctrlrequest"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_ctrlrequest", TypeSize: 8}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_request_type_flags", FldName: "bRequestType", TypeSize: 1}}, Vals: []uint64{0, 128, 96, 0, 32, 64, 96, 31, 0, 1, 2, 3, 4, 5}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_requests", FldName: "bRequest", TypeSize: 1}}, Vals: []uint64{0, 1, 3, 5, 6, 7, 8, 9, 10, 11, 12, 48, 49, 13, 14, 14, 15, 15, 16, 17, 18, 19, 20, 21, 22, 23, 20, 21, 22, 23, 24}}, @@ -25801,6 +25969,23 @@ var structDescs_ppc64le = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_hid"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, }}}, + {Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 18}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 1}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_versions", FldName: "bcdUSB", TypeSize: 2}}, Vals: []uint64{272, 512, 513, 592, 768, 784}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDeviceProtocol", TypeSize: 1}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_device_max_packet_sizes", FldName: "bMaxPacketSize0", TypeSize: 1}}, Vals: []uint64{8, 16, 32, 64, 255}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "idVendor", TypeSize: 2}}, Val: 7531}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "idProduct", TypeSize: 2}}, Val: 257}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bcdDevice", TypeSize: 2}}, Val: 64}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iManufacturer", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iProduct", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "iSerialNumber", TypeSize: 1}}, Val: 3}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_uac1"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, + }}}, {Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x525, 0xa4a8, 64, array[usb_config_descriptor_printer, 1]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_t[0, 0, 0, 0x525, 0xa4a8, 64, array[usb_config_descriptor_printer, 1]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 18}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 1}, @@ -25852,6 +26037,9 @@ var structDescs_ppc64le = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumConfigurations", TypeSize: 1}}, Path: []string{"configs"}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "configs", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_config_descriptor_cdc_ncm"}}, Kind: 1, RangeBegin: 1, RangeEnd: 1}, }}}, + {Key: StructKey{Name: "usb_device_descriptor_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_device_descriptor_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]]"}, FldName: "inner"}, + }}}, {Key: StructKey{Name: "usb_endpoint_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]"}, FldName: "inner"}, }}}, @@ -25953,6 +26141,28 @@ var structDescs_ppc64le = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, }}}, + {Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bEndpointAddress", TypeSize: 1}}, Val: 130}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bmAttributes", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxPacketSize", TypeSize: 2}}, Kind: 2, RangeEnd: 1024}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterval", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bRefresh", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "extra"}, + }}}, + {Key: StructKey{Name: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor]", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bEndpointAddress", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bmAttributes", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "wMaxPacketSize", TypeSize: 2}}, Kind: 2, RangeEnd: 1024}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterval", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bRefresh", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bSynchAddress", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "extra"}, + }}}, {Key: StructKey{Name: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_descriptor_t[flags[usb_endpoint_addresses, int8], flags[usb_endpoint_attributes, int8], array[usb_endpoint_extra_descriptor, 0:2]]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 5}, @@ -25983,6 +26193,7 @@ var structDescs_ppc64le = []*KeyedStruct{ }}}, {Key: StructKey{Name: "usb_endpoint_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_endpoint_extra_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_generic_descriptor"}, FldName: "generic"}, + &StructType{Key: StructKey{Name: "uac_iso_endpoint_descriptor"}, FldName: "uac_iso"}, }}}, {Key: StructKey{Name: "usb_ext_cap_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_ext_cap_descriptor", TypeSize: 7}, Fields: []Type{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bLength", TypeSize: 1}}, Path: []string{"parent"}}, @@ -26042,10 +26253,10 @@ var structDescs_ppc64le = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_hub_change_flags", FldName: "wHubChange", TypeSize: 2}}, Vals: []uint64{1, 2}, BitMask: true}, }}}, {Key: StructKey{Name: "usb_interface_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, FldName: "inner"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, FldName: "inner"}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_cdc_ecm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_cdc_ecm", IsVarlen: true}, Fields: []Type{ - &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]"}, FldName: "inner"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]"}, FldName: "inner"}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_hid"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_hid", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[1:2], const[USB_CLASS_HID, int8], const[USB_INTERFACE_SUBCLASS_BOOT, int8], flags[usb_hid_protocols, int8], usb_hid_descriptor_hid, usb_endpoint_descriptors_hid]"}, FldName: "inner"}, @@ -26053,6 +26264,19 @@ var structDescs_ppc64le = []*KeyedStruct{ {Key: StructKey{Name: "usb_interface_descriptor_printer"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_printer", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[1:2], const[USB_CLASS_PRINTER, int8], const[1, int8], int8[USBLP_FIRST_PROTOCOL:USBLP_LAST_PROTOCOL], void, usb_endpoint_descriptors_printer]"}, FldName: "inner"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, FldName: "extra"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, + }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, @@ -26092,7 +26316,7 @@ var structDescs_ppc64le = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_printer"}, FldName: "endpoints"}, }}}, - {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm]", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm]", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, @@ -26102,21 +26326,21 @@ var structDescs_ppc64le = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 6}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, - &StructType{Key: StructKey{Name: "usb_cdc_header_ethernet"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ecm"}, FldName: "extra"}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_cdc_ecm"}, FldName: "endpoints"}, }}}, - {Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[0, int8], int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]", IsVarlen: true}, Fields: []Type{ + {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]", TypeSize: 9}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAlternateSetting", TypeSize: 1}}}, - &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumEndpoints", TypeSize: 1}}, Path: []string{"endpoints"}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "extra", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_interface_extra_descriptor"}}, Kind: 1, RangeEnd: 2}, - &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "endpoints", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_endpoint_descriptor"}}, Kind: 1, RangeEnd: 16}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]", TypeSize: 9}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, @@ -26131,6 +26355,19 @@ var structDescs_ppc64le = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "uac_as_out_endpoint_descriptor"}, FldName: "endpoints"}, + }}}, {Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]", TypeSize: 27}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, @@ -26144,15 +26381,64 @@ var structDescs_ppc64le = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, &StructType{Key: StructKey{Name: "usb_endpoint_descriptors_cdc_ncm_data"}, FldName: "endpoints"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]", TypeSize: 9}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "extra"}, Kind: 1}, + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "endpoints"}, Kind: 1}, + }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceNumber", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bAlternateSetting", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bNumEndpoints", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "extra"}, + &StructType{Key: StructKey{Name: "uac_as_in_endpoint_descriptor"}, FldName: "endpoints"}, + }}}, + {Key: StructKey{Name: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptor_t[int8, int8, len[endpoints, int8], const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bLength", TypeSize: 1}}, Val: 9}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bDescriptorType", TypeSize: 1}}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bInterfaceNumber", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bAlternateSetting", TypeSize: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bNumEndpoints", TypeSize: 1}}, Path: []string{"endpoints"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceSubClass", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bInterfaceProtocol", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "iInterface", TypeSize: 1}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "extra", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "usb_interface_extra_descriptor"}}, Kind: 1, RangeEnd: 2}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "endpoints", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "usb_endpoint_descriptor"}}, Kind: 1, RangeEnd: 16}, + }}}, {Key: StructKey{Name: "usb_interface_descriptors_cdc_ncm"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptors_cdc_ncm", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify]"}, FldName: "control"}, &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void]"}, FldName: "data_nop"}, &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data]"}, FldName: "data"}, }}}, + {Key: StructKey{Name: "usb_interface_descriptors_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_descriptors_uac1", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[0, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOCONTROL, int8], const[0, int8], uac_control_iface_extra_descriptors, void]"}, FldName: "control"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, FldName: "as_out_alt_0"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[1, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor]"}, FldName: "as_out_alt_1"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[0, int8], const[0, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], void, void]"}, FldName: "as_in_alt_0"}, + &StructType{Key: StructKey{Name: "usb_interface_descriptor_t[const[2, int8], const[1, int8], const[1, int8], const[USB_CLASS_AUDIO, int8], const[USB_SUBCLASS_AUDIOSTREAMING, int8], const[0, int8], uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor]"}, FldName: "as_in_alt_1"}, + }}}, {Key: StructKey{Name: "usb_interface_extra_descriptor"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_interface_extra_descriptor", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "usb_generic_descriptor"}, FldName: "generic"}, &StructType{Key: StructKey{Name: "usb_hid_descriptor_hid"}, FldName: "hid_hid"}, - &StructType{Key: StructKey{Name: "usb_cdc_header_ethernet"}, FldName: "usb_cdc"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ecm"}, FldName: "cdc_ecm"}, + &StructType{Key: StructKey{Name: "usb_cdc_header_ncm"}, FldName: "cdc_ncm"}, + &StructType{Key: StructKey{Name: "uac_control_iface_extra_descriptors"}, FldName: "uac_control"}, + &StructType{Key: StructKey{Name: "uac_as_iface_extra_descriptors"}, FldName: "uac_as"}, }}}, {Key: StructKey{Name: "usb_port_status"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "usb_port_status", IsVarlen: true}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_port_status_flags", FldName: "wPortStatus", TypeSize: 2}}, Vals: []uint64{1, 2, 4, 8, 16, 32, 256, 512, 1024, 2048, 4096, 480, 512, 7168, 0, 0, 32, 64, 96, 128, 160, 192, 224, 256, 288, 320, 352}}, @@ -27553,6 +27839,11 @@ var structDescs_ppc64le = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_generic"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_DT_STRING", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_t[USB_TYPE_STANDARD, USB_DT_STRING, usb_string_descriptor]"}}}, }}}, + {Key: StructKey{Name: "vusb_descriptors_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_descriptors_uac1", TypeSize: 20}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_generic"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_DT_STRING", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptor_t[USB_TYPE_STANDARD, USB_DT_STRING, usb_string_descriptor]"}}}, + }}}, {Key: StructKey{Name: "vusb_response_generic"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_response_generic", IsVarlen: true}, Fields: []Type{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_request_types", FldName: "type", TypeSize: 1}}, Vals: []uint64{0, 32, 64}, BitMask: true}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_requests", FldName: "req", TypeSize: 1}}, Vals: []uint64{0, 1, 3, 5, 6, 7, 8, 9, 10, 11, 12, 48, 49, 13, 14, 14, 15, 15, 16, 17, 18, 19, 20, 21, 22, 23, 20, 21, 22, 23, 24}}, @@ -27739,16 +28030,11 @@ var structDescs_ppc64le = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"data"}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}}, }}}, - {Key: StructKey{Name: "vusb_responses"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses", TypeSize: 172}, Fields: []Type{ + {Key: StructKey{Name: "vusb_responses"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses", TypeSize: 132}, Fields: []Type{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_generic"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "get_interface", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_INTERFACE, int8]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "get_configuration", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_CONFIGURATION, int8]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_CUR", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_CUR, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MIN", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MIN, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MAX", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MAX, array[int8, 1:3]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "hub_USB_REQ_GET_STATUS_hub", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USB_REQ_GET_STATUS, usb_hub_status]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "hub_USB_REQ_GET_STATUS_port", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USB_REQ_GET_STATUS, usb_port_status]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "asix_AX_CMD_READ_MII_REG", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_VENDOR, AX_CMD_READ_MII_REG, int16]"}}}, @@ -27797,6 +28083,17 @@ var structDescs_ppc64le = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USBLP_REQ_GET_STATUS", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USBLP_REQ_GET_STATUS, int8]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USBLP_REQ_HP_CHANNEL_CHANGE_REQUEST", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, USBLP_REQ_HP_CHANNEL_CHANGE_REQUEST, int8]"}}}, }}}, + {Key: StructKey{Name: "vusb_responses_uac1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "vusb_responses_uac1", TypeSize: 68}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"parent"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "generic", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_generic"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_REQ_GET_INTERFACE", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_INTERFACE, int8]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "USB_REQ_GET_CONFIGURATION", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_CONFIGURATION, int8]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_CUR", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_CUR, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MIN", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MIN, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MAX", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MAX, array[int8, 1:3]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, + }}}, {Key: StructKey{Name: "winsize"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "winsize", TypeSize: 8}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "row", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "col", TypeSize: 2}}}, @@ -44020,6 +44317,12 @@ var syscalls_ppc64le = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dev", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "usb_device_descriptor_printer"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "conn_descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_connect_descriptors"}}}, }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_printer", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {Name: "syz_usb_connect$uac1", CallName: "syz_usb_connect", Args: []Type{ + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "usb_device_speed", FldName: "speed", TypeSize: 8}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "dev_len", TypeSize: 8}}, Path: []string{"dev"}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dev", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "usb_device_descriptor_uac1"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "conn_descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_connect_descriptors"}}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_uac1", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {Name: "syz_usb_control_io", CallName: "syz_usb_control_io", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors"}}}, @@ -44045,6 +44348,11 @@ var syscalls_ppc64le = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors_printer"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "resps", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_responses_printer"}}}, }}, + {Name: "syz_usb_control_io$uac1", CallName: "syz_usb_control_io", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb_uac1", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "descs", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_descriptors_uac1"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "resps", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_responses_uac1"}}}, + }}, {Name: "syz_usb_disconnect", CallName: "syz_usb_disconnect", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usb", FldName: "fd", TypeSize: 4}}, }}, @@ -46582,6 +46890,7 @@ var consts_ppc64le = []ConstValue{ {Name: "FUTEX_WAKE", Value: 1}, {Name: "FUTEX_WAKE_PRIVATE", Value: 129}, {Name: "F_ADD_SEALS", Value: 1033}, + {Name: "F_AUDIO_NUM_INTERFACES", Value: 2}, {Name: "F_DUPFD"}, {Name: "F_DUPFD_CLOEXEC", Value: 1030}, {Name: "F_GETFD", Value: 1}, @@ -50905,11 +51214,71 @@ var consts_ppc64le = []ConstValue{ {Name: "TX_RESET_MULTI_IDX", Value: 512}, {Name: "TX_SEND", Value: 4}, {Name: "TX_SETUP", Value: 1}, + {Name: "UAC1_EXTENSION_UNIT", Value: 8}, + {Name: "UAC1_PROCESSING_UNIT", Value: 7}, + {Name: "UAC_AS_GENERAL", Value: 1}, + {Name: "UAC_DT_AC_HEADER_LENGTH", Value: 10}, + {Name: "UAC_EP_CS_ATTR_FILL_MAX", Value: 128}, + {Name: "UAC_EP_CS_ATTR_PITCH_CONTROL", Value: 2}, + {Name: "UAC_EP_CS_ATTR_SAMPLE_RATE", Value: 1}, + {Name: "UAC_EP_GENERAL", Value: 1}, + {Name: "UAC_FEATURE_UNIT", Value: 6}, + {Name: "UAC_FORMAT_TYPE", Value: 2}, + {Name: "UAC_FORMAT_TYPE_I", Value: 1}, + {Name: "UAC_FORMAT_TYPE_II", Value: 2}, + {Name: "UAC_FORMAT_TYPE_II_AC3", Value: 4098}, + {Name: "UAC_FORMAT_TYPE_II_MPEG", Value: 4097}, + {Name: "UAC_FORMAT_TYPE_I_ALAW", Value: 4}, + {Name: "UAC_FORMAT_TYPE_I_IEEE_FLOAT", Value: 3}, + {Name: "UAC_FORMAT_TYPE_I_MULAW", Value: 5}, + {Name: "UAC_FORMAT_TYPE_I_PCM", Value: 1}, + {Name: "UAC_FORMAT_TYPE_I_PCM8", Value: 2}, + {Name: "UAC_FORMAT_TYPE_I_UNDEFINED"}, + {Name: "UAC_FU_AUTOMATIC_GAIN", Value: 7}, + {Name: "UAC_FU_BASS", Value: 3}, + {Name: "UAC_FU_BASS_BOOST", Value: 9}, + {Name: "UAC_FU_DELAY", Value: 8}, + {Name: "UAC_FU_GRAPHIC_EQUALIZER", Value: 6}, + {Name: "UAC_FU_LOUDNESS", Value: 10}, + {Name: "UAC_FU_MID", Value: 4}, + {Name: "UAC_FU_MUTE", Value: 1}, + {Name: "UAC_FU_TREBLE", Value: 5}, + {Name: "UAC_FU_VOLUME", Value: 2}, {Name: "UAC_GET_CUR", Value: 129}, {Name: "UAC_GET_MAX", Value: 131}, {Name: "UAC_GET_MEM", Value: 133}, {Name: "UAC_GET_MIN", Value: 130}, {Name: "UAC_GET_RES", Value: 132}, + {Name: "UAC_HEADER", Value: 1}, + {Name: "UAC_INPUT_TERMINAL", Value: 2}, + {Name: "UAC_INPUT_TERMINAL_DESKTOP_MICROPHONE", Value: 514}, + {Name: "UAC_INPUT_TERMINAL_MICROPHONE", Value: 513}, + {Name: "UAC_INPUT_TERMINAL_MICROPHONE_ARRAY", Value: 517}, + {Name: "UAC_INPUT_TERMINAL_OMNI_DIR_MICROPHONE", Value: 516}, + {Name: "UAC_INPUT_TERMINAL_PERSONAL_MICROPHONE", Value: 515}, + {Name: "UAC_INPUT_TERMINAL_PROC_MICROPHONE_ARRAY", Value: 518}, + {Name: "UAC_INPUT_TERMINAL_UNDEFINED", Value: 512}, + {Name: "UAC_MIXER_UNIT", Value: 4}, + {Name: "UAC_OUTPUT_TERMINAL", Value: 3}, + {Name: "UAC_OUTPUT_TERMINAL_COMMUNICATION_SPEAKER", Value: 774}, + {Name: "UAC_OUTPUT_TERMINAL_DESKTOP_SPEAKER", Value: 772}, + {Name: "UAC_OUTPUT_TERMINAL_HEADPHONES", Value: 770}, + {Name: "UAC_OUTPUT_TERMINAL_HEAD_MOUNTED_DISPLAY_AUDIO", Value: 771}, + {Name: "UAC_OUTPUT_TERMINAL_LOW_FREQ_EFFECTS_SPEAKER", Value: 775}, + {Name: "UAC_OUTPUT_TERMINAL_ROOM_SPEAKER", Value: 773}, + {Name: "UAC_OUTPUT_TERMINAL_SPEAKER", Value: 769}, + {Name: "UAC_OUTPUT_TERMINAL_UNDEFINED", Value: 768}, + {Name: "UAC_PROCESS_CHORUS", Value: 5}, + {Name: "UAC_PROCESS_DOLBY_PROLOGIC", Value: 2}, + {Name: "UAC_PROCESS_DYN_RANGE_COMP", Value: 6}, + {Name: "UAC_PROCESS_REVERB", Value: 4}, + {Name: "UAC_PROCESS_STEREO_EXTENDER", Value: 3}, + {Name: "UAC_PROCESS_UNDEFINED"}, + {Name: "UAC_PROCESS_UP_DOWNMIX", Value: 1}, + {Name: "UAC_SELECTOR_UNIT", Value: 5}, + {Name: "UAC_TERMINAL_STREAMING", Value: 257}, + {Name: "UAC_TERMINAL_UNDEFINED", Value: 256}, + {Name: "UAC_TERMINAL_VENDOR_SPEC", Value: 511}, {Name: "UDMABUF_CREATE", Value: 2149086530}, {Name: "UDMABUF_CREATE_LIST", Value: 2148037955}, {Name: "UDPLITE_RECV_CSCOV", Value: 11}, @@ -51054,6 +51423,7 @@ var consts_ppc64le = []ConstValue{ {Name: "USB_CDC_SUBCLASS_ETHERNET", Value: 6}, {Name: "USB_CDC_SUBCLASS_NCM", Value: 13}, {Name: "USB_CDC_UNION_TYPE", Value: 6}, + {Name: "USB_CLASS_AUDIO", Value: 1}, {Name: "USB_CLASS_COMM", Value: 2}, {Name: "USB_CLASS_HID", Value: 3}, {Name: "USB_CLASS_PRINTER", Value: 7}, @@ -51067,6 +51437,7 @@ var consts_ppc64le = []ConstValue{ {Name: "USB_DT_BOS_SIZE", Value: 5}, {Name: "USB_DT_CONFIG", Value: 2}, {Name: "USB_DT_CONFIG_SIZE", Value: 9}, + {Name: "USB_DT_CS_ENDPOINT", Value: 37}, {Name: "USB_DT_CS_INTERFACE", Value: 36}, {Name: "USB_DT_CS_RADIO_CONTROL", Value: 35}, {Name: "USB_DT_DEBUG", Value: 10}, @@ -51111,6 +51482,9 @@ var consts_ppc64le = []ConstValue{ {Name: "USB_ENDPOINT_SYNC_ASYNC", Value: 4}, {Name: "USB_ENDPOINT_SYNC_NONE"}, {Name: "USB_ENDPOINT_SYNC_SYNC", Value: 12}, + {Name: "USB_ENDPOINT_UAC1_AS_ATTRIBUTES", Value: 9}, + {Name: "USB_ENDPOINT_UAC1_AS_IN_ADDRESS", Value: 130}, + {Name: "USB_ENDPOINT_UAC1_AS_OUT_ADDRESS", Value: 1}, {Name: "USB_ENDPOINT_USAGE_DATA"}, {Name: "USB_ENDPOINT_USAGE_FEEDBACK", Value: 16}, {Name: "USB_ENDPOINT_XFER_BULK", Value: 2}, @@ -51225,6 +51599,8 @@ var consts_ppc64le = []ConstValue{ {Name: "USB_SS_PORT_LS_U3", Value: 96}, {Name: "USB_SS_PORT_STAT_POWER", Value: 512}, {Name: "USB_SS_PORT_STAT_SPEED", Value: 7168}, + {Name: "USB_SUBCLASS_AUDIOCONTROL", Value: 1}, + {Name: "USB_SUBCLASS_AUDIOSTREAMING", Value: 2}, {Name: "USB_TYPE_CLASS", Value: 32}, {Name: "USB_TYPE_MASK", Value: 96}, {Name: "USB_TYPE_RESERVED", Value: 96}, @@ -52921,4 +53297,4 @@ var consts_ppc64le = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_ppc64le = "d168ef7dc35b8b5c166dd9327de68c4cb4c49020" +const revision_ppc64le = "42a1b9f46b354dff77558c3da620f311189b48aa" diff --git a/sys/linux/vusb.txt b/sys/linux/vusb.txt index 5a306fc80..aa33a1bc1 100644 --- a/sys/linux/vusb.txt +++ b/sys/linux/vusb.txt @@ -23,6 +23,7 @@ resource fd_usb_hid[fd_usb] resource fd_usb_printer[fd_usb] resource fd_usb_cdc_ecm[fd_usb] resource fd_usb_cdc_ncm[fd_usb] +resource fd_usb_uac1[fd_usb] # These are generic syzcalls for emulating arbitrary USB devices. # They are mostly targeted to cover the enumeration process. @@ -48,8 +49,14 @@ syz_usb_control_io$cdc_ecm(fd fd_usb_cdc_ecm, descs ptr[in, vusb_descriptors_cdc syz_usb_connect$cdc_ncm(speed flags[usb_device_speed], dev_len len[dev], dev ptr[in, usb_device_descriptor_cdc_ncm], conn_descs ptr[in, vusb_connect_descriptors]) fd_usb_cdc_ncm syz_usb_control_io$cdc_ncm(fd fd_usb_cdc_ncm, descs ptr[in, vusb_descriptors_cdc_ncm], resps ptr[in, vusb_responses_cdc_ncm]) +# These syzcalls specifically target the UAC1 device class. +syz_usb_connect$uac1(speed flags[usb_device_speed], dev_len len[dev], dev ptr[in, usb_device_descriptor_uac1], conn_descs ptr[in, vusb_connect_descriptors]) fd_usb_uac1 +syz_usb_control_io$uac1(fd fd_usb_uac1, descs ptr[in, vusb_descriptors_uac1], resps ptr[in, vusb_responses_uac1]) + usb_device_speed = USB_SPEED_UNKNOWN, USB_SPEED_LOW, USB_SPEED_FULL, USB_SPEED_HIGH, USB_SPEED_WIRELESS, USB_SPEED_SUPER, USB_SPEED_SUPER_PLUS +# TODO: consider patching idVendor and idProduct for all classes in Go code. + # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # @@ -112,6 +119,7 @@ type usb_interface_descriptor_t[IFNUM, ALTNUM, EPSNUM, CLASS, SUBCLASS, PROTOCOL } [packed] type usb_interface_descriptor_eps_array_t[IFNUM, ALTNUM, CLASS, SUBCLASS, PROTOCOL, EXTRA, EPS] usb_interface_descriptor_t[IFNUM, ALTNUM, len[endpoints, int8], CLASS, SUBCLASS, PROTOCOL, EXTRA, EPS] +type usb_interface_descriptor_consts_t[IFNUM, ALTNUM, EPSNUM, CLASS, SUBCLASS, PROTOCOL, EXTRA, EPS] usb_interface_descriptor_t[const[IFNUM, int8], const[ALTNUM, int8], const[EPSNUM, int8], const[CLASS, int8], const[SUBCLASS, int8], const[PROTOCOL, int8], EXTRA, EPS] # TODO: Some endpoints have USB_DT_ENDPOINT_SIZE. type usb_endpoint_descriptor_t[ADDR, ATTRS, EXTRA] { @@ -151,7 +159,7 @@ usb_config_attributes = USB_CONFIG_ATT_ONE, USB_CONFIG_ATT_SELFPOWER, USB_CONFIG # bInterfaceNumber, bInterfaceClass, bInterfaceSubClass and bInterfaceProtocol # are patched by Go code, see sys/linux/init_vusb.go. usb_interface_descriptor { - inner usb_interface_descriptor_eps_array_t[const[0, int8], int8, const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]] + inner usb_interface_descriptor_eps_array_t[int8, int8, const[0, int8], const[0, int8], const[0, int8], array[usb_interface_extra_descriptor, 0:2], array[usb_endpoint_descriptor, 0:16]] } [packed] usb_endpoint_descriptor { @@ -213,13 +221,6 @@ vusb_responses { get_interface ptr[in, vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_INTERFACE, int8]] get_configuration ptr[in, vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_CONFIGURATION, int8]] -# TODO: https://elixir.bootlin.com/linux/v5.2.6/source/include/linux/usb/audio-v2.h#L256 - audio_UAC_GET_CUR ptr[in, vusb_response_t[USB_TYPE_CLASS, UAC_GET_CUR, array[int8, 1:3]]] - audio_UAC_GET_MIN ptr[in, vusb_response_t[USB_TYPE_CLASS, UAC_GET_MIN, array[int8, 1:3]]] - audio_UAC_GET_MAX ptr[in, vusb_response_t[USB_TYPE_CLASS, UAC_GET_MAX, array[int8, 1:3]]] - audio_UAC_GET_RES ptr[in, vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]] - audio_UAC_GET_MEM ptr[in, vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]] - hub_USB_REQ_GET_STATUS_hub ptr[in, vusb_response_t[USB_TYPE_CLASS, USB_REQ_GET_STATUS, usb_hub_status]] hub_USB_REQ_GET_STATUS_port ptr[in, vusb_response_t[USB_TYPE_CLASS, USB_REQ_GET_STATUS, usb_port_status]] @@ -400,27 +401,19 @@ usb_ptm_cap_descriptor { # Extra USB descriptors that come after an interface or an endpoint descriptor. -# TODO: uas_find_endpoints (endpoint) -# TODO: rpipe_epc_find (endpoint) -# TODO: uvc_parse_streaming (iface) -# TODO: uvc_parse_control (iface) -# TODO: hso_get_mux_ports (iface) -# TODO: blan_mdlm_bind (iface) -# TODO: gtco_probe (iface) -# TODO: dlfb_parse_vendor_descriptor (iface) -# TODO: snd_usbmidi_get_ms_info (ifcae, endpoint) - -# TODO: https://elixir.bootlin.com/linux/latest/source/include/uapi/linux/usb/audio.h -# TODO: search for snd_usb_find_csint_desc() - +# TODO: rework this union so each option is a single descriptor. usb_interface_extra_descriptor [ - generic usb_generic_descriptor - hid_hid usb_hid_descriptor_hid - usb_cdc usb_cdc_header_ethernet + generic usb_generic_descriptor + hid_hid usb_hid_descriptor_hid + cdc_ecm usb_cdc_header_ecm + cdc_ncm usb_cdc_header_ncm + uac_control uac_control_iface_extra_descriptors + uac_as uac_as_iface_extra_descriptors ] [varlen] usb_endpoint_extra_descriptor [ generic usb_generic_descriptor + uac_iso uac_iso_endpoint_descriptor ] [varlen] usb_generic_descriptor { @@ -644,7 +637,6 @@ define USBLP_REQ_HP_CHANNEL_CHANGE_REQUEST 0x00 define USBLP_FIRST_PROTOCOL 1 define USBLP_LAST_PROTOCOL 3 -# TODO: consider patching idVendor and idProduct in Go code. usb_device_descriptor_printer { inner usb_device_descriptor_t[0, 0, 0, 0x525, 0xa4a8, 64, array[usb_config_descriptor_printer, 1]] } [packed] @@ -715,7 +707,6 @@ usb_printer_get_id_response { # TODO: currently the only endpoint which is being successfully enabled is the notification endpoint #1. -# TODO: consider patching idVendor and idProduct in Go code. usb_device_descriptor_cdc_ecm { inner usb_device_descriptor_t[USB_CLASS_COMM, 0, 0, 0x525, 0xa4a1, 64, array[usb_config_descriptor_cdc_ecm, 1]] } [packed] @@ -727,7 +718,7 @@ usb_config_descriptor_cdc_ecm { # Per specification CDC ECM devices have two interfaces (control and data), # but here we're merging them into one for simplicity since Linux supports that. usb_interface_descriptor_cdc_ecm { - inner usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ethernet, usb_endpoint_descriptors_cdc_ecm] + inner usb_interface_descriptor_t[const[0, int8], int8, int8[2:3], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_ETHERNET, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ecm, usb_endpoint_descriptors_cdc_ecm] } [packed] usb_endpoint_descriptors_cdc_ecm { @@ -756,15 +747,15 @@ define USB_ENDPOINT_CDC_ECM_OUT_ADDRESS (3) # https://elixir.bootlin.com/linux/v5.2.7/source/drivers/usb/core/message.c#L2137 # https://elixir.bootlin.com/linux/v5.2.7/source/drivers/net/usb/cdc_ether.c#L155 -usb_cdc_header_ethernet { +usb_cdc_header_ecm { union usb_cdc_union_desc_t[0, 0] header usb_cdc_header_desc ether usb_cdc_ether_desc - other array[usb_cdc_header_ethernet_other, 0:6] + other array[usb_cdc_header_ecm_other, 0:6] } [packed] -usb_cdc_header_ethernet_other [ +usb_cdc_header_ecm_other [ call_mgmt usb_cdc_call_mgmt_descriptor acm usb_cdc_acm_descriptor country_functional usb_cdc_country_functional_desc @@ -960,7 +951,6 @@ vusb_responses_cdc_ecm { # TODO: currently the only endpoint which is being successfully enabled is the notification endpoint #1. -# TODO: consider patching idVendor and idProduct in Go code. usb_device_descriptor_cdc_ncm { inner usb_device_descriptor_t[USB_CLASS_COMM, 0, 0, 0x525, 0xa4a1, 64, array[usb_config_descriptor_cdc_ncm, 1]] } [packed] @@ -970,9 +960,9 @@ usb_config_descriptor_cdc_ncm { } [packed] usb_interface_descriptors_cdc_ncm { - control usb_interface_descriptor_t[const[0, int8], const[CDC_NCM_COMM_ALTSETTING_NCM, int8], const[1, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify] - data_nop usb_interface_descriptor_t[const[1, int8], const[0, int8], const[0, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, void] - data usb_interface_descriptor_t[const[1, int8], const[CDC_NCM_DATA_ALTSETTING_NCM, int8], const[2, int8], const[USB_CLASS_COMM, int8], const[USB_CDC_SUBCLASS_NCM, int8], const[USB_CDC_PROTO_NONE, int8], void, usb_endpoint_descriptors_cdc_ncm_data] + control usb_interface_descriptor_consts_t[0, CDC_NCM_COMM_ALTSETTING_NCM, 1, USB_CLASS_COMM, USB_CDC_SUBCLASS_NCM, USB_CDC_PROTO_NONE, usb_cdc_header_ncm, usb_endpoint_descriptor_cdc_ecm_notify] + data_nop usb_interface_descriptor_consts_t[1, 0, 0, USB_CLASS_COMM, USB_CDC_SUBCLASS_NCM, USB_CDC_PROTO_NONE, void, void] + data usb_interface_descriptor_consts_t[1, CDC_NCM_DATA_ALTSETTING_NCM, 2, USB_CLASS_COMM, USB_CDC_SUBCLASS_NCM, USB_CDC_PROTO_NONE, void, usb_endpoint_descriptors_cdc_ncm_data] } [packed] usb_endpoint_descriptors_cdc_ncm_data { @@ -1044,3 +1034,279 @@ usb_cdc_ncm_ntb_parameters { # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # + +# UAC1 device class specific descriptions. +# https://www.usb.org/sites/default/files/audio10.pdf +# https://elixir.bootlin.com/linux/latest/source/drivers/usb/gadget/legacy/audio.c +# https://elixir.bootlin.com/linux/latest/source/drivers/usb/gadget/function/f_uac1.c +# https://elixir.bootlin.com/linux/latest/source/drivers/usb/gadget/function/f_uac1_legacy.c +# https://elixir.bootlin.com/linux/latest/source/include/uapi/linux/usb/audio.h + +# TODO: find out which /dev/ file are created by connected UAC1 devices. + +usb_device_descriptor_uac1 { + inner usb_device_descriptor_t[0, 0, 0, 0x1d6b, 0x101, 64, array[usb_config_descriptor_uac1, 1]] +} [packed] + +usb_config_descriptor_uac1 { + inner usb_config_descriptor_t[const[1, int8], const[3, int8], flags[usb_config_attributes, int8], usb_interface_descriptors_uac1] +} [packed] + +# TODO: optional interrupt endpoint for control interface. +usb_interface_descriptors_uac1 { + control usb_interface_descriptor_consts_t[0, 0, 0, USB_CLASS_AUDIO, USB_SUBCLASS_AUDIOCONTROL, 0, uac_control_iface_extra_descriptors, void] + as_out_alt_0 usb_interface_descriptor_consts_t[1, 0, 0, USB_CLASS_AUDIO, USB_SUBCLASS_AUDIOSTREAMING, 0, void, void] + as_out_alt_1 usb_interface_descriptor_consts_t[1, 1, 1, USB_CLASS_AUDIO, USB_SUBCLASS_AUDIOSTREAMING, 0, uac_as_iface_extra_descriptors, uac_as_out_endpoint_descriptor] + as_in_alt_0 usb_interface_descriptor_consts_t[2, 0, 0, USB_CLASS_AUDIO, USB_SUBCLASS_AUDIOSTREAMING, 0, void, void] + as_in_alt_1 usb_interface_descriptor_consts_t[2, 1, 1, USB_CLASS_AUDIO, USB_SUBCLASS_AUDIOSTREAMING, 0, uac_as_iface_extra_descriptors, uac_as_in_endpoint_descriptor] +} [packed] + +# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # + +# UAC uses IDs to make it possible for terminals and units to refer to each other. +# We don't have a way to describe this, so just use a limited number of ids. +type uac_id int8[1:6] + +uac_control_iface_extra_descriptors { + header uac1_ac_header_descriptor_2 + others array[uac_control_iface_extra_descriptor, 0:6] +} [packed] + +uac_as_iface_extra_descriptors { + others array[uac_as_iface_extra_descriptor, 0:6] +} [packed] + +uac_control_iface_extra_descriptor [ + input_terminal uac_input_terminal_descriptor + output_terminal uac1_output_terminal_descriptor + mixer_unit uac_mixer_unit_descriptor + selector_unit uac_selector_unit_descriptor + feature_unit uac_feature_unit_descriptor + processing_unit uac_processing_unit_descriptor + extension_unit uac_extension_unit_descriptor +] [varlen] + +uac_as_iface_extra_descriptor [ + as_header uac1_as_header_descriptor + format_type_i_continuous uac_format_type_i_continuous_descriptor + format_type_i_discrete uac_format_type_i_discrete_descriptor + format_type_ii_discrete uac_format_type_ii_discrete_descriptor +] [varlen] + +define F_AUDIO_NUM_INTERFACES 2 +define UAC_DT_AC_HEADER_LENGTH UAC_DT_AC_HEADER_SIZE(F_AUDIO_NUM_INTERFACES) + +uac1_ac_header_descriptor_2 { + bLength const[UAC_DT_AC_HEADER_LENGTH, int8] + bDescriptorType const[USB_DT_CS_INTERFACE, int8] + bDescriptorSubType const[UAC_HEADER, int8] + + bcdADC int16 + wTotalLength int8 + bInCollection const[F_AUDIO_NUM_INTERFACES, int8] + +# These must match interfaces numbers. + baInterfaceNr0 const[1, int8] + baInterfaceNr1 const[2, int8] +} [packed] + +uac_input_terminal_descriptor { + bLength len[parent, int8] + bDescriptorType const[USB_DT_CS_INTERFACE, int8] + bDescriptorSubType const[UAC_INPUT_TERMINAL, int8] + + bTerminalID uac_id + wTerminalType flags[uac_input_terminal_types, int16] + bAssocTerminal uac_id + bNrChannels int8 + wChannelConfig int16 + iChannelNames int8 + iTerminal int8 +} [packed] + +uac_input_terminal_types = UAC_TERMINAL_UNDEFINED, UAC_TERMINAL_STREAMING, UAC_TERMINAL_VENDOR_SPEC, UAC_INPUT_TERMINAL_UNDEFINED, UAC_INPUT_TERMINAL_MICROPHONE, UAC_INPUT_TERMINAL_DESKTOP_MICROPHONE, UAC_INPUT_TERMINAL_PERSONAL_MICROPHONE, UAC_INPUT_TERMINAL_OMNI_DIR_MICROPHONE, UAC_INPUT_TERMINAL_MICROPHONE_ARRAY, UAC_INPUT_TERMINAL_PROC_MICROPHONE_ARRAY + +uac1_output_terminal_descriptor { + bLength len[parent, int8] + bDescriptorType const[USB_DT_CS_INTERFACE, int8] + bDescriptorSubType const[UAC_OUTPUT_TERMINAL, int8] + + bTerminalID uac_id + wTerminalType flags[uac_output_terminal_types, int16] + bAssocTerminal uac_id + bSourceID uac_id + iTerminal int8 +} [packed] + +uac_output_terminal_types = UAC_TERMINAL_UNDEFINED, UAC_TERMINAL_STREAMING, UAC_TERMINAL_VENDOR_SPEC, UAC_OUTPUT_TERMINAL_UNDEFINED, UAC_OUTPUT_TERMINAL_SPEAKER, UAC_OUTPUT_TERMINAL_HEADPHONES, UAC_OUTPUT_TERMINAL_HEAD_MOUNTED_DISPLAY_AUDIO, UAC_OUTPUT_TERMINAL_DESKTOP_SPEAKER, UAC_OUTPUT_TERMINAL_ROOM_SPEAKER, UAC_OUTPUT_TERMINAL_COMMUNICATION_SPEAKER, UAC_OUTPUT_TERMINAL_LOW_FREQ_EFFECTS_SPEAKER + +uac_mixer_unit_descriptor { + bLength len[parent, int8] + bDescriptorType const[USB_DT_CS_INTERFACE, int8] + bDescriptorSubType const[UAC_MIXER_UNIT, int8] + + bUnitID uac_id + bNrInPins int8 + baSourceID array[int8, 0:6] +} [packed] + +uac_selector_unit_descriptor { + bLength len[parent, int8] + bDescriptorType const[USB_DT_CS_INTERFACE, int8] + bDescriptorSubType const[UAC_SELECTOR_UNIT, int8] + + bUnitID uac_id + bNrInPins int8 + baSourceID array[int8, 0:6] +} [packed] + +uac_feature_unit_descriptor { + bLength len[parent, int8] + bDescriptorType const[USB_DT_CS_INTERFACE, int8] + bDescriptorSubType const[UAC_FEATURE_UNIT, int8] + + bUnitID uac_id + bSourceID uac_id + bControlSize len[bmaControls, int8] + bmaControls array[flags[uac_feature_unit_controls, int16], 1:6] + iFeature int8 +} [packed] + +uac_feature_unit_controls = UAC_FU_MUTE, UAC_FU_VOLUME, UAC_FU_BASS, UAC_FU_MID, UAC_FU_TREBLE, UAC_FU_GRAPHIC_EQUALIZER, UAC_FU_AUTOMATIC_GAIN, UAC_FU_DELAY, UAC_FU_BASS_BOOST, UAC_FU_LOUDNESS + +uac_processing_unit_descriptor { + bLength len[parent, int8] + bDescriptorType const[USB_DT_CS_INTERFACE, int8] + bDescriptorSubType const[UAC1_PROCESSING_UNIT, int8] + + bUnitID uac_id + wProcessType flags[uac_processing_unit_types, int16] + bNrInPins int8 + baSourceID array[int8, 0:6] +} [packed] + +uac_processing_unit_types = UAC_PROCESS_UNDEFINED, UAC_PROCESS_UP_DOWNMIX, UAC_PROCESS_DOLBY_PROLOGIC, UAC_PROCESS_STEREO_EXTENDER, UAC_PROCESS_REVERB, UAC_PROCESS_CHORUS, UAC_PROCESS_DYN_RANGE_COMP + +uac_extension_unit_descriptor { + bLength len[parent, int8] + bDescriptorType const[USB_DT_CS_INTERFACE, int8] + bDescriptorSubType const[UAC1_EXTENSION_UNIT, int8] + + bUnitID uac_id + wProcessType int16 + bNrInPins int8 + baSourceID array[int8, 0:6] +} [packed] + +uac1_as_header_descriptor { + bLength len[parent, int8] + bDescriptorType const[USB_DT_CS_INTERFACE, int8] + bDescriptorSubType const[UAC_AS_GENERAL, int8] + + bTerminalLink int8 + bDelay int8 + wFormatTag flags[uac_format_types, int16] +} [packed] + +uac_format_types = UAC_FORMAT_TYPE_I_UNDEFINED, UAC_FORMAT_TYPE_I_PCM, UAC_FORMAT_TYPE_I_PCM8, UAC_FORMAT_TYPE_I_IEEE_FLOAT, UAC_FORMAT_TYPE_I_ALAW, UAC_FORMAT_TYPE_I_MULAW, UAC_FORMAT_TYPE_II_MPEG, UAC_FORMAT_TYPE_II_AC3 + +uac_format_type_i_continuous_descriptor { + bLength len[parent, int8] + bDescriptorType const[USB_DT_CS_INTERFACE, int8] + bDescriptorSubType const[UAC_FORMAT_TYPE, int8] + + bFormatType const[UAC_FORMAT_TYPE_I, int8] + bNrChannels int8 + bSubframeSize int8[1:4] + bBitResolution int8 + bSamFreqType int8 + tLowerSamFreq array[int8, 0:3] + tUpperSamFreq array[int8, 0:3] +} [packed] + +uac_format_type_i_discrete_descriptor { + bLength len[parent, int8] + bDescriptorType const[USB_DT_CS_INTERFACE, int8] + bDescriptorSubType const[UAC_FORMAT_TYPE, int8] + + bFormatType const[UAC_FORMAT_TYPE_I, int8] + bNrChannels int8 + bSubframeSize int8[1:4] + bBitResolution int8 + bSamFreqType int8 + tSamFreq array[int8, 0:9] +} [packed] + +uac_format_type_ii_discrete_descriptor { + bLength len[parent, int8] + bDescriptorType const[USB_DT_CS_INTERFACE, int8] + bDescriptorSubType const[UAC_FORMAT_TYPE, int8] + + bFormatType const[UAC_FORMAT_TYPE_II, int8] + wMaxBitRate int16 + wSamplesPerFrame int16 + bSamFreqType int8 + tSamFreq array[int8, 0:9] +} [packed] + +# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # + +uac_as_out_endpoint_descriptor { + inner usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_OUT_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor] +} [packed] + +uac_as_in_endpoint_descriptor { + inner usb_endpoint_descriptor_t[const[USB_ENDPOINT_UAC1_AS_IN_ADDRESS, int8], const[USB_ENDPOINT_UAC1_AS_ATTRIBUTES, int8], uac_iso_endpoint_descriptor] +} [packed] + +define USB_ENDPOINT_UAC1_AS_OUT_ADDRESS (1 | USB_DIR_OUT) +define USB_ENDPOINT_UAC1_AS_IN_ADDRESS (2 | USB_DIR_IN) +define USB_ENDPOINT_UAC1_AS_ATTRIBUTES (USB_ENDPOINT_SYNC_ADAPTIVE | USB_ENDPOINT_XFER_ISOC) + +uac_iso_endpoint_descriptor { + bLength len[parent, int8] + bDescriptorType const[USB_DT_CS_ENDPOINT, int8] + bDescriptorSubType const[UAC_EP_GENERAL, int8] + + bmAttributes flags[uac_iso_ep_attributes, int8] + bLockDelayUnits int8 + wLockDelay int16 +} [packed] + +uac_iso_ep_attributes = UAC_EP_CS_ATTR_SAMPLE_RATE, UAC_EP_CS_ATTR_PITCH_CONTROL, UAC_EP_CS_ATTR_FILL_MAX + +# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # + +vusb_descriptors_uac1 { + len len[parent, int32] + generic ptr[in, vusb_descriptor_generic] + + USB_DT_STRING ptr[in, vusb_descriptor_t[USB_TYPE_STANDARD, USB_DT_STRING, usb_string_descriptor]] +} [packed] + +vusb_responses_uac1 { + len len[parent, int32] + generic ptr[in, vusb_response_generic] + + USB_REQ_GET_INTERFACE ptr[in, vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_INTERFACE, int8]] + USB_REQ_GET_CONFIGURATION ptr[in, vusb_response_t[USB_TYPE_STANDARD, USB_REQ_GET_CONFIGURATION, int8]] + + audio_UAC_GET_CUR ptr[in, vusb_response_t[USB_TYPE_CLASS, UAC_GET_CUR, array[int8, 1:3]]] + audio_UAC_GET_MIN ptr[in, vusb_response_t[USB_TYPE_CLASS, UAC_GET_MIN, array[int8, 1:3]]] + audio_UAC_GET_MAX ptr[in, vusb_response_t[USB_TYPE_CLASS, UAC_GET_MAX, array[int8, 1:3]]] + audio_UAC_GET_RES ptr[in, vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]] + audio_UAC_GET_MEM ptr[in, vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]] +} [packed] + +# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # +# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # +# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # + +# TODO: MIDI, UAC2, UAC3 +# https://www.usb.org/sites/default/files/midi10.pdf +# https://elixir.bootlin.com/linux/latest/source/drivers/usb/gadget/function/f_midi.c +# https://elixir.bootlin.com/linux/latest/source/include/linux/usb/audio-v2.h + +# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # +# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # +# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # diff --git a/sys/linux/vusb_386.const b/sys/linux/vusb_386.const index 0928f05d0..4d05b957b 100644 --- a/sys/linux/vusb_386.const +++ b/sys/linux/vusb_386.const @@ -13,6 +13,7 @@ AX_CMD_SW_PHY_STATUS = 33 CDC_NCM_COMM_ALTSETTING_NCM = 0 CDC_NCM_DATA_ALTSETTING_NCM = 1 CONTAINER_ID_TYPE = 4 +F_AUDIO_NUM_INTERFACES = 2 HID_DT_HID = 33 HID_DT_PHYSICAL = 35 HID_DT_REPORT = 34 @@ -64,11 +65,71 @@ HUB_CHAR_PORTIND = 128 HUB_CHAR_TTTT = 96 HUB_STATUS_LOCAL_POWER = 1 HUB_STATUS_OVERCURRENT = 2 +UAC1_EXTENSION_UNIT = 8 +UAC1_PROCESSING_UNIT = 7 +UAC_AS_GENERAL = 1 +UAC_DT_AC_HEADER_LENGTH = 10 +UAC_EP_CS_ATTR_FILL_MAX = 128 +UAC_EP_CS_ATTR_PITCH_CONTROL = 2 +UAC_EP_CS_ATTR_SAMPLE_RATE = 1 +UAC_EP_GENERAL = 1 +UAC_FEATURE_UNIT = 6 +UAC_FORMAT_TYPE = 2 +UAC_FORMAT_TYPE_I = 1 +UAC_FORMAT_TYPE_II = 2 +UAC_FORMAT_TYPE_II_AC3 = 4098 +UAC_FORMAT_TYPE_II_MPEG = 4097 +UAC_FORMAT_TYPE_I_ALAW = 4 +UAC_FORMAT_TYPE_I_IEEE_FLOAT = 3 +UAC_FORMAT_TYPE_I_MULAW = 5 +UAC_FORMAT_TYPE_I_PCM = 1 +UAC_FORMAT_TYPE_I_PCM8 = 2 +UAC_FORMAT_TYPE_I_UNDEFINED = 0 +UAC_FU_AUTOMATIC_GAIN = 7 +UAC_FU_BASS = 3 +UAC_FU_BASS_BOOST = 9 +UAC_FU_DELAY = 8 +UAC_FU_GRAPHIC_EQUALIZER = 6 +UAC_FU_LOUDNESS = 10 +UAC_FU_MID = 4 +UAC_FU_MUTE = 1 +UAC_FU_TREBLE = 5 +UAC_FU_VOLUME = 2 UAC_GET_CUR = 129 UAC_GET_MAX = 131 UAC_GET_MEM = 133 UAC_GET_MIN = 130 UAC_GET_RES = 132 +UAC_HEADER = 1 +UAC_INPUT_TERMINAL = 2 +UAC_INPUT_TERMINAL_DESKTOP_MICROPHONE = 514 +UAC_INPUT_TERMINAL_MICROPHONE = 513 +UAC_INPUT_TERMINAL_MICROPHONE_ARRAY = 517 +UAC_INPUT_TERMINAL_OMNI_DIR_MICROPHONE = 516 +UAC_INPUT_TERMINAL_PERSONAL_MICROPHONE = 515 +UAC_INPUT_TERMINAL_PROC_MICROPHONE_ARRAY = 518 +UAC_INPUT_TERMINAL_UNDEFINED = 512 +UAC_MIXER_UNIT = 4 +UAC_OUTPUT_TERMINAL = 3 +UAC_OUTPUT_TERMINAL_COMMUNICATION_SPEAKER = 774 +UAC_OUTPUT_TERMINAL_DESKTOP_SPEAKER = 772 +UAC_OUTPUT_TERMINAL_HEADPHONES = 770 +UAC_OUTPUT_TERMINAL_HEAD_MOUNTED_DISPLAY_AUDIO = 771 +UAC_OUTPUT_TERMINAL_LOW_FREQ_EFFECTS_SPEAKER = 775 +UAC_OUTPUT_TERMINAL_ROOM_SPEAKER = 773 +UAC_OUTPUT_TERMINAL_SPEAKER = 769 +UAC_OUTPUT_TERMINAL_UNDEFINED = 768 +UAC_PROCESS_CHORUS = 5 +UAC_PROCESS_DOLBY_PROLOGIC = 2 +UAC_PROCESS_DYN_RANGE_COMP = 6 +UAC_PROCESS_REVERB = 4 +UAC_PROCESS_STEREO_EXTENDER = 3 +UAC_PROCESS_UNDEFINED = 0 +UAC_PROCESS_UP_DOWNMIX = 1 +UAC_SELECTOR_UNIT = 5 +UAC_TERMINAL_STREAMING = 257 +UAC_TERMINAL_UNDEFINED = 256 +UAC_TERMINAL_VENDOR_SPEC = 511 USBLP_FIRST_PROTOCOL = 1 USBLP_LAST_PROTOCOL = 3 USBLP_REQ_GET_ID = 0 @@ -109,6 +170,7 @@ USB_CDC_PROTO_NONE = 0 USB_CDC_SUBCLASS_ETHERNET = 6 USB_CDC_SUBCLASS_NCM = 13 USB_CDC_UNION_TYPE = 6 +USB_CLASS_AUDIO = 1 USB_CLASS_COMM = 2 USB_CLASS_HID = 3 USB_CLASS_PRINTER = 7 @@ -122,6 +184,7 @@ USB_DT_BOS = 15 USB_DT_BOS_SIZE = 5 USB_DT_CONFIG = 2 USB_DT_CONFIG_SIZE = 9 +USB_DT_CS_ENDPOINT = 37 USB_DT_CS_INTERFACE = 36 USB_DT_CS_RADIO_CONTROL = 35 USB_DT_DEBUG = 10 @@ -166,6 +229,9 @@ USB_ENDPOINT_SYNC_ADAPTIVE = 8 USB_ENDPOINT_SYNC_ASYNC = 4 USB_ENDPOINT_SYNC_NONE = 0 USB_ENDPOINT_SYNC_SYNC = 12 +USB_ENDPOINT_UAC1_AS_ATTRIBUTES = 9 +USB_ENDPOINT_UAC1_AS_IN_ADDRESS = 130 +USB_ENDPOINT_UAC1_AS_OUT_ADDRESS = 1 USB_ENDPOINT_USAGE_DATA = 0 USB_ENDPOINT_USAGE_FEEDBACK = 16 USB_ENDPOINT_XFER_BULK = 2 @@ -271,6 +337,8 @@ USB_SS_PORT_LS_U2 = 64 USB_SS_PORT_LS_U3 = 96 USB_SS_PORT_STAT_POWER = 512 USB_SS_PORT_STAT_SPEED = 7168 +USB_SUBCLASS_AUDIOCONTROL = 1 +USB_SUBCLASS_AUDIOSTREAMING = 2 USB_TYPE_CLASS = 32 USB_TYPE_STANDARD = 0 USB_TYPE_VENDOR = 64 diff --git a/sys/linux/vusb_amd64.const b/sys/linux/vusb_amd64.const index 0928f05d0..4d05b957b 100644 --- a/sys/linux/vusb_amd64.const +++ b/sys/linux/vusb_amd64.const @@ -13,6 +13,7 @@ AX_CMD_SW_PHY_STATUS = 33 CDC_NCM_COMM_ALTSETTING_NCM = 0 CDC_NCM_DATA_ALTSETTING_NCM = 1 CONTAINER_ID_TYPE = 4 +F_AUDIO_NUM_INTERFACES = 2 HID_DT_HID = 33 HID_DT_PHYSICAL = 35 HID_DT_REPORT = 34 @@ -64,11 +65,71 @@ HUB_CHAR_PORTIND = 128 HUB_CHAR_TTTT = 96 HUB_STATUS_LOCAL_POWER = 1 HUB_STATUS_OVERCURRENT = 2 +UAC1_EXTENSION_UNIT = 8 +UAC1_PROCESSING_UNIT = 7 +UAC_AS_GENERAL = 1 +UAC_DT_AC_HEADER_LENGTH = 10 +UAC_EP_CS_ATTR_FILL_MAX = 128 +UAC_EP_CS_ATTR_PITCH_CONTROL = 2 +UAC_EP_CS_ATTR_SAMPLE_RATE = 1 +UAC_EP_GENERAL = 1 +UAC_FEATURE_UNIT = 6 +UAC_FORMAT_TYPE = 2 +UAC_FORMAT_TYPE_I = 1 +UAC_FORMAT_TYPE_II = 2 +UAC_FORMAT_TYPE_II_AC3 = 4098 +UAC_FORMAT_TYPE_II_MPEG = 4097 +UAC_FORMAT_TYPE_I_ALAW = 4 +UAC_FORMAT_TYPE_I_IEEE_FLOAT = 3 +UAC_FORMAT_TYPE_I_MULAW = 5 +UAC_FORMAT_TYPE_I_PCM = 1 +UAC_FORMAT_TYPE_I_PCM8 = 2 +UAC_FORMAT_TYPE_I_UNDEFINED = 0 +UAC_FU_AUTOMATIC_GAIN = 7 +UAC_FU_BASS = 3 +UAC_FU_BASS_BOOST = 9 +UAC_FU_DELAY = 8 +UAC_FU_GRAPHIC_EQUALIZER = 6 +UAC_FU_LOUDNESS = 10 +UAC_FU_MID = 4 +UAC_FU_MUTE = 1 +UAC_FU_TREBLE = 5 +UAC_FU_VOLUME = 2 UAC_GET_CUR = 129 UAC_GET_MAX = 131 UAC_GET_MEM = 133 UAC_GET_MIN = 130 UAC_GET_RES = 132 +UAC_HEADER = 1 +UAC_INPUT_TERMINAL = 2 +UAC_INPUT_TERMINAL_DESKTOP_MICROPHONE = 514 +UAC_INPUT_TERMINAL_MICROPHONE = 513 +UAC_INPUT_TERMINAL_MICROPHONE_ARRAY = 517 +UAC_INPUT_TERMINAL_OMNI_DIR_MICROPHONE = 516 +UAC_INPUT_TERMINAL_PERSONAL_MICROPHONE = 515 +UAC_INPUT_TERMINAL_PROC_MICROPHONE_ARRAY = 518 +UAC_INPUT_TERMINAL_UNDEFINED = 512 +UAC_MIXER_UNIT = 4 +UAC_OUTPUT_TERMINAL = 3 +UAC_OUTPUT_TERMINAL_COMMUNICATION_SPEAKER = 774 +UAC_OUTPUT_TERMINAL_DESKTOP_SPEAKER = 772 +UAC_OUTPUT_TERMINAL_HEADPHONES = 770 +UAC_OUTPUT_TERMINAL_HEAD_MOUNTED_DISPLAY_AUDIO = 771 +UAC_OUTPUT_TERMINAL_LOW_FREQ_EFFECTS_SPEAKER = 775 +UAC_OUTPUT_TERMINAL_ROOM_SPEAKER = 773 +UAC_OUTPUT_TERMINAL_SPEAKER = 769 +UAC_OUTPUT_TERMINAL_UNDEFINED = 768 +UAC_PROCESS_CHORUS = 5 +UAC_PROCESS_DOLBY_PROLOGIC = 2 +UAC_PROCESS_DYN_RANGE_COMP = 6 +UAC_PROCESS_REVERB = 4 +UAC_PROCESS_STEREO_EXTENDER = 3 +UAC_PROCESS_UNDEFINED = 0 +UAC_PROCESS_UP_DOWNMIX = 1 +UAC_SELECTOR_UNIT = 5 +UAC_TERMINAL_STREAMING = 257 +UAC_TERMINAL_UNDEFINED = 256 +UAC_TERMINAL_VENDOR_SPEC = 511 USBLP_FIRST_PROTOCOL = 1 USBLP_LAST_PROTOCOL = 3 USBLP_REQ_GET_ID = 0 @@ -109,6 +170,7 @@ USB_CDC_PROTO_NONE = 0 USB_CDC_SUBCLASS_ETHERNET = 6 USB_CDC_SUBCLASS_NCM = 13 USB_CDC_UNION_TYPE = 6 +USB_CLASS_AUDIO = 1 USB_CLASS_COMM = 2 USB_CLASS_HID = 3 USB_CLASS_PRINTER = 7 @@ -122,6 +184,7 @@ USB_DT_BOS = 15 USB_DT_BOS_SIZE = 5 USB_DT_CONFIG = 2 USB_DT_CONFIG_SIZE = 9 +USB_DT_CS_ENDPOINT = 37 USB_DT_CS_INTERFACE = 36 USB_DT_CS_RADIO_CONTROL = 35 USB_DT_DEBUG = 10 @@ -166,6 +229,9 @@ USB_ENDPOINT_SYNC_ADAPTIVE = 8 USB_ENDPOINT_SYNC_ASYNC = 4 USB_ENDPOINT_SYNC_NONE = 0 USB_ENDPOINT_SYNC_SYNC = 12 +USB_ENDPOINT_UAC1_AS_ATTRIBUTES = 9 +USB_ENDPOINT_UAC1_AS_IN_ADDRESS = 130 +USB_ENDPOINT_UAC1_AS_OUT_ADDRESS = 1 USB_ENDPOINT_USAGE_DATA = 0 USB_ENDPOINT_USAGE_FEEDBACK = 16 USB_ENDPOINT_XFER_BULK = 2 @@ -271,6 +337,8 @@ USB_SS_PORT_LS_U2 = 64 USB_SS_PORT_LS_U3 = 96 USB_SS_PORT_STAT_POWER = 512 USB_SS_PORT_STAT_SPEED = 7168 +USB_SUBCLASS_AUDIOCONTROL = 1 +USB_SUBCLASS_AUDIOSTREAMING = 2 USB_TYPE_CLASS = 32 USB_TYPE_STANDARD = 0 USB_TYPE_VENDOR = 64 diff --git a/sys/linux/vusb_arm.const b/sys/linux/vusb_arm.const index 0928f05d0..4d05b957b 100644 --- a/sys/linux/vusb_arm.const +++ b/sys/linux/vusb_arm.const @@ -13,6 +13,7 @@ AX_CMD_SW_PHY_STATUS = 33 CDC_NCM_COMM_ALTSETTING_NCM = 0 CDC_NCM_DATA_ALTSETTING_NCM = 1 CONTAINER_ID_TYPE = 4 +F_AUDIO_NUM_INTERFACES = 2 HID_DT_HID = 33 HID_DT_PHYSICAL = 35 HID_DT_REPORT = 34 @@ -64,11 +65,71 @@ HUB_CHAR_PORTIND = 128 HUB_CHAR_TTTT = 96 HUB_STATUS_LOCAL_POWER = 1 HUB_STATUS_OVERCURRENT = 2 +UAC1_EXTENSION_UNIT = 8 +UAC1_PROCESSING_UNIT = 7 +UAC_AS_GENERAL = 1 +UAC_DT_AC_HEADER_LENGTH = 10 +UAC_EP_CS_ATTR_FILL_MAX = 128 +UAC_EP_CS_ATTR_PITCH_CONTROL = 2 +UAC_EP_CS_ATTR_SAMPLE_RATE = 1 +UAC_EP_GENERAL = 1 +UAC_FEATURE_UNIT = 6 +UAC_FORMAT_TYPE = 2 +UAC_FORMAT_TYPE_I = 1 +UAC_FORMAT_TYPE_II = 2 +UAC_FORMAT_TYPE_II_AC3 = 4098 +UAC_FORMAT_TYPE_II_MPEG = 4097 +UAC_FORMAT_TYPE_I_ALAW = 4 +UAC_FORMAT_TYPE_I_IEEE_FLOAT = 3 +UAC_FORMAT_TYPE_I_MULAW = 5 +UAC_FORMAT_TYPE_I_PCM = 1 +UAC_FORMAT_TYPE_I_PCM8 = 2 +UAC_FORMAT_TYPE_I_UNDEFINED = 0 +UAC_FU_AUTOMATIC_GAIN = 7 +UAC_FU_BASS = 3 +UAC_FU_BASS_BOOST = 9 +UAC_FU_DELAY = 8 +UAC_FU_GRAPHIC_EQUALIZER = 6 +UAC_FU_LOUDNESS = 10 +UAC_FU_MID = 4 +UAC_FU_MUTE = 1 +UAC_FU_TREBLE = 5 +UAC_FU_VOLUME = 2 UAC_GET_CUR = 129 UAC_GET_MAX = 131 UAC_GET_MEM = 133 UAC_GET_MIN = 130 UAC_GET_RES = 132 +UAC_HEADER = 1 +UAC_INPUT_TERMINAL = 2 +UAC_INPUT_TERMINAL_DESKTOP_MICROPHONE = 514 +UAC_INPUT_TERMINAL_MICROPHONE = 513 +UAC_INPUT_TERMINAL_MICROPHONE_ARRAY = 517 +UAC_INPUT_TERMINAL_OMNI_DIR_MICROPHONE = 516 +UAC_INPUT_TERMINAL_PERSONAL_MICROPHONE = 515 +UAC_INPUT_TERMINAL_PROC_MICROPHONE_ARRAY = 518 +UAC_INPUT_TERMINAL_UNDEFINED = 512 +UAC_MIXER_UNIT = 4 +UAC_OUTPUT_TERMINAL = 3 +UAC_OUTPUT_TERMINAL_COMMUNICATION_SPEAKER = 774 +UAC_OUTPUT_TERMINAL_DESKTOP_SPEAKER = 772 +UAC_OUTPUT_TERMINAL_HEADPHONES = 770 +UAC_OUTPUT_TERMINAL_HEAD_MOUNTED_DISPLAY_AUDIO = 771 +UAC_OUTPUT_TERMINAL_LOW_FREQ_EFFECTS_SPEAKER = 775 +UAC_OUTPUT_TERMINAL_ROOM_SPEAKER = 773 +UAC_OUTPUT_TERMINAL_SPEAKER = 769 +UAC_OUTPUT_TERMINAL_UNDEFINED = 768 +UAC_PROCESS_CHORUS = 5 +UAC_PROCESS_DOLBY_PROLOGIC = 2 +UAC_PROCESS_DYN_RANGE_COMP = 6 +UAC_PROCESS_REVERB = 4 +UAC_PROCESS_STEREO_EXTENDER = 3 +UAC_PROCESS_UNDEFINED = 0 +UAC_PROCESS_UP_DOWNMIX = 1 +UAC_SELECTOR_UNIT = 5 +UAC_TERMINAL_STREAMING = 257 +UAC_TERMINAL_UNDEFINED = 256 +UAC_TERMINAL_VENDOR_SPEC = 511 USBLP_FIRST_PROTOCOL = 1 USBLP_LAST_PROTOCOL = 3 USBLP_REQ_GET_ID = 0 @@ -109,6 +170,7 @@ USB_CDC_PROTO_NONE = 0 USB_CDC_SUBCLASS_ETHERNET = 6 USB_CDC_SUBCLASS_NCM = 13 USB_CDC_UNION_TYPE = 6 +USB_CLASS_AUDIO = 1 USB_CLASS_COMM = 2 USB_CLASS_HID = 3 USB_CLASS_PRINTER = 7 @@ -122,6 +184,7 @@ USB_DT_BOS = 15 USB_DT_BOS_SIZE = 5 USB_DT_CONFIG = 2 USB_DT_CONFIG_SIZE = 9 +USB_DT_CS_ENDPOINT = 37 USB_DT_CS_INTERFACE = 36 USB_DT_CS_RADIO_CONTROL = 35 USB_DT_DEBUG = 10 @@ -166,6 +229,9 @@ USB_ENDPOINT_SYNC_ADAPTIVE = 8 USB_ENDPOINT_SYNC_ASYNC = 4 USB_ENDPOINT_SYNC_NONE = 0 USB_ENDPOINT_SYNC_SYNC = 12 +USB_ENDPOINT_UAC1_AS_ATTRIBUTES = 9 +USB_ENDPOINT_UAC1_AS_IN_ADDRESS = 130 +USB_ENDPOINT_UAC1_AS_OUT_ADDRESS = 1 USB_ENDPOINT_USAGE_DATA = 0 USB_ENDPOINT_USAGE_FEEDBACK = 16 USB_ENDPOINT_XFER_BULK = 2 @@ -271,6 +337,8 @@ USB_SS_PORT_LS_U2 = 64 USB_SS_PORT_LS_U3 = 96 USB_SS_PORT_STAT_POWER = 512 USB_SS_PORT_STAT_SPEED = 7168 +USB_SUBCLASS_AUDIOCONTROL = 1 +USB_SUBCLASS_AUDIOSTREAMING = 2 USB_TYPE_CLASS = 32 USB_TYPE_STANDARD = 0 USB_TYPE_VENDOR = 64 diff --git a/sys/linux/vusb_arm64.const b/sys/linux/vusb_arm64.const index 0928f05d0..4d05b957b 100644 --- a/sys/linux/vusb_arm64.const +++ b/sys/linux/vusb_arm64.const @@ -13,6 +13,7 @@ AX_CMD_SW_PHY_STATUS = 33 CDC_NCM_COMM_ALTSETTING_NCM = 0 CDC_NCM_DATA_ALTSETTING_NCM = 1 CONTAINER_ID_TYPE = 4 +F_AUDIO_NUM_INTERFACES = 2 HID_DT_HID = 33 HID_DT_PHYSICAL = 35 HID_DT_REPORT = 34 @@ -64,11 +65,71 @@ HUB_CHAR_PORTIND = 128 HUB_CHAR_TTTT = 96 HUB_STATUS_LOCAL_POWER = 1 HUB_STATUS_OVERCURRENT = 2 +UAC1_EXTENSION_UNIT = 8 +UAC1_PROCESSING_UNIT = 7 +UAC_AS_GENERAL = 1 +UAC_DT_AC_HEADER_LENGTH = 10 +UAC_EP_CS_ATTR_FILL_MAX = 128 +UAC_EP_CS_ATTR_PITCH_CONTROL = 2 +UAC_EP_CS_ATTR_SAMPLE_RATE = 1 +UAC_EP_GENERAL = 1 +UAC_FEATURE_UNIT = 6 +UAC_FORMAT_TYPE = 2 +UAC_FORMAT_TYPE_I = 1 +UAC_FORMAT_TYPE_II = 2 +UAC_FORMAT_TYPE_II_AC3 = 4098 +UAC_FORMAT_TYPE_II_MPEG = 4097 +UAC_FORMAT_TYPE_I_ALAW = 4 +UAC_FORMAT_TYPE_I_IEEE_FLOAT = 3 +UAC_FORMAT_TYPE_I_MULAW = 5 +UAC_FORMAT_TYPE_I_PCM = 1 +UAC_FORMAT_TYPE_I_PCM8 = 2 +UAC_FORMAT_TYPE_I_UNDEFINED = 0 +UAC_FU_AUTOMATIC_GAIN = 7 +UAC_FU_BASS = 3 +UAC_FU_BASS_BOOST = 9 +UAC_FU_DELAY = 8 +UAC_FU_GRAPHIC_EQUALIZER = 6 +UAC_FU_LOUDNESS = 10 +UAC_FU_MID = 4 +UAC_FU_MUTE = 1 +UAC_FU_TREBLE = 5 +UAC_FU_VOLUME = 2 UAC_GET_CUR = 129 UAC_GET_MAX = 131 UAC_GET_MEM = 133 UAC_GET_MIN = 130 UAC_GET_RES = 132 +UAC_HEADER = 1 +UAC_INPUT_TERMINAL = 2 +UAC_INPUT_TERMINAL_DESKTOP_MICROPHONE = 514 +UAC_INPUT_TERMINAL_MICROPHONE = 513 +UAC_INPUT_TERMINAL_MICROPHONE_ARRAY = 517 +UAC_INPUT_TERMINAL_OMNI_DIR_MICROPHONE = 516 +UAC_INPUT_TERMINAL_PERSONAL_MICROPHONE = 515 +UAC_INPUT_TERMINAL_PROC_MICROPHONE_ARRAY = 518 +UAC_INPUT_TERMINAL_UNDEFINED = 512 +UAC_MIXER_UNIT = 4 +UAC_OUTPUT_TERMINAL = 3 +UAC_OUTPUT_TERMINAL_COMMUNICATION_SPEAKER = 774 +UAC_OUTPUT_TERMINAL_DESKTOP_SPEAKER = 772 +UAC_OUTPUT_TERMINAL_HEADPHONES = 770 +UAC_OUTPUT_TERMINAL_HEAD_MOUNTED_DISPLAY_AUDIO = 771 +UAC_OUTPUT_TERMINAL_LOW_FREQ_EFFECTS_SPEAKER = 775 +UAC_OUTPUT_TERMINAL_ROOM_SPEAKER = 773 +UAC_OUTPUT_TERMINAL_SPEAKER = 769 +UAC_OUTPUT_TERMINAL_UNDEFINED = 768 +UAC_PROCESS_CHORUS = 5 +UAC_PROCESS_DOLBY_PROLOGIC = 2 +UAC_PROCESS_DYN_RANGE_COMP = 6 +UAC_PROCESS_REVERB = 4 +UAC_PROCESS_STEREO_EXTENDER = 3 +UAC_PROCESS_UNDEFINED = 0 +UAC_PROCESS_UP_DOWNMIX = 1 +UAC_SELECTOR_UNIT = 5 +UAC_TERMINAL_STREAMING = 257 +UAC_TERMINAL_UNDEFINED = 256 +UAC_TERMINAL_VENDOR_SPEC = 511 USBLP_FIRST_PROTOCOL = 1 USBLP_LAST_PROTOCOL = 3 USBLP_REQ_GET_ID = 0 @@ -109,6 +170,7 @@ USB_CDC_PROTO_NONE = 0 USB_CDC_SUBCLASS_ETHERNET = 6 USB_CDC_SUBCLASS_NCM = 13 USB_CDC_UNION_TYPE = 6 +USB_CLASS_AUDIO = 1 USB_CLASS_COMM = 2 USB_CLASS_HID = 3 USB_CLASS_PRINTER = 7 @@ -122,6 +184,7 @@ USB_DT_BOS = 15 USB_DT_BOS_SIZE = 5 USB_DT_CONFIG = 2 USB_DT_CONFIG_SIZE = 9 +USB_DT_CS_ENDPOINT = 37 USB_DT_CS_INTERFACE = 36 USB_DT_CS_RADIO_CONTROL = 35 USB_DT_DEBUG = 10 @@ -166,6 +229,9 @@ USB_ENDPOINT_SYNC_ADAPTIVE = 8 USB_ENDPOINT_SYNC_ASYNC = 4 USB_ENDPOINT_SYNC_NONE = 0 USB_ENDPOINT_SYNC_SYNC = 12 +USB_ENDPOINT_UAC1_AS_ATTRIBUTES = 9 +USB_ENDPOINT_UAC1_AS_IN_ADDRESS = 130 +USB_ENDPOINT_UAC1_AS_OUT_ADDRESS = 1 USB_ENDPOINT_USAGE_DATA = 0 USB_ENDPOINT_USAGE_FEEDBACK = 16 USB_ENDPOINT_XFER_BULK = 2 @@ -271,6 +337,8 @@ USB_SS_PORT_LS_U2 = 64 USB_SS_PORT_LS_U3 = 96 USB_SS_PORT_STAT_POWER = 512 USB_SS_PORT_STAT_SPEED = 7168 +USB_SUBCLASS_AUDIOCONTROL = 1 +USB_SUBCLASS_AUDIOSTREAMING = 2 USB_TYPE_CLASS = 32 USB_TYPE_STANDARD = 0 USB_TYPE_VENDOR = 64 diff --git a/sys/linux/vusb_ppc64le.const b/sys/linux/vusb_ppc64le.const index 0928f05d0..4d05b957b 100644 --- a/sys/linux/vusb_ppc64le.const +++ b/sys/linux/vusb_ppc64le.const @@ -13,6 +13,7 @@ AX_CMD_SW_PHY_STATUS = 33 CDC_NCM_COMM_ALTSETTING_NCM = 0 CDC_NCM_DATA_ALTSETTING_NCM = 1 CONTAINER_ID_TYPE = 4 +F_AUDIO_NUM_INTERFACES = 2 HID_DT_HID = 33 HID_DT_PHYSICAL = 35 HID_DT_REPORT = 34 @@ -64,11 +65,71 @@ HUB_CHAR_PORTIND = 128 HUB_CHAR_TTTT = 96 HUB_STATUS_LOCAL_POWER = 1 HUB_STATUS_OVERCURRENT = 2 +UAC1_EXTENSION_UNIT = 8 +UAC1_PROCESSING_UNIT = 7 +UAC_AS_GENERAL = 1 +UAC_DT_AC_HEADER_LENGTH = 10 +UAC_EP_CS_ATTR_FILL_MAX = 128 +UAC_EP_CS_ATTR_PITCH_CONTROL = 2 +UAC_EP_CS_ATTR_SAMPLE_RATE = 1 +UAC_EP_GENERAL = 1 +UAC_FEATURE_UNIT = 6 +UAC_FORMAT_TYPE = 2 +UAC_FORMAT_TYPE_I = 1 +UAC_FORMAT_TYPE_II = 2 +UAC_FORMAT_TYPE_II_AC3 = 4098 +UAC_FORMAT_TYPE_II_MPEG = 4097 +UAC_FORMAT_TYPE_I_ALAW = 4 +UAC_FORMAT_TYPE_I_IEEE_FLOAT = 3 +UAC_FORMAT_TYPE_I_MULAW = 5 +UAC_FORMAT_TYPE_I_PCM = 1 +UAC_FORMAT_TYPE_I_PCM8 = 2 +UAC_FORMAT_TYPE_I_UNDEFINED = 0 +UAC_FU_AUTOMATIC_GAIN = 7 +UAC_FU_BASS = 3 +UAC_FU_BASS_BOOST = 9 +UAC_FU_DELAY = 8 +UAC_FU_GRAPHIC_EQUALIZER = 6 +UAC_FU_LOUDNESS = 10 +UAC_FU_MID = 4 +UAC_FU_MUTE = 1 +UAC_FU_TREBLE = 5 +UAC_FU_VOLUME = 2 UAC_GET_CUR = 129 UAC_GET_MAX = 131 UAC_GET_MEM = 133 UAC_GET_MIN = 130 UAC_GET_RES = 132 +UAC_HEADER = 1 +UAC_INPUT_TERMINAL = 2 +UAC_INPUT_TERMINAL_DESKTOP_MICROPHONE = 514 +UAC_INPUT_TERMINAL_MICROPHONE = 513 +UAC_INPUT_TERMINAL_MICROPHONE_ARRAY = 517 +UAC_INPUT_TERMINAL_OMNI_DIR_MICROPHONE = 516 +UAC_INPUT_TERMINAL_PERSONAL_MICROPHONE = 515 +UAC_INPUT_TERMINAL_PROC_MICROPHONE_ARRAY = 518 +UAC_INPUT_TERMINAL_UNDEFINED = 512 +UAC_MIXER_UNIT = 4 +UAC_OUTPUT_TERMINAL = 3 +UAC_OUTPUT_TERMINAL_COMMUNICATION_SPEAKER = 774 +UAC_OUTPUT_TERMINAL_DESKTOP_SPEAKER = 772 +UAC_OUTPUT_TERMINAL_HEADPHONES = 770 +UAC_OUTPUT_TERMINAL_HEAD_MOUNTED_DISPLAY_AUDIO = 771 +UAC_OUTPUT_TERMINAL_LOW_FREQ_EFFECTS_SPEAKER = 775 +UAC_OUTPUT_TERMINAL_ROOM_SPEAKER = 773 +UAC_OUTPUT_TERMINAL_SPEAKER = 769 +UAC_OUTPUT_TERMINAL_UNDEFINED = 768 +UAC_PROCESS_CHORUS = 5 +UAC_PROCESS_DOLBY_PROLOGIC = 2 +UAC_PROCESS_DYN_RANGE_COMP = 6 +UAC_PROCESS_REVERB = 4 +UAC_PROCESS_STEREO_EXTENDER = 3 +UAC_PROCESS_UNDEFINED = 0 +UAC_PROCESS_UP_DOWNMIX = 1 +UAC_SELECTOR_UNIT = 5 +UAC_TERMINAL_STREAMING = 257 +UAC_TERMINAL_UNDEFINED = 256 +UAC_TERMINAL_VENDOR_SPEC = 511 USBLP_FIRST_PROTOCOL = 1 USBLP_LAST_PROTOCOL = 3 USBLP_REQ_GET_ID = 0 @@ -109,6 +170,7 @@ USB_CDC_PROTO_NONE = 0 USB_CDC_SUBCLASS_ETHERNET = 6 USB_CDC_SUBCLASS_NCM = 13 USB_CDC_UNION_TYPE = 6 +USB_CLASS_AUDIO = 1 USB_CLASS_COMM = 2 USB_CLASS_HID = 3 USB_CLASS_PRINTER = 7 @@ -122,6 +184,7 @@ USB_DT_BOS = 15 USB_DT_BOS_SIZE = 5 USB_DT_CONFIG = 2 USB_DT_CONFIG_SIZE = 9 +USB_DT_CS_ENDPOINT = 37 USB_DT_CS_INTERFACE = 36 USB_DT_CS_RADIO_CONTROL = 35 USB_DT_DEBUG = 10 @@ -166,6 +229,9 @@ USB_ENDPOINT_SYNC_ADAPTIVE = 8 USB_ENDPOINT_SYNC_ASYNC = 4 USB_ENDPOINT_SYNC_NONE = 0 USB_ENDPOINT_SYNC_SYNC = 12 +USB_ENDPOINT_UAC1_AS_ATTRIBUTES = 9 +USB_ENDPOINT_UAC1_AS_IN_ADDRESS = 130 +USB_ENDPOINT_UAC1_AS_OUT_ADDRESS = 1 USB_ENDPOINT_USAGE_DATA = 0 USB_ENDPOINT_USAGE_FEEDBACK = 16 USB_ENDPOINT_XFER_BULK = 2 @@ -271,6 +337,8 @@ USB_SS_PORT_LS_U2 = 64 USB_SS_PORT_LS_U3 = 96 USB_SS_PORT_STAT_POWER = 512 USB_SS_PORT_STAT_SPEED = 7168 +USB_SUBCLASS_AUDIOCONTROL = 1 +USB_SUBCLASS_AUDIOSTREAMING = 2 USB_TYPE_CLASS = 32 USB_TYPE_STANDARD = 0 USB_TYPE_VENDOR = 64 -- cgit mrf-deployment