On Wed, 31 Oct 2018 09:47:27 +0100, Daniel Drake wrote: > > Hi, > > We are working with a new consumer All-in-One platform with HDA audio > (Realtek codec). > > Upon plugging in an audio device into one of the audio jacks, under > Windows, a prompt appears which says: Which device did you plug in? > And you can select from several options: Mic In / Headphone / Speaker Out > Screenshot: https://imgur.com/a/mrUolHN > > The system vendor is asking if we can implement the same under Linux. > > At first glance, this sounds quite similar to what happens on other > models when you plug in a headset under GNOME: a dialog pops up asking > if you connected a mic, headphones, or a headset. Under the surface, > such headset jacks seems to correspond to 2 separate HDA pins (one > input and one output) and this dialog seems to manage which streams > are enabled or muted. > > However, this case is different. We have experimented, and the jack > corresponds to just a single HDA pin. We can manually quirk or retask > this pin to be an input or an output and it works in the direction > that we choose. But that's a far cry from having a nice GUI that > automatically comes up asking the user how the pin should be > configured. > > Is there any current solution or work in progress with the goal of > offering this functionality? > > If not, brainstorming, possible solutions could include: > > 1. Taking the hdajackretask idea but making it user-accessible and > user-friendly (currently it goes through debugfs and must be done by > root). This would require the creation of a new kernel interface to > expose pin reconfiguration in a nicer way, which would have to be > plumbed through pulseaudio and GNOME. > > 2. Could ALSA ignore the pin config here and provide both input and > output streams for this pin? Then pulseaudio + GUI could pick which > one to use - similar to the existing Headset dialog. This would still > require some work on pulseaudio and the corresponding UI, but it might > be a less invasive project. Actually the generic parser allows to create a "Headphone Mic Jack Mode" enum control in a certain condition. This allows user to switch the headphone jack role via the enum. Isn't it the case? Takashi _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel