Hi Mark, > On Jun 22, 2020, at 15:04 , Mark Brown <broonie@xxxxxxxxxx> wrote: > > On Mon, Jun 22, 2020 at 02:34:23PM +0300, Pantelis Antoniou wrote: > >>> This looks much like a replacement for ALSA UCM and userspace audio jack >>> detection coded into the device tree. > >> I wouldn’t call it a replacement exactly. It’s merely a way to bundle all >> of this information about codec glue in the kernel (where it should belong IMO). > > No, you're encoding use case decisions into the DT here - for example > your example will break use cases like ring tones and shutter sounds > which should play through both speaker and headphones. It's also > setting volumes which may be inappropriate or may be not and interferes > with userspace using those same physical volume controls. It is completely optional whether you use this functionality or not. In that case you don’t use the automatic routing you merely set it to off and everything works as before. Or you merely use the route setup for the function from userspace. The device in question is not a mobile phone so there is no requirement to have speaker and headphone active at the same time. It is possible to create a function that would be headphone+speaker active at the same time for that case. Regards — Pantelis