From: Dan Aloni <dan@kernelim.com>
To: Takashi Iwai <tiwai@suse.de>
Cc: alsa-devel@alsa-project.org
Subject: Re: on-board sound on ASUS TRX-40
Date: Thu, 22 Oct 2020 21:08:42 +0300 [thread overview]
Message-ID: <20201022180842.GA1337888@gmail.com> (raw)
In-Reply-To: <s5htuum9r8z.wl-tiwai@suse.de>
On Thu, Oct 22, 2020 at 06:09:48PM +0200, Takashi Iwai wrote:
> On Thu, 22 Oct 2020 17:49:59 +0200,
> Dan Aloni wrote:
> >
> > On Thu, Oct 22, 2020 at 02:57:56PM +0200, Takashi Iwai wrote:
> > > > > > Upon plugging or unplugging the headphone, the unitid of 11 matches the
> > > > > > unit in `trx40_mobo_connector_map`, although two events are happening -
> > > > > > two for plug and two for unplug. There's another event for '7', and
> > > > > > changing the second item of `static const struct usbmix_connector_map`
> > > > > > from 11 to 7 does not seem to affect it.
> > > > >
> > > > > Well, then I'm afraid that it has yet another mapping of the units.
> > > > > You'd need to create the whole map from the topology, and rewrite the
> > > > > connector_map as well.
> > > >
> > > > Would be helpful a USB trace from KVM, when running a Windows VM that
> > > > successfully manages this device following USB redirection? I can
> > > > produce this given instructions, if you have them handy.
> > >
> > > The topology is found in lsusb -v output. It's the connection among
> > > units. More importantly, the maps only care about the certain units
> > > like input/output terminals and feature unit. You can look at those
> > > and correct the corresponding unit ids.
> >
> > It shows 6 triplelets of input terminal, feature unit, and output terminal,
> > and they are structured like this:
> >
> > IT[7] -> FU[19] -> OT[13]
> > Line-in USB Streaming
> >
> > IT[8] -> FU[20] -> OT[14]
> > Rear Mic-In USB Streaming
> >
> > IT[9] -> FU[21] -> OT[15]
> > Desktop Mic USB Streaming
> >
> > IT[10] -> FU[22] -> OT[16]
> > Headphone Speaker
> >
> > IT[11] -> FU[23] -> OT[17]
> > USB Streaming Headphone
> >
> > IT[12] -> FU[24] -> OT[18]
> > USB Streaming SPDIF interface
> >
> > Not sure how to make sense of that to a usbmix_name_map array and/or
> > usbmix_connector_map array combination that works. My trials so far
> > have not yielded a good result.
>
> Could you show the patch you've tried? Fitting the above into two
> tables should be straightforward.
Well I have almost zero familiarity with the code base, so it's really
not trivial to me. I still have gaps. Please explain:
- Maybe I conflated UnitId and TerminalId, when analyzing `lsusb -v`,
are these both referring to units?
- I assume bSourceId refers to another descriptor UnitId, is that right?
- Out of the 18 possible entries in `usbmix_name_map` in this case how
it is decided to omit certain input and output terminals? Should all
feature units are necessarily described?
- What is the purpose of `usbmix_connector_map` array, and how to decide
to add entries to this array? Is it done relative to `usbmix_name_map`
omissions?
- Is there a tool that can better describe the topology based on `lsusb
-v` output?
- Seems that `mixer_maps.c` compensates for knowledge not obtained from
`lsusb -v`, or all of it can be obtained?
Thanks.
--
Dan Aloni
next prev parent reply other threads:[~2020-10-22 18:09 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-22 8:17 on-board sound on ASUS TRX-40 Dan Aloni
2020-10-22 9:14 ` Takashi Iwai
2020-10-22 10:18 ` Dan Aloni
2020-10-22 10:24 ` Takashi Iwai
2020-10-22 12:33 ` Dan Aloni
2020-10-22 12:36 ` Takashi Iwai
2020-10-22 12:51 ` Dan Aloni
2020-10-22 12:57 ` Takashi Iwai
2020-10-22 15:49 ` Dan Aloni
2020-10-22 16:09 ` Takashi Iwai
2020-10-22 18:08 ` Dan Aloni [this message]
-- strict thread matches above, loose matches on Subject: below --
2020-11-04 11:03 apt-ghetto
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201022180842.GA1337888@gmail.com \
--to=dan@kernelim.com \
--cc=alsa-devel@alsa-project.org \
--cc=tiwai@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.