aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux
diff options
context:
space:
mode:
authorAndrey Konovalov <andreyknvl@google.com>2019-10-10 17:54:31 +0200
committerAndrey Konovalov <andreyknvl@gmail.com>2019-10-15 13:08:30 +0200
commit323ca502638f845897b690a8623f8a4cf9ce279b (patch)
tree84e52194b37f124e63b7cddd71fe555a5237ea32 /sys/linux
parentb5268b89c2964733654c89f8322fb155d9fa6799 (diff)
sys/linux/vusb.txt: describe UAC1 device class
Diffstat (limited to 'sys/linux')
-rw-r--r--sys/linux/gen/386.go422
-rw-r--r--sys/linux/gen/amd64.go422
-rw-r--r--sys/linux/gen/arm.go422
-rw-r--r--sys/linux/gen/arm64.go422
-rw-r--r--sys/linux/gen/ppc64le.go422
-rw-r--r--sys/linux/vusb.txt334
-rw-r--r--sys/linux/vusb_386.const68
-rw-r--r--sys/linux/vusb_amd64.const68
-rw-r--r--sys/linux/vusb_arm.const68
-rw-r--r--sys/linux/vusb_arm64.const68
-rw-r--r--sys/linux/vusb_ppc64le.const68
11 files changed, 2635 insertions, 149 deletions
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