From f7d97cb564a2ac5517ee7cc933de729e533d659a Mon Sep 17 00:00:00 2001 From: Maarten Zanders Date: Fri, 28 Oct 2022 21:13:01 +0200 Subject: [PATCH] ASoC: simple-mux: add read function During initialisation DAPM tries to read the state of the MUX being connected, resulting in this error log: input-mux: ASoC: error at soc_component_read_no_lock on input-mux: -5 Provide a read function which allows DAPM to read the state of the MUX. Signed-off-by: Maarten Zanders Link: https://lore.kernel.org/r/20221028191303.166115-1-maarten.zanders@mind.be Signed-off-by: Mark Brown --- sound/soc/codecs/simple-mux.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sound/soc/codecs/simple-mux.c b/sound/soc/codecs/simple-mux.c index d30c0d24d90a6..bf67de12d20b7 100644 --- a/sound/soc/codecs/simple-mux.c +++ b/sound/soc/codecs/simple-mux.c @@ -55,6 +55,14 @@ static int simple_mux_control_put(struct snd_kcontrol *kcontrol, e, NULL); } +static unsigned int simple_mux_read(struct snd_soc_component *component, + unsigned int reg) +{ + struct simple_mux *priv = snd_soc_component_get_drvdata(component); + + return priv->mux; +} + static const struct snd_kcontrol_new simple_mux_mux = SOC_DAPM_ENUM_EXT("Muxer", simple_mux_enum, simple_mux_control_get, simple_mux_control_put); @@ -76,6 +84,7 @@ static const struct snd_soc_component_driver simple_mux_component_driver = { .num_dapm_widgets = ARRAY_SIZE(simple_mux_dapm_widgets), .dapm_routes = simple_mux_dapm_routes, .num_dapm_routes = ARRAY_SIZE(simple_mux_dapm_routes), + .read = simple_mux_read, }; static int simple_mux_probe(struct platform_device *pdev) -- 2.30.2