Public bug reported:
[Impact]
On some AMD systems with an RT712-VB SoundWire codec and TAS2783 amplifiers,
the internal microphone and speakers don't show up. The machine driver needed
to enable them is 28114992dd2f ("ASoC: amd: acp: enable TAS2783 and add
RT712-VB SoundWire machine").
That commit makes SND_SOC_AMD_LEGACY_SDW_MACH select SND_SOC_TAS2783_SDW
without checking its dependencies. The codec also needs SND_SOC_SDCA
andEFI. With EFI=n, the build warns:
WARNING: unmet direct dependencies detected for SND_SOC_TAS2783_SDW
Depends on [n]: SOUND [=m] && SND [=m] && SND_SOC [=m] && SOUNDWIRE [=m] &&
SND_SOC_SDCA [=m] && EFI [=n]
Selected by [m]:
- SND_SOC_AMD_LEGACY_SDW_MACH [=m] && ...
The codec is force-enabled when its dependencies are not met. This can
break builds and configs.
[Fix]
Two Kconfig fixes for the above commit. Both are in sound/soc/amd/acp/Kconfig.
d06607bafb36 ASoC: amd: acp: fix TAS2783 SoundWire codec unmet dependencies
Changes the select to "select SND_SOC_TAS2783_SDW if SND_SOC_SDCA && EFI".
4d2b92b82ee8 ASoC: amd: acp: add EFI dependency for selecting TAS2783
Makes SND_SOC_AMD_LEGACY_SDW_MACH depend on EFI.
Both commits are merged upstream in the ASoC tree (Mark Brown). Neither is in a
released v* tag yet.
Links:
https://patch.msgid.link/[email protected]
https://patch.msgid.link/[email protected]
[Test Plan]
Check the config with EFI off:
$ scripts/config --disable EFI
$ make olddefconfig
Without patches: the "unmet direct dependencies detected for
SND_SOC_TAS2783_SDW" warning shows up.
With patches: no warning.
On the Ubuntu config (EFI=y, SDCA=m), check the codec is still built:
$ grep -E 'SND_SOC_TAS2783_SDW|SND_SOC_AMD_LEGACY_SDW_MACH' .config
Both should be =m.
On an affected AMD machine, check the microphone is still present:
$ arecord -l
The internal digital mic capture device should be listed.
[Where problems could occur]
Could break the AMD ACP SoundWire machine driver (snd-acp-sdw-legacy-mach) and
the TAS2783 codec build.
If the Kconfig conditions are wrong, the TAS2783 codec or the machine
driver would not be built. The system would then have no internal
microphone or speakers on the affected AMD systems. The new EFI
dependency would also hide the machine driver in configs without EFI.
Ubuntu kernels enable EFI, so this should not matter for them.
The change only touches Kconfig. It has no runtime code change.
** Affects: linux-oem-7.0 (Ubuntu)
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2170917
Title:
No internal microphone on AMD systems with RT712-VB SoundWire codec
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-oem-7.0/+bug/2170917/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs