[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <945edee7-f1c4-42ba-b4c6-c600cbdd70cc@gmail.com>
Date: Tue, 20 Aug 2024 11:40:14 +0200
From: Konrad Dybcio <konradybcio@...il.com>
To: Adam Skladowski <a39.skl@...il.com>,
Srinivas Kandagatla <srinivas.kandagatla@...aro.org>,
Banajit Goswami <bgoswami@...cinc.com>, Liam Girdwood <lgirdwood@...il.com>,
Mark Brown <broonie@...nel.org>, Jaroslav Kysela <perex@...ex.cz>,
Takashi Iwai <tiwai@...e.com>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor Dooley
<conor+dt@...nel.org>, Konrad Dybcio <konradybcio@...nel.org>,
Stephan Gerhold <stephan@...hold.net>
Cc: alsa-devel@...a-project.org, linux-arm-msm@...r.kernel.org,
linux-sound@...r.kernel.org, linux-kernel@...r.kernel.org,
devicetree@...r.kernel.org
Subject: Re: [PATCH v3 7/8] ASoC: qcom: apq8016_sbc: Add support for msm8976
SoC
On 31.07.2024 5:25 PM, Adam Skladowski wrote:
> Introduce support for audio card on MSM8976 platform.
> While MSM8976 falls into v1 category with MSM8916, digitial codec clock
> is not available in GCC so we have to set it in machine driver.
> For that reason for V1 clocks new boolean is added to check
> if we need to enable codec clock.
>
> Signed-off-by: Adam Skladowski <a39.skl@...il.com>
> ---
> sound/soc/qcom/apq8016_sbc.c | 28 ++++++++++++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
> diff --git a/sound/soc/qcom/apq8016_sbc.c b/sound/soc/qcom/apq8016_sbc.c
> index 3ed35beb671a..8219d4d55625 100644
> --- a/sound/soc/qcom/apq8016_sbc.c
> +++ b/sound/soc/qcom/apq8016_sbc.c
> @@ -35,6 +35,7 @@ struct apq8016_sbc_data {
> struct snd_soc_jack jack;
> bool jack_setup;
> enum afe_clk_api q6afe_clk_ver;
> + bool dig_cdc_mclk_en;
> int mi2s_clk_count[MI2S_COUNT];
> };
>
> @@ -242,6 +243,16 @@ static int msm8916_qdsp6_startup(struct snd_pcm_substream *substream)
>
> if (++data->mi2s_clk_count[mi2s] > 1)
> return 0;
> + /*
> + * On newer legacy SoC (MSM8976) lpass codec clocks are not available in gcc region
> + * so we have to request clock from machine driver using V1 API)
> + */
> + if (data->q6afe_clk_ver == Q6AFE_CLK_V1 &&
> + data->dig_cdc_mclk_en) {
> + ret = snd_soc_dai_set_sysclk(cpu_dai, LPAIF_DIG_CLK, DEFAULT_MCLK_RATE, 0);
Double space here and below
Konrad
Powered by blists - more mailing lists