Re: kismet: WARNING: unmet direct dependencies detected for SND_SOC_MAX98357A when selected by SND_SOC_INTEL_SOF_CS42L42_MACH

From: Pierre-Louis Bossart
Date: Wed May 11 2022 - 16:07:45 EST



>>>> kismet: WARNING: unmet direct dependencies detected for
>> SND_SOC_MAX98357A when selected by SND_SOC_INTEL_SOF_CS42L42_MACH
>>
>>    WARNING: unmet direct dependencies detected for SND_SOC_MAX98357A
>>      Depends on [n]: SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] &&
>> GPIOLIB [=n]
>>      Selected by [y]:
>>      - SND_SOC_INTEL_SOF_CS42L42_MACH [=y] && SOUND [=y] && !UML && SND
>> [=y] && SND_SOC [=y] && SND_SOC_INTEL_MACH [=y] && (SND_SOC_SOF_HDA_LINK
>> [=y] || SND_SOC_SOF_BAYTRAIL [=n]) && I2C [=y] && ACPI [=y] &&
>> SND_HDA_CODEC_HDMI [=y] && SND_SOC_SOF_HDA_AUDIO_CODEC [=y] &&
>> (MFD_INTEL_LPSS [=y] || COMPILE_TEST [=n])
>
> I can reproduce this, but I question the hard dependency on GPIOLIB in
> the amplifier Kconfig:
>
> max98357a->sdmode = devm_gpiod_get_optional(&pdev->dev,
> "sdmode", GPIOD_OUT_LOW);
>
> If the gpio is optional, max98357a.c should build and compile without
> GPIOLIB, no?

The warning goes away with the patch suggested in
https://github.com/thesofproject/linux/pull/3646

diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig

index b106e55170904..8536773548090 100644

--- a/sound/soc/codecs/Kconfig

+++ b/sound/soc/codecs/Kconfig

@@ -986,7 +986,6 @@ config SND_SOC_MAX98095



config SND_SOC_MAX98357A

tristate "Maxim MAX98357A CODEC"

- depends on GPIOLIB



config SND_SOC_MAX98371

tristate