All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephan Gerhold <stephan@gerhold.net>
To: Jaroslav Kysela <perex@perex.cz>
Cc: alsa-devel@alsa-project.org, patch@alsa-project.org,
	Srinivas Kandagatla <srinivas.kandagatla@linaro.org>,
	Stephan Gerhold <stephan@gerhold.net>
Subject: [alsa-devel] [PATCH alsa-ucm-conf 0/7] DB410c/msm8916-wcd UCM fixes/additions
Date: Tue, 14 Jan 2020 12:21:03 +0100	[thread overview]
Message-ID: <20200114112110.51983-1-stephan@gerhold.net> (raw)

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

_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
https://mailman.alsa-project.org/mailman/listinfo/alsa-devel

             reply	other threads:[~2020-01-14 13:22 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-14 11:21 Stephan Gerhold [this message]
2020-01-14 11:21 ` [alsa-devel] [PATCH alsa-ucm-conf 1/7] DB410c: Rename Handset to HeadsetMic Stephan Gerhold
2020-01-14 11:21 ` [alsa-devel] [PATCH alsa-ucm-conf 2/7] DB410c: Split devices into re-usable fragments in codecs/msm8916-wcd Stephan Gerhold
2020-02-11 15:55   ` Stephan Gerhold
2020-01-14 11:21 ` [alsa-devel] [PATCH alsa-ucm-conf 3/7] codecs/msm8916-wcd: Speaker: Reset volume on disable Stephan Gerhold
2020-01-14 11:21 ` [alsa-devel] [PATCH alsa-ucm-conf 4/7] codecs/msm8916-wcd: Headphones: Drop invalid RDAC2 MUX value Stephan Gerhold
2020-01-14 11:21 ` [alsa-devel] [PATCH alsa-ucm-conf 5/7] codecs/msm8916-wcd: Earpiece: Add missing Enable/DisableSequence Stephan Gerhold
2020-01-14 11:21 ` [alsa-devel] [PATCH alsa-ucm-conf 6/7] codecs/msm8916-wcd: SecondaryMic: Select correct input Stephan Gerhold
2020-01-14 11:21 ` [alsa-devel] [PATCH alsa-ucm-conf 7/7] codecs/msm8916-wcd: Add ConflictingDevice for capture devices Stephan Gerhold

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200114112110.51983-1-stephan@gerhold.net \
    --to=stephan@gerhold.net \
    --cc=alsa-devel@alsa-project.org \
    --cc=patch@alsa-project.org \
    --cc=perex@perex.cz \
    --cc=srinivas.kandagatla@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.