Hi, On the motorola droid 4 (xt894 rch/arm/boot/dts/omap4-droid4-xt894.dts) the cpcap asoc codec is used for sound (sound/soc/codecs/cpcap.c). The codec contains a hifi and voice DAI and mixer controlls to connect the various outputs (headphones, internal speaker, earpiece etc) to these dai. The hardware setup looks like this https://lkml.org/lkml/2018/3/27/1225 with the cpcap chip acting as a mux for various other devices on the pcb. The modem is one of these devices. The problem is that the kernel has really no way of knowing if the modem is outputing anything or not and thus if the mixer is setup sutch that the modem is driving some output though dapm route (eg the earpiece), the entire dapm route chain will remain off and inactive causeing the kernel to disable the Earpiece PGA. Thus no output makes it out of the device and the voice call fails unless one messes with the registers to enable Earpiece PGA by hand. Now i know of various ways to hack this problem away and have been looking at the asoc/ alsa documentation for some time now but i really cant seam to figure out how to solve this problem correctly. Really i would need a way to pin the voice dai to be considerd allways active by the kernel so that all downsteam devices get truned on when the mixer is setup sutch that they are conected in a route. Or give userspace a mixer switch or other mechanisum to tell the kernel that the modem is currently actively playing sound. any help that can be given in this problem would me mutch appreciated. -- Dev Null <devnull@xxxxxxxx>