Message ID | 20241117232100.23760-1-spasswolf@web.de (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | ASoC: qcom: apq8016_sbc: Fix second argument of apq8016_dai_init() | expand |
On Mon, Nov 18, 2024 at 12:20:58AM +0100, Bert Karwatzki wrote: > Since commit a78a42fb48b8 the second argument of apq8016_dai_init() has > to be an lpass id returned by qdsp6_dai_get_lpass_id(). This breaks the build: /build/stage/linux/sound/soc/qcom/apq8016_sbc.c: In function ‘apq8016_sbc_dai_in it’: /build/stage/linux/sound/soc/qcom/apq8016_sbc.c:153:38: error: implicit declarat ion of function ‘qdsp6_dai_get_lpass_id’ [-Werror=implicit-function-declaration] 153 | return apq8016_dai_init(rtd, qdsp6_dai_get_lpass_id(cpu_dai)); | ^~~~~~~~~~~~~~~~~~~~~~ /build/stage/linux/sound/soc/qcom/apq8016_sbc.c: At top level: /build/stage/linux/sound/soc/qcom/apq8016_sbc.c:165:12: error: static declaratio n of ‘qdsp6_dai_get_lpass_id’ follows non-static declaration 165 | static int qdsp6_dai_get_lpass_id(struct snd_soc_dai *cpu_dai) | ^~~~~~~~~~~~~~~~~~~~~~ /build/stage/linux/sound/soc/qcom/apq8016_sbc.c:153:38: note: previous implicit declaration of ‘qdsp6_dai_get_lpass_id’ with type ‘int()’ 153 | return apq8016_dai_init(rtd, qdsp6_dai_get_lpass_id(cpu_dai)); | ^~~~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors
Hi, On Mon, Nov 18, 2024 at 12:20:58AM +0100, Bert Karwatzki wrote: > Since commit a78a42fb48b8 the second argument of apq8016_dai_init() has > to be an lpass id returned by qdsp6_dai_get_lpass_id(). > > Fixes: a78a42fb48b8 ("ASoC: qcom: apq8016_sbc: Allow routing audio through QDSP6") > > Signed-off-by: Bert Karwatzki <spasswolf@web.de> > --- > sound/soc/qcom/apq8016_sbc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/sound/soc/qcom/apq8016_sbc.c b/sound/soc/qcom/apq8016_sbc.c > index 3023cf180a75..ddfcd4616895 100644 > --- a/sound/soc/qcom/apq8016_sbc.c > +++ b/sound/soc/qcom/apq8016_sbc.c > @@ -150,7 +150,7 @@ static int apq8016_sbc_dai_init(struct snd_soc_pcm_runtime *rtd) > { > struct snd_soc_dai *cpu_dai = snd_soc_rtd_to_cpu(rtd, 0); > > - return apq8016_dai_init(rtd, cpu_dai->id); > + return apq8016_dai_init(rtd, qdsp6_dai_get_lpass_id(cpu_dai)); > } > Hm no, the code is correct the way it is. There are two cases handled by this driver: - ADSP bypass (lpass-* drivers, qcom,apq8016-sbc-sndcard): This one uses the LPASS IDs as DAI IDs, so cpu_dai->id already contains the correct value. - ADSP (qdsp6 drivers, qcom,msm8916-qdsp6-sndcard): This one uses the QDSP6 IDs (e.g. PRIMARY_MI2S_RX/TX instead of MI2S_PRIMARY), so qdsp6_dai_get_lpass_id() is used to translate that to the LPASS IDs. The code you are changing here handles the first case (ADSP bypass), the DAI IDs do not need any translation there. Thanks, Stephan
diff --git a/sound/soc/qcom/apq8016_sbc.c b/sound/soc/qcom/apq8016_sbc.c index 3023cf180a75..ddfcd4616895 100644 --- a/sound/soc/qcom/apq8016_sbc.c +++ b/sound/soc/qcom/apq8016_sbc.c @@ -150,7 +150,7 @@ static int apq8016_sbc_dai_init(struct snd_soc_pcm_runtime *rtd) { struct snd_soc_dai *cpu_dai = snd_soc_rtd_to_cpu(rtd, 0); - return apq8016_dai_init(rtd, cpu_dai->id); + return apq8016_dai_init(rtd, qdsp6_dai_get_lpass_id(cpu_dai)); } static void apq8016_sbc_add_ops(struct snd_soc_card *card)
Since commit a78a42fb48b8 the second argument of apq8016_dai_init() has to be an lpass id returned by qdsp6_dai_get_lpass_id(). Fixes: a78a42fb48b8 ("ASoC: qcom: apq8016_sbc: Allow routing audio through QDSP6") Signed-off-by: Bert Karwatzki <spasswolf@web.de> --- sound/soc/qcom/apq8016_sbc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.45.2 I came across this while I was trying to adapt this driver to another sound card. Bert Karwatzki