[alsa-devel] [PATCH alsa-ucm-conf 0/7] DB410c/msm8916-wcd UCM fixes/additions
Stephan Gerhold
stephan at gerhold.net
Tue Jan 14 12:21:03 CET 2020
This is a collection of fixes/refactoring/additions for the DB410c UCM files.
My goal is to also make them usable for other MSM8916 devices, e.g.
the three MSM8916 smartphones which can run mainline Linux since
https://lore.kernel.org/linux-arm-msm/20190722092211.100586-1-stephan@gerhold.net/
For now this is just preparation - this patch series refactors the DB410c
UCM configuration into re-usable device fragments that can be included
when needed.
By the way: it seems like the UCM2 conversion (specifically,
commit 14facf88b56 ("DB410c: adapt to ucm2") breaks PulseAudio because
the Playback/CaptureChannels were moved from all the "SectionDevice"s to
"SectionVerb":
I: [pulseaudio] alsa-ucm.c: UCM available for card msm8916
I: [pulseaudio] alsa-ucm.c: Set UCM verb to HiFi
W: [pulseaudio] alsa-ucm.c: UCM file does not specify 'PlaybackChannels' or 'CaptureChannels'for device DigitalMic, assuming stereo duplex.
W: [pulseaudio] alsa-ucm.c: UCM file does not specify 'PlaybackChannels' or 'CaptureChannels'for device SecondaryMic, assuming stereo duplex.
W: [pulseaudio] alsa-ucm.c: UCM file does not specify 'PlaybackChannels' or 'CaptureChannels'for device PrimaryMic, assuming stereo duplex.
W: [pulseaudio] alsa-ucm.c: UCM file does not specify 'PlaybackChannels' or 'CaptureChannels'for device Handset, assuming stereo duplex.
W: [pulseaudio] alsa-ucm.c: UCM file does not specify 'PlaybackChannels' or 'CaptureChannels'for device Earpiece, assuming stereo duplex.
W: [pulseaudio] alsa-ucm.c: UCM file does not specify 'PlaybackChannels' or 'CaptureChannels'for device Headphones, assuming stereo duplex.
W: [pulseaudio] alsa-ucm.c: UCM file does not specify 'PlaybackChannels' or 'CaptureChannels'for device Speaker, assuming stereo duplex.
I: [pulseaudio] module-alsa-card.c: Found UCM profiles
E: [pulseaudio] alsa-ucm.c: No sink and source at HiFi: DigitalMic
E: [pulseaudio] alsa-ucm.c: No sink and source at HiFi: SecondaryMic
E: [pulseaudio] alsa-ucm.c: No sink and source at HiFi: PrimaryMic
E: [pulseaudio] alsa-ucm.c: No sink and source at HiFi: Handset
E: [pulseaudio] alsa-ucm.c: No sink and source at HiFi: Earpiece
E: [pulseaudio] alsa-ucm.c: No sink and source at HiFi: Headphones
E: [pulseaudio] alsa-ucm.c: No sink and source at HiFi: Speaker
I: [pulseaudio] alsa-ucm.c: Set ucm verb to HiFi
It seems like PulseAudio does not inherit them from "SectionVerb",
but I'm not sure if this is a problem in PulseAudio or alsa-lib.
Restoring Playback/CaptureChannels for all the "SectionDevice"s fixes the problem.
Stephan Gerhold (7):
DB410c: Rename Handset to HeadsetMic
DB410c: Split devices into re-usable fragments in codecs/msm8916-wcd
codecs/msm8916-wcd: Speaker: Reset volume on disable
codecs/msm8916-wcd: Headphones: Drop invalid RDAC2 MUX value
codecs/msm8916-wcd: Earpiece: Add missing Enable/DisableSequence
codecs/msm8916-wcd: SecondaryMic: Select correct input
codecs/msm8916-wcd: Add ConflictingDevice for capture devices
ucm2/DB410c/HiFi.conf | 128 +---------------------
ucm2/codecs/msm8916-wcd/DigitalMic.conf | 18 +++
ucm2/codecs/msm8916-wcd/Earpiece.conf | 22 ++++
ucm2/codecs/msm8916-wcd/Headphones.conf | 29 +++++
ucm2/codecs/msm8916-wcd/HeadsetMic.conf | 22 ++++
ucm2/codecs/msm8916-wcd/PrimaryMic.conf | 20 ++++
ucm2/codecs/msm8916-wcd/SecondaryMic.conf | 22 ++++
ucm2/codecs/msm8916-wcd/Speaker.conf | 21 ++++
8 files changed, 160 insertions(+), 122 deletions(-)
create mode 100644 ucm2/codecs/msm8916-wcd/DigitalMic.conf
create mode 100644 ucm2/codecs/msm8916-wcd/Earpiece.conf
create mode 100644 ucm2/codecs/msm8916-wcd/Headphones.conf
create mode 100644 ucm2/codecs/msm8916-wcd/HeadsetMic.conf
create mode 100644 ucm2/codecs/msm8916-wcd/PrimaryMic.conf
create mode 100644 ucm2/codecs/msm8916-wcd/SecondaryMic.conf
create mode 100644 ucm2/codecs/msm8916-wcd/Speaker.conf
--
2.24.1
More information about the Alsa-devel
mailing list