Changes between Initial Version and Version 1 of Ticket #18320, comment 21


Ignore:
Timestamp:
Feb 9, 2025, 12:13:59 PM (2 weeks ago)
Author:
LSS37040

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #18320, comment 21

    initial v1  
    1 May I add something to this issue?
    2 
    3 I have this USB audio device in the form of a USB to RCA adapter, and it doesn't work with Haiku. It does work correctly with other OSes on this system, however.
    4 
    5 Before reporting this I've done a system update and it's currently hrev58622.
    6 
    7 The only relevant information in the syslog is this line.
    8 {{{
    9 KERN: loaded driver /boot/system/add-ons/kernel/drivers/dev/audio/hmulti/usb_audio
    10 }}}
    11 
    12 Here's the `listdev -v` output of this device, as well as the hub/controller it's connected to. I'm currently connecting it to a native USB 2.0 (EHCI) port on the motherboard.
    13 
    14 {{{
    15 [Device /dev/bus/usb/1/0/4]
    16     Class .................. 0x00 (Defined at Interface level) ()
    17     Subclass ............... 0x00 (Defined at Interface level) ()
    18     Protocol ............... 0x00 (Defined at Interface level) ()
    19     Max Endpoint 0 Packet .. 64
    20     USB Version ............ 2.0
    21     Vendor ID .............. 0x0020
    22     Product ID ............. 0x0b21
    23     Product Version ........ 0x0100
    24     Manufacturer String .... "Generic"
    25     Product String ......... "EarPods"
    26     Serial Number .......... "20210726905926"
    27     [Configuration 0]
    28         Configuration String . ""
    29         [Interface 0]
    30             [Alternate 0 active]
    31                 Class .............. 0x01 Audio ()
    32                 Subclass ........... 0x01 Audio (Control Device)
    33                 Protocol ........... 0x00 Audio (Control Device)
    34                 Interface String ... ""
    35                 [Descriptor 0]
    36                     Type .............. 0x24
    37                     Subtype ........... 0x01 (Header)
    38                     Audio codec version .. 1.0
    39                     Total Length ...... 85
    40                     Interfaces ........ 1, 2,
    41                 [Descriptor 1]
    42                     Length............. 12
    43                     Type .............. 0x24
    44                     Subtype ........... 0x02 (Input Terminal)
    45                     Terminal ID ....... 1
    46                     Terminal Type ..... 0x0101 (USB Streaming)
    47                     Associated Terminal 0
    48                     Nr Channels ....... 2
    49                     Channel Config .... 0x3
    50                        Front .......... Left Right
    51                     Channel Names ..... 0
    52                     Terminal .......... 0
    53                 [Descriptor 2]
    54                     Length............. 13
    55                     Type .............. 0x24
    56                     Subtype ........... 0x04 (Mixer Unit)
    57                     Unit ID ........... 6
    58                     Source IDs ........ 5, 5,
    59                     Channels .......... 2
    60                     Channel Config .... 0x3
    61                        Front .......... Left Right
    62                     Channel Names ..... 0
    63                     Bitmap Control .... 0x00
    64                     Mixer ............. 0
    65                 [Descriptor 3]
    66                     Length............. 10
    67                     Type .............. 0x24
    68                     Subtype ........... 0x06 (Feature Unit)
    69                     Unit ID ........... 2
    70                     Source ID ......... 0x01
    71                     Control Size ...... 1
    72                        Master Channel . Mute
    73                        Channel 1 ...... Volume
    74                        Channel 2 ...... Volume
    75                 [Descriptor 4]
    76                     Length............. 9
    77                     Type .............. 0x24
    78                     Subtype ........... 0x03 (Output Terminal)
    79                     Terminal ID ....... 3
    80                     Terminal Type ..... 0x0301 (Speaker)
    81                     Associated Terminal 0
    82                     Source ID ......... 0x02
    83                     Terminal .......... 0
    84                 [Descriptor 5]
    85                     Length............. 12
    86                     Type .............. 0x24
    87                     Subtype ........... 0x02 (Input Terminal)
    88                     Terminal ID ....... 4
    89                     Terminal Type ..... 0x0201 (Microphone)
    90                     Associated Terminal 0
    91                     Nr Channels ....... 2
    92                     Channel Config .... 0x3
    93                        Front .......... Left Right
    94                     Channel Names ..... 0
    95                     Terminal .......... 0
    96                 [Descriptor 6]
    97                     Length............. 10
    98                     Type .............. 0x24
    99                     Subtype ........... 0x06 (Feature Unit)
    100                     Unit ID ........... 5
    101                     Source ID ......... 0x04
    102                     Control Size ...... 1
    103                        Master Channel . Mute Volume
    104                 [Descriptor 7]
    105                     Length............. 9
    106                     Type .............. 0x24
    107                     Subtype ........... 0x03 (Output Terminal)
    108                     Terminal ID ....... 6
    109                     Terminal Type ..... 0x0101 (USB Streaming)
    110                     Associated Terminal 0
    111                     Source ID ......... 0x05
    112                     Terminal .......... 0
    113         [Interface 1]
    114             [Alternate 0 active]
    115                 Class .............. 0x01 Audio ()
    116                 Subclass ........... 0x02 Audio (Streaming)
    117                 Protocol ........... 0x00 Audio (Streaming)
    118                 Interface String ... ""
    119             [Alternate 1]
    120                 Class .............. 0x01 Audio ()
    121                 Subclass ........... 0x02 Audio (Streaming)
    122                 Protocol ........... 0x00 Audio (Streaming)
    123                 Interface String ... ""
    124                 [Endpoint 0]
    125                     MaxPacketSize .... 1x 384 bytes
    126                     Interval ......... 1
    127                     Type ............. Isochronous
    128                     Direction ........ Output
    129                 [Descriptor 0]
    130                     Subtype ........... 1 (AS_GENERAL)
    131                     Terminal link ..... 1
    132                     Delay ............. 1
    133                     Format tag ........ 1
    134                 [Descriptor 1]
    135                     Subtype ........... 2 (FORMAT_TYPE)
    136                     Format Type ....... 1 (FORMAT_TYPE_I)
    137                     Channels .......... 2
    138                     Subframe size ..... 2
    139                     Bit resolution .... 16
    140                     Sampling Freq ..... 48000,
    141                 [Descriptor 2]
    142                     Type .............. 0x25 (CS_ENDPOINT)
    143                     Subtype ........... 0x01 (EP_GENERAL)
    144                     Attributes ........ 0x01 Sampling Frequency
    145                     Lock Delay Units .. 1 (Milliseconds)
    146                     Lock Delay ........ 1
    147         [Interface 2]
    148             [Alternate 0 active]
    149                 Class .............. 0x01 Audio ()
    150                 Subclass ........... 0x02 Audio (Streaming)
    151                 Protocol ........... 0x00 Audio (Streaming)
    152                 Interface String ... ""
    153             [Alternate 1]
    154                 Class .............. 0x01 Audio ()
    155                 Subclass ........... 0x02 Audio (Streaming)
    156                 Protocol ........... 0x00 Audio (Streaming)
    157                 Interface String ... ""
    158                 [Endpoint 0]
    159                     MaxPacketSize .... 1x 208 bytes
    160                     Interval ......... 1
    161                     Type ............. Isochronous
    162                     Direction ........ Input
    163                 [Descriptor 0]
    164                     Subtype ........... 1 (AS_GENERAL)
    165                     Terminal link ..... 6
    166                     Delay ............. 1
    167                     Format tag ........ 1
    168                 [Descriptor 1]
    169                     Subtype ........... 2 (FORMAT_TYPE)
    170                     Format Type ....... 1 (FORMAT_TYPE_I)
    171                     Channels .......... 2
    172                     Subframe size ..... 2
    173                     Bit resolution .... 16
    174                     Sampling Freq ..... 48000,
    175                 [Descriptor 2]
    176                     Type .............. 0x25 (CS_ENDPOINT)
    177                     Subtype ........... 0x01 (EP_GENERAL)
    178                     Attributes ........ 0x01 Sampling Frequency
    179                     Lock Delay Units .. 0 (Undefined)
    180                     Lock Delay ........ 0
    181         [Interface 3]
    182             [Alternate 0 active]
    183                 Class .............. 0x03 Human Interface Device (No Subclass, None)
    184                 Subclass ........... 0x00 Human Interface Device (No Subclass, None)
    185                 Protocol ........... 0x00 Human Interface Device (No Subclass, None)
    186                 Interface String ... ""
    187                 [Endpoint 0]
    188                     MaxPacketSize .... 1x 16 bytes
    189                     Interval ......... 1
    190                     Type ............. Interrupt
    191                     Direction ........ Input
    192                 [Descriptor 0]
    193                     Length............ 0x09
    194                     Type ............. 0x21
    195                     Data ............. 01 02 00 01 22 36 00
    196 [Device /dev/bus/usb/1/0/hub]
    197     Class .................. 0x09 Hub (Unused, Full speed (or root) hub)
    198     Subclass ............... 0x00 Hub (Unused, Full speed (or root) hub)
    199     Protocol ............... 0x01 Hub (Unused, Single TT)
    200     Max Endpoint 0 Packet .. 64
    201     USB Version ............ 2.0
    202     Vendor ID .............. 0x8087 (Intel Corp.)
    203     Product ID ............. 0x800a (Hub)
    204     Product Version ........ 0x0005
    205     Manufacturer String .... ""
    206     Product String ......... ""
    207     Serial Number .......... ""
    208     [Configuration 0]
    209         Configuration String . ""
    210         [Interface 0]
    211             [Alternate 0 active]
    212                 Class .............. 0x09 Hub (Unused, Full speed (or root) hub)
    213                 Subclass ........... 0x00 Hub (Unused, Full speed (or root) hub)
    214                 Protocol ........... 0x00 Hub (Unused, Full speed (or root) hub)
    215                 Interface String ... ""
    216                 [Endpoint 0]
    217                     MaxPacketSize .... 1x 1 bytes
    218                     Interval ......... 12
    219                     Type ............. Interrupt
    220                     Direction ........ Input
    221     Hub ports count......... 6
    222     Hub Controller Current.. 0mA
    223       Port 1 status....... 0503.0000 Connect Enable Power
    224       Port 2 status....... 0100.0000 Power
    225       Port 3 status....... 0100.0000 Power
    226       Port 4 status....... 0100.0000 Power
    227       Port 5 status....... 0103.0000 Connect Enable Power
    228       Port 6 status....... 0100.0000 Power
    229 [Device /dev/bus/usb/1/hub]
    230     Class .................. 0x09 Hub (Unused, Full speed (or root) hub)
    231     Subclass ............... 0x00 Hub (Unused, Full speed (or root) hub)
    232     Protocol ............... 0x00 Hub (Unused, Full speed (or root) hub)
    233     Max Endpoint 0 Packet .. 64
    234     USB Version ............ 2.0
    235     Vendor ID .............. 0x0000
    236     Product ID ............. 0x0000
    237     Product Version ........ 0x0200
    238     Manufacturer String .... "HAIKU Inc."
    239     Product String ......... "EHCI RootHub"
    240     Serial Number .......... ""
    241     [Configuration 0]
    242         Configuration String . ""
    243         [Interface 0]
    244             [Alternate 0 active]
    245                 Class .............. 0x09 Hub (Unused, Full speed (or root) hub)
    246                 Subclass ........... 0x00 Hub (Unused, Full speed (or root) hub)
    247                 Protocol ........... 0x00 Hub (Unused, Full speed (or root) hub)
    248                 Interface String ... ""
    249                 [Endpoint 0]
    250                     MaxPacketSize .... 1x 8 bytes
    251                     Interval ......... 255
    252                     Type ............. Interrupt
    253                     Direction ........ Input
    254                 [Descriptor 0]
    255                     Length............ 0x09
    256                     Type ............. 0x29
    257                     Data ............. 02 00 00 00 00 00 ff
    258     Hub ports count......... 2
    259     Hub Controller Current.. 0mA
    260       Port 1 status....... 0503.0000 Connect Enable Power
    261       Port 2 status....... 0100.0000 Power
    262 }}}
    263 
    264 The device reports USB 2.0 but it's actually an ADC 1.0 device (Audio codec version .. 1.0), similar to what has been discussed here: https://discuss.haiku-os.org/t/haiku-cannot-find-any-audio-device/16286/11
    265 
    266 Considering there's only a single line relevant to `usb_audio` I suspect the driver has not picked up this device because of its reporting itself as USB 2.0.
     1EDIT: I've moved my previous post to my own issue #19411.