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]
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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).