linux/sound/soc/qcom
Stephan Gerhold c878ac66db ASoC: qcom: Fix building APQ8016 machine driver without SOUNDWIRE
[ Upstream commit 0cbf1ecd8c ]

Older Qualcomm platforms like APQ8016 do not have hardware support for
SoundWire, so kernel configurations made specifically for those platforms
will usually not have CONFIG_SOUNDWIRE enabled.

Unfortunately commit 8d89cf6ff2 ("ASoC: qcom: cleanup and fix
dependency of QCOM_COMMON") breaks those kernel configurations, because
SOUNDWIRE is now a required dependency for SND_SOC_QCOM_COMMON (and in
turn also SND_SOC_APQ8016_SBC). Trying to migrate such a kernel config
silently disables SND_SOC_APQ8016_SBC and breaks audio functionality.

The soundwire helpers in common.c are only used by two of the Qualcomm
audio machine drivers, so building and requiring CONFIG_SOUNDWIRE for
all platforms is unnecessary.

There is no need to stuff all common code into a single module. Fix the
issue by moving the soundwire helpers to a separate SND_SOC_QCOM_SDW
module/option that is selected only by the machine drivers that make
use of them. This also allows reverting the imply/depends changes from
the previous fix because both SM8250 and SC8280XP already depend on
SOUNDWIRE, so the soundwire helpers will be only built if SOUNDWIRE
is really enabled.

Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Fixes: 8d89cf6ff2 ("ASoC: qcom: cleanup and fix dependency of QCOM_COMMON")
Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Link: https://lore.kernel.org/r/20221231115506.82991-1-stephan@gerhold.net
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2023-01-18 11:58:27 +01:00
..
qdsp6 ASoC: qcom: qdsp6: q6prm: add new clocks 2022-08-17 13:00:28 +01:00
apq8016_sbc.c ASoC: qcom: Update to use set_fmt_new callback 2022-06-06 12:33:42 +01:00
apq8096.c ASoC: qcom: apq8096: Constify static snd_soc_ops 2021-10-01 19:35:05 +01:00
common.c ASoC: qcom: Fix building APQ8016 machine driver without SOUNDWIRE 2023-01-18 11:58:27 +01:00
common.h ASoC: qcom: Fix building APQ8016 machine driver without SOUNDWIRE 2023-01-18 11:58:27 +01:00
Kconfig ASoC: qcom: Fix building APQ8016 machine driver without SOUNDWIRE 2023-01-18 11:58:27 +01:00
lpass-apq8016.c ASoC: qcom: lpass: Fix apq8016 compat string to match yaml 2022-06-28 13:18:30 +01:00
lpass-cdc-dma.c ASoC: qcom: Add lpass CPU driver for codec dma control 2022-02-24 20:21:46 +00:00
lpass-cpu.c ASoC: qcom: lpass-cpu: Fix fallback SD line index handling 2023-01-18 11:58:12 +01:00
lpass-hdmi.c ASoC: qcom: lpass-hdmi: remove useless return 2021-03-10 13:01:49 +00:00
lpass-hdmi.h ASoC: qcom: Add support for lpass hdmi driver 2020-10-08 20:27:34 +01:00
lpass-ipq806x.c ASoC: qcom: lpass-ipq806x: fix bitwidth regmap field 2021-01-20 16:46:47 +00:00
lpass-lpaif-reg.h ASoC: qcom: Add register definition for codec rddma and wrdma 2022-02-24 20:21:42 +00:00
lpass-platform.c ASoC: qcom: lpass-platform: Update VMA access permissions in mmap callback 2022-06-01 12:24:10 +02:00
lpass-sc7180.c ASoC: qcom: Add checks for devm_kcalloc 2022-12-31 13:32:15 +01:00
lpass-sc7280.c ASoC: qcom: lpass-sc7280: Add platform driver for lpass audio 2022-02-24 20:21:48 +00:00
lpass.h ASoC: qcom: Add lpass CPU driver for codec dma control 2022-02-24 20:21:46 +00:00
Makefile ASoC: qcom: Fix building APQ8016 machine driver without SOUNDWIRE 2023-01-18 11:58:27 +01:00
sc7180.c ASoC: qcom: Update to use set_fmt_new callback 2022-06-06 12:33:42 +01:00
sc7280.c ASoC: qcom: Add driver support for audioreach solution 2022-06-28 15:14:25 +01:00
sc8280xp.c ASoC: qcom: Fix building APQ8016 machine driver without SOUNDWIRE 2023-01-18 11:58:27 +01:00
sdm845.c ASoC: qcom: Update to use set_fmt_new callback 2022-06-06 12:33:42 +01:00
sdw.c ASoC: qcom: Fix building APQ8016 machine driver without SOUNDWIRE 2023-01-18 11:58:27 +01:00
sdw.h ASoC: qcom: Fix building APQ8016 machine driver without SOUNDWIRE 2023-01-18 11:58:27 +01:00
sm8250.c ASoC: qcom: Fix building APQ8016 machine driver without SOUNDWIRE 2023-01-18 11:58:27 +01:00
storm.c ASoC: qcom: Set card->owner to avoid warnings 2020-08-21 16:12:10 +01:00