OSDN Git Service

android-x86/external-alsa-ucm-conf.git
3 years agoucm.conf: The module name may not be available when the driver in built-in.
Jaroslav Kysela [Tue, 29 Sep 2020 15:31:34 +0000 (17:31 +0200)]
ucm.conf: The module name may not be available when the driver in built-in.

BugLink: https://github.com/alsa-project/alsa-ucm-conf/issues/52
Fixes: d001c8de287f ("ucm.conf: add support for the kernel module name tree")

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: USB-Audio: Add support for Lenovo ThinkStation P620 Rear Audio
Kai-Heng Feng [Wed, 9 Sep 2020 09:10:41 +0000 (17:10 +0800)]
ucm2: USB-Audio: Add support for Lenovo ThinkStation P620 Rear Audio

Add proper PCM assignment to Lenovo ThinkStation P620 Rear Audio.

Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: Qualcomm sdm845 fixes HDMI select card and HiFi set DigitalVol
Aníbal Limón [Mon, 31 Aug 2020 22:25:13 +0000 (17:25 -0500)]
ucm2: Qualcomm sdm845 fixes HDMI select card and HiFi set DigitalVol

Remove the duplicated PlaybackVolume entry.

Signed-off-by: Aníbal Limón <anibal.limon@linaro.org>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: Qualcomm sdm845 fixes HDMI select card and HiFi set DigitalVol
Aníbal Limón [Mon, 31 Aug 2020 22:25:13 +0000 (17:25 -0500)]
ucm2: Qualcomm sdm845 fixes HDMI select card and HiFi set DigitalVol

Signed-off-by: Aníbal Limón <anibal.limon@linaro.org>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoAdd support for Lenovo ThinkStation P620 Main Audio
Kai-Heng Feng [Thu, 20 Aug 2020 14:12:02 +0000 (22:12 +0800)]
Add support for Lenovo ThinkStation P620 Main Audio

This add support for its internal speaker and front headset.

Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoHDA-Intel: only add the acp dmic to the sound card with analog codec
Hui Wang [Thu, 20 Aug 2020 03:25:24 +0000 (11:25 +0800)]
HDA-Intel: only add the acp dmic to the sound card with analog codec

Without this change, the acp dmic will be added to both Intel sound
card (with analog codec) and Nvidia Hdmi audio sound card.

Signed-off-by: Hui Wang <hui.wang@canonical.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: HDA/acp - add Capture simple mixer element to the ACP Mic device
Jaroslav Kysela [Tue, 1 Sep 2020 11:57:18 +0000 (13:57 +0200)]
ucm2: HDA/acp - add Capture simple mixer element to the ACP Mic device

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: module - rename rk3399-gru-sound.conf => snd_soc_rk3399_gru_sound.conf
Jaroslav Kysela [Wed, 19 Aug 2020 14:15:04 +0000 (16:15 +0200)]
ucm2: module - rename rk3399-gru-sound.conf => snd_soc_rk3399_gru_sound.conf

We are using the real kernel module name for the first level selection now.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoRevert "amd/renoir/acp: use the machine driver's name for top-level's conf"
Jaroslav Kysela [Wed, 19 Aug 2020 14:04:48 +0000 (16:04 +0200)]
Revert "amd/renoir/acp: use the machine driver's name for top-level's conf"

This reverts commit 35277f419b1dc0f8500d3ab4bceabf6cad05c76d.

We use the snd_acp3x_rn kernel module name again with the correct
sysfs lookup.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: ucm.conf - fix the fix the sysfs kernel module path
Jaroslav Kysela [Wed, 19 Aug 2020 14:03:48 +0000 (16:03 +0200)]
ucm2: ucm.conf - fix the fix the sysfs kernel module path

The idea was to use the kernel module name not the driver name which
may be different.

BugLink: https://github.com/alsa-project/alsa-lib/pull/79
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoRockchip/rk3399-gru-sound: remove zero PCM subdevice
Jaroslav Kysela [Tue, 18 Aug 2020 15:39:50 +0000 (17:39 +0200)]
Rockchip/rk3399-gru-sound: remove zero PCM subdevice

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoUSB-Audio: Dell-WD15-Dock: make input and output volume adjustable
Hui Wang [Mon, 17 Aug 2020 04:37:44 +0000 (12:37 +0800)]
USB-Audio: Dell-WD15-Dock: make input and output volume adjustable

Recently we found the input volume is too low for some specific
headset-mic, even we adjust the input volume to max from PA, we still
can't record the sound from that headset-mic. That is because we
change the input or output volume from PA, but the mixer's volume
is not changed, only PA's soft-volume is changed.

Checking the amixer controls for the sound card in the WD19, it
supports MixerElem, Volume and Switch, and checking the sound card in
the WD15, it doesn't have Volume and Switch for Headphone and Line,
So adding the volume and switch control in the ucm conditionally.

Signed-off-by: Hui Wang <hui.wang@canonical.com>
BugLink: https://github.com/alsa-project/alsa-ucm-conf/pull/47
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoHDA-Intel: HiFi-dual: Fix the Rear Mic's Jack name
Hui Wang [Mon, 17 Aug 2020 03:28:04 +0000 (11:28 +0800)]
HDA-Intel: HiFi-dual: Fix the Rear Mic's Jack name

On the LENOVO P520 (dual codecs machine), the Jack name of Rear Mic is
"Rear Mic Jack" instead of "Mic Jack".

Below is picked from alsa-info.txt on the LENOVO p520 machine:
control.18 {
iface CARD
name 'Rear Mic Jack'
value true
comment {
access read
type BOOLEAN
count 1
}
}

Signed-off-by: Hui Wang <hui.wang@canonical.com>
BugLink: https://github.com/alsa-project/alsa-ucm-conf/pull/46
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoCorrect conflicting mic in max98090
jacobopantoja [Thu, 6 Aug 2020 11:53:07 +0000 (13:53 +0200)]
Correct conflicting mic in max98090

'mic' was conflicting 'mic' instead of 'headset', thus preventing correct configuration regarding microphones.

With this corrected, introducing a headset enables 'headset' mic and disables internal 'mic', whereas releasing the headset disables 'headset' mic and enables internal 'mic'

BugLink: https://github.com/alsa-project/alsa-ucm-conf/pull/43
From: acobopantoja@gmail.com
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoamd/renoir/acp: Add Syntax 3 in the module/lib/Linked.conf
Hui Wang [Wed, 22 Jul 2020 06:25:15 +0000 (14:25 +0800)]
amd/renoir/acp: Add Syntax 3 in the module/lib/Linked.conf

Otherwise the alsalib will report:
parser.c: Syntax field not found in xxx.conf

Signed-off-by: Hui Wang <hui.wang@canonical.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoamd/renoir/acp: use the machine driver's name for top-level's conf
Hui Wang [Tue, 21 Jul 2020 08:51:00 +0000 (16:51 +0800)]
amd/renoir/acp: use the machine driver's name for top-level's conf

On the machines with amd renoir audio, the /sys/class/sound/card2/
device/driver links to /sys/bus/platform/drivers/acp_pdm_mach.

Signed-off-by: Hui Wang <hui.wang@canonical.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: Add config for Rockchip/rk3399-gru-sound
Alper Nebi Yasak [Wed, 8 Jul 2020 20:09:19 +0000 (23:09 +0300)]
ucm2: Add config for Rockchip/rk3399-gru-sound

This is the internal card for a number of ChromeOS devices based on the
Gru board. Config is taken from ChromeOS sources [1] and modified to
mostly look like Rockchip/max98090. Tested on a Samsung Chromebook Plus
(rk3399-gru-kevin) running Linux 5.7+.

[1] https://chromium.googlesource.com/chromiumos/overlays/board-overlays/+/75cf7da335c11469956c84ddfa4e2ca73b268441/overlay-kevin/chromeos-base/chromeos-bsp-kevin/files/audio-config/ucm-config/rk3399-gru-sound

Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoupdate ucm2/README.md - more kernel module lookup clarifications
Jaroslav Kysela [Tue, 18 Aug 2020 14:00:31 +0000 (16:00 +0200)]
update ucm2/README.md - more kernel module lookup clarifications

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agohda hdmi: add HDMI4,HDMI5,HDMI6 devices
Jaroslav Kysela [Mon, 6 Jul 2020 14:47:57 +0000 (16:47 +0200)]
hda hdmi: add HDMI4,HDMI5,HDMI6 devices

- fix the duplicate index value in the comment section
- change priorities

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-hda-dsp: use sof-hda-dsp/Hdmi.conf
Libin Yang [Wed, 1 Jul 2020 05:51:58 +0000 (01:51 -0400)]
sof-hda-dsp: use sof-hda-dsp/Hdmi.conf

sof-hda-dsp should use sof-hda-dsp/Hdmi.conf, not HDA-Intel/Hdmi.conf.
HDA-Intel/Hdmi.conf is for legacy HDA.

Signed-off-by: Libin Yang <libin.yang@intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-hda-dsp: fixup typo in Hdmi.conf
Libin Yang [Wed, 1 Jul 2020 05:50:06 +0000 (01:50 -0400)]
sof-hda-dsp: fixup typo in Hdmi.conf

It should be  "/codecs/hda/hdmi.conf" instead of "/codec/hda/hdmi.conf"

Signed-off-by: Libin Yang <libin.yang@intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoDB820c: Correctly move DB820c to Qualcomm/apq8096
Srinivas Kandagatla [Tue, 30 Jun 2020 11:24:57 +0000 (12:24 +0100)]
DB820c: Correctly move DB820c to Qualcomm/apq8096

DB820c belongs to APQ8096 SoC, so it should be moved to ucm2/apq8096
folder rather than apq8016.

So correctly move it to apq8096 to reflect the correct SoC.

Fixes: 73c105b4707b ("DB820c/DB845c: move to Qualcomm/ tree")
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agochtrt5645: Restore stereo sound output when switching from MonoSpeaker to Headphones
Hans de Goede [Sun, 28 Jun 2020 17:44:21 +0000 (19:44 +0200)]
chtrt5645: Restore stereo sound output when switching from MonoSpeaker to Headphones

Commit fe3b0bdc2f43 ("chtrt5645: merge all possible configurations to
HiFi.conf") missed the part of the removed HiFi-mono-speaker-analog-mic.conf
file which restores stereo mixing (instead of mixing left + right to the
left DAC mixer output) when switching from the mono speaker setup to the
headphones output.

This was causing both left and right channels to only be played on the
left ear of the headphones. This commit fixes this.

Fixes: fe3b0bdc2f43 ("chtrt5645: merge all possible configurations to HiFi.conf")
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agocht-bsw-rt5672: Boost ADC volume a bit
Hans de Goede [Sun, 28 Jun 2020 17:44:20 +0000 (19:44 +0200)]
cht-bsw-rt5672: Boost ADC volume a bit

Both the DMICs and the headset mic are quite soft, even with the 20 dB
IN1 boost we already congfigure for the headset.

This commit sets the ADC Boost gain (range 0-3) to 1 = 12 dB, which makes
the volume a lot better. The next step of the ADC Boost gain setting is
24 dB which is a bit too much.

This has been tested with both the builtin DMIC and with a headset mic
on the following devices:

Lenovo Miix 2 10
Lenovo Thinkpad 8
Lenovo Thinkpad 10 (gen 1)

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agocht-bsw-rt5672: Add Lenovo ThinkPad 10 specific configuration
Hans de Goede [Sun, 28 Jun 2020 17:44:19 +0000 (19:44 +0200)]
cht-bsw-rt5672: Add Lenovo ThinkPad 10 specific configuration

The Lenovo ThinkPad 10 (first gen) has stereo speakers and the stereo
DMICs in the top-edge of the tablet are connected to DMIC1.

Add a RegexMatch for this, so that users do not have to select the right
settings manually.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agocht-bsw-rt5672: Add Lenovo Miix 2 10 specific configuration
Hans de Goede [Sun, 28 Jun 2020 17:44:18 +0000 (19:44 +0200)]
cht-bsw-rt5672: Add Lenovo Miix 2 10 specific configuration

By default the cht-bsw-rt5672 config lets the user figure out if a device
has a Mono spaker or Stereo speakers and which DMIC input is used.

Since this is not very user-friendly we do regex matches on the DMI derived
longname to automaticaly select the right options (and to only advertise
those options).

This commit adds support for automatically selecting the right options
on the Lenovo Miix 2 10 tablet. Since this is the first device for which
we do longname matching using a DMIC on DMIC1, this also fixes a fixme :)

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoFix invalid "Regex" Type in various Condition blocks
Hans de Goede [Sun, 28 Jun 2020 17:44:17 +0000 (19:44 +0200)]
Fix invalid "Regex" Type in various Condition blocks

Regex is not a valid Condition type, using it leads to errors like these:

ALSA lib ucm_cond.c:300:(if_eval) unknown If.Condition.Type
ALSA lib main.c:983:(snd_use_case_mgr_open) error: failed to import cht-bsw-rt5672 use case configuration -22
alsaucm: error failed to open sound card cht-bsw-rt5672: Invalid argument

Replacing it with "RegexMatch" fixes this.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoSDP4430: Move to OMAP/abe-twl6040/SDP4430 tree
Jaroslav Kysela [Thu, 25 Jun 2020 15:43:40 +0000 (17:43 +0200)]
SDP4430: Move to OMAP/abe-twl6040/SDP4430 tree

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoGoogleNyan: move to Tegra/max98090
Jaroslav Kysela [Thu, 25 Jun 2020 15:32:40 +0000 (17:32 +0200)]
GoogleNyan: move to Tegra/max98090

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoPandaboard(ES): move to OMAP/abe-twl6040 tree
Jaroslav Kysela [Thu, 25 Jun 2020 15:09:56 +0000 (17:09 +0200)]
Pandaboard(ES): move to OMAP/abe-twl6040 tree

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoVEYRON-I2C: move to Rockchip/max98090 tree
Jaroslav Kysela [Thu, 25 Jun 2020 15:05:25 +0000 (17:05 +0200)]
VEYRON-I2C: move to Rockchip/max98090 tree

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoPAZ00/tegraalc5632: move to Tegra/alc5632 tree
Jaroslav Kysela [Thu, 25 Jun 2020 15:01:05 +0000 (17:01 +0200)]
PAZ00/tegraalc5632: move to Tegra/alc5632 tree

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoDB820c/DB845c: move to Qualcomm/ tree
Jaroslav Kysela [Thu, 25 Jun 2020 14:55:42 +0000 (16:55 +0200)]
DB820c/DB845c: move to Qualcomm/ tree

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoDB410c: move to Qualcomm/apq8016-sbc
Jaroslav Kysela [Thu, 25 Jun 2020 14:39:01 +0000 (16:39 +0200)]
DB410c: move to Qualcomm/apq8016-sbc

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoDAISY-I2S: move to Samsung/snow/snow.conf
Jaroslav Kysela [Thu, 25 Jun 2020 14:06:37 +0000 (16:06 +0200)]
DAISY-I2S: move to Samsung/snow/snow.conf

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoHDA-Intel: add support for AMD acp microphone devices
Jaroslav Kysela [Wed, 24 Jun 2020 11:39:07 +0000 (13:39 +0200)]
HDA-Intel: add support for AMD acp microphone devices

- move the generic HDA code from sof-hda-dsp to HDA-Intel
- add generic codecs/hda/hdmi.conf

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-hda-dsp: fix the device order (Hdmi devices)
Jaroslav Kysela [Wed, 24 Jun 2020 10:34:13 +0000 (12:34 +0200)]
sof-hda-dsp: fix the device order (Hdmi devices)

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-soundwire: rewrite for 'syntax 3'
Jaroslav Kysela [Wed, 24 Jun 2020 10:24:45 +0000 (12:24 +0200)]
sof-soundwire: rewrite for 'syntax 3'

The codec/ sequences must not have the platform specific checks.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-soundwire: cleanups recommended by the ucm-validator
Jaroslav Kysela [Wed, 24 Jun 2020 09:15:42 +0000 (11:15 +0200)]
sof-soundwire: cleanups recommended by the ucm-validator

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-soundwire: initial UCM2 version
Pierre-Louis Bossart [Mon, 16 Mar 2020 21:42:11 +0000 (16:42 -0500)]
sof-soundwire: initial UCM2 version

Add support for sof-soundwire driver, with conditional inclusion of
sections for RT700, RT711, RT5682, RT1308, RT715.

Signed-off-by: Libin Yang <libin.yang@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agobroadwell-rt286: add SOF support
Pierre-Louis Bossart [Tue, 9 Jun 2020 01:15:32 +0000 (20:15 -0500)]
broadwell-rt286: add SOF support

Include legacy configuration using SOF driver name and card check

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agobdw-rt5677: add support for legacy and SOF drivers
Pierre-Louis Bossart [Tue, 9 Jun 2020 01:09:04 +0000 (20:09 -0500)]
bdw-rt5677: add support for legacy and SOF drivers

Use inclusion mechanism defined for Baytrail and reuse same configuration.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-hda-dsp: make the boot init optional for all controls
Jaroslav Kysela [Wed, 24 Jun 2020 08:39:42 +0000 (10:39 +0200)]
sof-hda-dsp: make the boot init optional for all controls

Also don't initialize "Auto-Mute Mode" in the HiFi verb.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-hda-dsp: add initial kcontrol values
Libin Yang [Thu, 21 May 2020 07:45:16 +0000 (03:45 -0400)]
sof-hda-dsp: add initial kcontrol values

This patch adds the initial values of sof-hda-dsp card.

Signed-off-by: Libin Yang <libin.yang@intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-hda-dsp: make Headphone Playback Switch conditional
Kai Vehmanen [Thu, 11 Jun 2020 14:46:07 +0000 (17:46 +0300)]
sof-hda-dsp: make Headphone Playback Switch conditional

The Headphone Playback Switch control is not present in all
HDA codecs. Allow the Headphones definition to work also on
such systems.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm.conf: add support for the kernel module name tree
Jaroslav Kysela [Mon, 22 Jun 2020 15:52:54 +0000 (17:52 +0200)]
ucm.conf: add support for the kernel module name tree

It seems that some ASoC drivers (mainly created from the DT tree)
does not offer any good identification for the common part.
This change adds the sysfs kernel module name lookup to
module/<KernelModuleName>.conf .

Also, modularize V1, V2Name, V2Module blocks. The V1 compatibility
is turned off by default now.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agochtnau8824: merge all possible configurations to HiFi.conf
Jaroslav Kysela [Mon, 22 Jun 2020 15:51:09 +0000 (17:51 +0200)]
chtnau8824: merge all possible configurations to HiFi.conf

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agocht-bsw-rt5672: merge all possible configurations to HiFi.conf
Jaroslav Kysela [Tue, 16 Jun 2020 11:40:21 +0000 (13:40 +0200)]
cht-bsw-rt5672: merge all possible configurations to HiFi.conf

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agochtrt5645: merge all possible configurations to HiFi.conf
Jaroslav Kysela [Tue, 16 Jun 2020 09:33:01 +0000 (11:33 +0200)]
chtrt5645: merge all possible configurations to HiFi.conf

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: use Include (Syntax 3)
Jaroslav Kysela [Fri, 5 Jun 2020 16:20:58 +0000 (18:20 +0200)]
ucm2: use Include (Syntax 3)

Instead the unconditional include, use the Include configuration
directive which can load some files when evaluated (on demand only).

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-hda-dsp: don't fail if Auto-Mute control is not present
Kai Vehmanen [Wed, 10 Jun 2020 14:14:16 +0000 (17:14 +0300)]
sof-hda-dsp: don't fail if Auto-Mute control is not present

The "Auto-Mute Mode" control is not present in all HDA codecs.
The generic SOF HDA UCM file should be robust enough to handle
these cases as well.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agochtrt5645: Add ASUSTeKCOMPUTERINC.-T101HA-1.0.conf symlink to chtrt5645-dmic1.conf
Hans de Goede [Mon, 8 Jun 2020 20:21:42 +0000 (22:21 +0200)]
chtrt5645: Add ASUSTeKCOMPUTERINC.-T101HA-1.0.conf symlink to chtrt5645-dmic1.conf

The Asus T101HA uses a digital mic connected to the dmic1 pin, rather then
the default analog mic on in2 (just like the Asus T100HA).

Add a long name symlink to chtrt5645-dmic1.conf for this, so that
the right config is used.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agobytcr-rt5651: Fix high noise level + soft input on DMIC
Hans de Goede [Mon, 8 Jun 2020 20:21:41 +0000 (22:21 +0200)]
bytcr-rt5651: Fix high noise level + soft input on DMIC

The DMIC needs to have the DMIC ASRC enabled, otherwise capturing audio
from it results in mostly capturing noise + the actual recorded voice
very soft in the background of the noise.

This has been tested on a Point of View P1006W v1.0 tablet, which is the
only RT5651 X86 device using a DMIC that I am aware of.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agobytcr-rt5640: Fix DMIC1 not working when connected over AIF2
Hans de Goede [Mon, 8 Jun 2020 20:21:40 +0000 (22:21 +0200)]
bytcr-rt5640: Fix DMIC1 not working when connected over AIF2

The RT5640 codec has 2 ADC-s which are caled the Stereo ADC and the
Mono ADC (even though the mono ADC seems to be stereo too?). The Stereo
ADC is connected to the AIF1 interface of the codec and the Mono ADC
to the AIF2 interface.

Almost all X86 BYT/CHT design use the AIF1 interface, but a few models
use the AIF2 interface. For this reason the IN?-InternalMic.conf bits
not only select/enable the microphone input on the Stereo ADC, but
also on the Mono ADC, so that the analog mic. inputs also work in devices
using the AIF2 interface.

Before this commit DigitalMics.conf was only setting up the DMIC input
on the Stereo ADC and not on the Mono ADC, causing DMIC1 to not work
when connected over AIF2.

This commit adds selecting / enabling DMIC1 on the Mono ADC.
This fixes the internal microphone not working on the Toshiba Encore WT10A.

Note that for devices which use the AIF1 interface this is a no-op since
the AIF1 interface is not connected to anything, there is no complete
chain so DAPM will not enable any of the elements in the chain.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: fix more indentation issues
Jaroslav Kysela [Fri, 5 Jun 2020 17:01:32 +0000 (19:01 +0200)]
ucm2: fix more indentation issues

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: DB845c: Add ucm for DB845c board
Srinivas Kandagatla [Thu, 5 Mar 2020 13:32:22 +0000 (13:32 +0000)]
ucm2: DB845c: Add ucm for DB845c board

DB845c board by default has two WSA881x speakers and HDMI
audio connections.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: codecs: wsa881x: add codec sequences
Srinivas Kandagatla [Thu, 5 Mar 2020 13:31:12 +0000 (13:31 +0000)]
ucm2: codecs: wsa881x: add codec sequences

Add default, enable/disable codec sequence for wsa881x codec

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: codecs: wcd934x: Add Codec sequences.
Srinivas Kandagatla [Thu, 5 Mar 2020 13:29:44 +0000 (13:29 +0000)]
ucm2: codecs: wcd934x: Add Codec sequences.

Add WCD934x codec sequences to be used by other platforms like DB845c
and Lenovo YOGA C630

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agochtmax98090: add generic chtmax98090.conf and move Quawks init to the generic HiFi...
Jaroslav Kysela [Fri, 29 May 2020 13:48:36 +0000 (15:48 +0200)]
chtmax98090: add generic chtmax98090.conf and move Quawks init to the generic HiFi.conf

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: chtmax98090: add generic HiFi.conf and SOF support
Pierre-Louis Bossart [Thu, 28 May 2020 22:59:01 +0000 (17:59 -0500)]
ucm2: chtmax98090: add generic HiFi.conf and SOF support

Tested on Cyan Chromebook with both SOF and SST drivers.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: enable possible SOF support in profile for Chromebook Asus C300
Jaroslav Kysela [Thu, 28 May 2020 19:07:45 +0000 (21:07 +0200)]
ucm2: enable possible SOF support in profile for Chromebook Asus C300

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: Add profile for Chromebook Asus C300
Takashi Iwai [Tue, 12 May 2020 15:46:14 +0000 (17:46 +0200)]
ucm2: Add profile for Chromebook Asus C300

ASUS Chromebook C300 alias Google QUAWKS is an Intel Baytrail platform
with max98090 codec.  This patch adds the basic UCM snippet for the
max98090 codec and HiFi.conf for this model.

Note that MIC2 is used for the headset mic.  If another model with
this codec uses a different ADC port, we'd need to create another
profile snippet and rename the device.

BugLink: https://apibugzilla.suse.com/show_bug.cgi?id=1171492
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: PAZ - move whole initialization to BootSequence
Jaroslav Kysela [Thu, 28 May 2020 18:50:46 +0000 (20:50 +0200)]
ucm2: PAZ - move whole initialization to BootSequence

We need to remove the custom UCM rules from udev (alsa-utils).
The 'alsactl init' is UCM aware and sufficient to initialize
the soundcard now.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoSOF: bytcht selections
Pierre-Louis Bossart [Tue, 21 Apr 2020 21:32:48 +0000 (16:32 -0500)]
SOF: bytcht selections

Use the SOF driver name to load a config, using a File inclusion based
on the legacy card name.

Suggested-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-bytcht-rt5650: reuse legacy settings
Pierre-Louis Bossart [Mon, 13 Apr 2020 15:53:39 +0000 (10:53 -0500)]
sof-bytcht-rt5650: reuse legacy settings

Just test if controls for the legacy driver are available

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-bytcht-rt5645: reuse legacy settings
Pierre-Louis Bossart [Mon, 13 Apr 2020 15:48:33 +0000 (10:48 -0500)]
sof-bytcht-rt5645: reuse legacy settings

Just test if controls for the legacy driver are available

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-bytcht-nau8824: reuse legacy settings
Pierre-Louis Bossart [Mon, 13 Apr 2020 15:37:03 +0000 (10:37 -0500)]
sof-bytcht-nau8824: reuse legacy settings

Just test if controls for the legacy driver are available

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-bytcht-rt5672: reuse legacy settings
Pierre-Louis Bossart [Mon, 13 Apr 2020 15:29:14 +0000 (10:29 -0500)]
sof-bytcht-rt5672: reuse legacy settings

Just test if controls for the legacy driver are available

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-bytcht-es8316: reuse legacy settings
Pierre-Louis Bossart [Mon, 13 Apr 2020 15:22:10 +0000 (10:22 -0500)]
sof-bytcht-es8316: reuse legacy settings

Just test if controls for the legacy driver are available

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-bytcht-cx2072x: reuse legacy settings
Pierre-Louis Bossart [Mon, 13 Apr 2020 15:17:31 +0000 (10:17 -0500)]
sof-bytcht-cx2072x: reuse legacy settings

Just test if controls for the legacy driver are available

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-bytcht-rt5651: reuse legacy settings
Pierre-Louis Bossart [Mon, 13 Apr 2020 15:09:00 +0000 (10:09 -0500)]
sof-bytcht-rt5651: reuse legacy settings

Just test if controls for the legacy driver are available.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agosof-bytcht-rt5640: reuse legacy settings
Pierre-Louis Bossart [Mon, 13 Apr 2020 15:00:16 +0000 (10:00 -0500)]
sof-bytcht-rt5640: reuse legacy settings

Just test if controls for the legacy driver are available

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: update README.md
Jaroslav Kysela [Wed, 27 May 2020 17:10:31 +0000 (19:10 +0200)]
ucm2: update README.md

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agochtrt5650: add Syntax 2
Jaroslav Kysela [Wed, 27 May 2020 17:01:09 +0000 (19:01 +0200)]
chtrt5650: add Syntax 2

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: add initial ucm.conf for the latest alsa-lib
Jaroslav Kysela [Wed, 27 May 2020 10:28:32 +0000 (12:28 +0200)]
ucm2: add initial ucm.conf for the latest alsa-lib

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm: fix wrong If in sequence in HiFi-dual.conf
Jaroslav Kysela [Mon, 25 May 2020 18:57:43 +0000 (20:57 +0200)]
ucm: fix wrong If in sequence in HiFi-dual.conf

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agobytcr-rt5651: fix the cfg-mic:in1 / cfg-mic:in12 match error
Jaroslav Kysela [Mon, 25 May 2020 15:03:03 +0000 (17:03 +0200)]
bytcr-rt5651: fix the cfg-mic:in1 / cfg-mic:in12 match error

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3 years agoucm2: fix chtrt5650 configuration (ucm-validator)
Jaroslav Kysela [Sat, 23 May 2020 20:28:05 +0000 (22:28 +0200)]
ucm2: fix chtrt5650 configuration (ucm-validator)

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agoAdd initial support for Realtek ALC1220 TRX40 motherboards
Maxim Levitsky [Sun, 3 May 2020 19:31:12 +0000 (22:31 +0300)]
Add initial support for Realtek ALC1220 TRX40 motherboards

Tested with TRX40 Designare but should work on most TRX40 motherboards
Tested with pulseaudio 36a4923f9bd05d4c5e2e8b1765f18edf452b9251
 with fix for 8 channel mixer element applied

Tested with kernel 5.7.0-rc3

The following are the notes of the testing and implementation

* Back speaker works in 5.1 mode, becasue side channel
  shares jack with line-in and by default line-in is configured.
  Once jack retasking will work, it will work automatically
  Same for front mic that can be retasked to line-in

* SPDIF is not tested physically yet. The SPDIF mute mixer control is recognised by
  pulseaudio correctly so profile is correct.

* When all capture inputs are disconnected, pulseaudio thinks that the UCM2 profile
  is invalid and doesn't use it by default. It can be forced to use it by selecting
  it in the pavucontrol. Or you can for now comment out one of 'JackControl' statements,
  to make it think that one of the jacks is always plugged in.

Signed-off-by: Maxim Levitsky <maximlevitsky@gmail.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agoucm2: fix indentation (use tabs)
Jaroslav Kysela [Wed, 22 Apr 2020 10:11:48 +0000 (12:11 +0200)]
ucm2: fix indentation (use tabs)

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agoucm2: remove empty enable/disable sequence sections
Jaroslav Kysela [Tue, 21 Apr 2020 14:54:53 +0000 (16:54 +0200)]
ucm2: remove empty enable/disable sequence sections

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agosof-hda-dsp: change Headphones2 to Mic2
Jaroslav Kysela [Mon, 6 Apr 2020 15:37:20 +0000 (17:37 +0200)]
sof-hda-dsp: change Headphones2 to Mic2

Fixes: https://github.com/alsa-project/alsa-ucm-conf/issues/19

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agochtrt5645: Remove bogus JackHWMute settings
Hans de Goede [Sun, 5 Apr 2020 18:34:53 +0000 (20:34 +0200)]
chtrt5645: Remove bogus JackHWMute settings

There is no reason why the internal microphone or speakers cannot
be used when a headset is plugged in.

The jack does not physically disconnect these, so the JackHWMute settings
are wrong, remove them.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agochtrt5645: Add MEDION-E1239TMD60568-0.1-Wingman.conf symlink to chtrt5645-dmic2.conf
Hans de Goede [Sun, 5 Apr 2020 18:34:52 +0000 (20:34 +0200)]
chtrt5645: Add MEDION-E1239TMD60568-0.1-Wingman.conf symlink to chtrt5645-dmic2.conf

The Medion Akoya E1239T 2-in-1 uses a digital mic connected to the
dmic2 pin, rather then the default analog mic on in2.

Add a long name symlink to chtrt5645-dmic2.conf for this, so that
the right config is used.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agochtrt5645: Add ASUSTeKCOMPUTERINC.-T100HAN-1.0 symlink to chtrt5645-dmic1.conf
Hans de Goede [Sun, 5 Apr 2020 18:34:51 +0000 (20:34 +0200)]
chtrt5645: Add ASUSTeKCOMPUTERINC.-T100HAN-1.0 symlink to chtrt5645-dmic1.conf

We already have a ASUSTeKCOMPUTERINC.-T100HAN-1.0-T100HAN symlink to
chtrt5645-dmic1.conf, but since kernel commit 39870b0dec68 ("ASoC: DMI long
name - avoid to add board name if matches with product name"), the kernel
omits the (second) -T100HAN. So with newer kernels that no longer works.

Arguably this is a kernel regressions, but chances are we already have
some configs depending on the new behavior, so lets fix this on the
UCM2 side by adding a second symlink using the new long name.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agobytcr-rt5651: Fix dmic check in HiFi-Components.conf
Hans de Goede [Sun, 5 Apr 2020 18:34:50 +0000 (20:34 +0200)]
bytcr-rt5651: Fix dmic check in HiFi-Components.conf

The kernel sets cfg-mic:dmic not cfg-mic:dmic1 when a digital mic is
used. The wrong check for cfg-mic:dmic1 causes there to be no "Mic"
device at all, which causes the check for the ConflictingDevices section
of the HeadSet (mic) device to fail like e.g. so:

[hans@localhost ~]$ alsaucm -c bytcr-rt5651 set _verb HiFi set _enadev Speaker
ALSA lib parser.c:1138:(verb_dev_list_add) error: unable to find device 'Mic'
ALSA lib parser.c:1433:(parse_verb_file) error: device management error in verb 'HiFi'
ALSA lib main.c:962:(snd_use_case_mgr_open) error: failed to import bytcr-rt5651 use case configuration -2
alsaucm: error failed to open sound card bytcr-rt5651: No such file or directory

This commit fixes this.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agoupdate README files
Jaroslav Kysela [Mon, 30 Mar 2020 14:51:45 +0000 (16:51 +0200)]
update README files

- UCM validator
- UCM paths for ucm2/

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agohda-dsp: add basic ucm config
Mateusz Gorski [Wed, 18 Mar 2020 10:26:05 +0000 (11:26 +0100)]
hda-dsp: add basic ucm config

Basic UCM configuration for Intel Skylake SST with HDA DSP generic
machine driver enabling codec playback and capture on both HDA codec
and DMIC ports.

Signed-off-by: Mateusz Gorski <mateusz.gorski@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agosof-hda-dsp: Support systems without integrated graphics audio
Kai Vehmanen [Thu, 5 Mar 2020 12:59:56 +0000 (14:59 +0200)]
sof-hda-dsp: Support systems without integrated graphics audio

On systems where integrated graphics audio is not present
or is disabled, the HDMI PCM nodes are disabled. Add rules to
detect these systems by checking presence of HDMI jack controls
with UCM2 rules.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agoucm2: treewide - JackHWMute fixes
Jaroslav Kysela [Sun, 1 Mar 2020 15:12:28 +0000 (16:12 +0100)]
ucm2: treewide - JackHWMute fixes

Fixes: https://github.com/alsa-project/alsa-ucm-conf/issues/14

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agosof-bdw-rt5677: initial port to UCM2
Pierre-Louis Bossart [Thu, 27 Feb 2020 18:40:20 +0000 (12:40 -0600)]
sof-bdw-rt5677: initial port to UCM2

Tested on Pixel 2015/SAMUS Chromebook.

Known limitations:
Left/Right confusion (probably a firmware issue)
PulseAudio does not switch capture devices on headset plug

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agobroadwell-rt286: more conformance and other fixes
David Ward [Sun, 9 Feb 2020 15:06:52 +0000 (10:06 -0500)]
broadwell-rt286: more conformance and other fixes

Remove JackHWMute, because the hardware does not forcibly shut off
the internal speakers or microphone when the jack is in use.

The CaptureMixerElem and CaptureMasterElem devices were swapped. Do
not manually set the "ADC0 Capture Switch" when disabling a capture
device; it will be set automatically instead.

Correct "Handset" to "Headset". Apply maximum gain to the headset
microphone ("AMIC Volume") when in use, based on testing.

Signed-off-by: David Ward <david.ward@gatech.edu>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agoREADME.md: add build status badge
Jaroslav Kysela [Wed, 19 Feb 2020 09:21:04 +0000 (10:21 +0100)]
README.md: add build status badge

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agogithub: create validate workflow
Jaroslav Kysela [Wed, 19 Feb 2020 07:59:57 +0000 (08:59 +0100)]
github: create validate workflow

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agoucm2: treewide - remove Playback and Capture channels=2 assignments
Jaroslav Kysela [Thu, 6 Feb 2020 18:44:07 +0000 (19:44 +0100)]
ucm2: treewide - remove Playback and Capture channels=2 assignments

The value 2 is the default.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agosof-hda-dsp: corrections and fixes
Jaroslav Kysela [Wed, 5 Feb 2020 02:24:00 +0000 (03:24 +0100)]
sof-hda-dsp: corrections and fixes

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agobytcht-es8316: corrections and fixes
Jaroslav Kysela [Wed, 5 Feb 2020 02:19:33 +0000 (03:19 +0100)]
bytcht-es8316: corrections and fixes

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agobytcr-rt5640: corrections and fixes
Jaroslav Kysela [Wed, 5 Feb 2020 02:13:06 +0000 (03:13 +0100)]
bytcr-rt5640: corrections and fixes

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agokblrt5660: corrections and fixes
Jaroslav Kysela [Wed, 5 Feb 2020 01:54:11 +0000 (02:54 +0100)]
kblrt5660: corrections and fixes

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4 years agoPandaBoardES: corrections and fixes
Jaroslav Kysela [Tue, 4 Feb 2020 18:21:47 +0000 (19:21 +0100)]
PandaBoardES: corrections and fixes

Signed-off-by: Jaroslav Kysela <perex@perex.cz>