At the end of last week we encountered a malfunction in the audio driver of several Linaro kernels for the Dragonboard 410c. We use a Yocto build system with a Linaro 4.14 kernel for our Myon1 board (From keith & koep, snapdragon-410 SoM)
On our Myon1, one of the headphone channels (HEADPHONE_R) fails after about 3x switching between on-board and headset audio, both headphone channels are overlaid with a low-frequency square-wave signal, see oscilloscope pictures in the appendix.
Since the Myon1 is based on the Dragonboard DB410c and we still had a DB410c including an audio mezzanine board here, I tested various linaro debian releases on the DB410c to find out whether the audio problem was related to our Yocto build system. It has been shown that all linaro debian distributions greater or equal to 17.04 have the same audio problem!
The misconduct can be reliably reproduced as follows:
- DB410c with audio mezzanine board
- Speakers connected to SPKR
- Headset connected to audio jack
- linaro debian 17.04 http://releases.linaro.org/96boards/dragonboard410c/linaro/debian/17.04/linaro-stretch-alip-qcom-snapdragon-arm64-20170510-233.img.gz
- Kernel image http://releases.linaro.org/96boards/dragonboard410c/linaro/debian/17.04/boot-linaro-stretch-qcom-snapdragon-arm64-20170510-233.img.gz
If an audio file is played over the loudspeaker after booting the LXDE desktop, everything seems to be OK for now. If you now switch between headset audio and loudspeaker a few times via the audio mixer, the loudspeaker is suddenly turned fully in one direction and therefore becomes hot (see oscilloscope pictures).
Do you know where this problem originated from and is there a fix for it? We cannot use our hardware like this because we rely on OnBoard Audio (Class-D amplifier) and the headset.
Thanks a lot