From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id BA894C43334 for ; Wed, 20 Jul 2022 11:54:43 +0000 (UTC) Received: from alsa1.perex.cz (alsa1.perex.cz [207.180.221.201]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by alsa0.perex.cz (Postfix) with ESMTPS id EC149174E; Wed, 20 Jul 2022 13:53:51 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa0.perex.cz EC149174E DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=alsa-project.org; s=default; t=1658318082; bh=oT3ZxOeN/pKkZcrlFi/1jLO/O1AsUG59ci5MERQKZAg=; h=Date:From:Subject:To:In-Reply-To:References:Cc:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=YM7C9UC64u3AJ+1O7gzzPbuAma0BDZSy7arDzTmKgJMVScp5t6IQtblylPDmZnlDf 6BQfr2hqh5awC2YRO0D0wm4prG90XEhMbhpA+laSliEBxATwbVT5T8xrb0oMHczXrf 1owAkL92sQx7C4QyqBo2KR3l/QAHAIxaWwagYfTU= Received: from alsa1.perex.cz (localhost.localdomain [127.0.0.1]) by alsa1.perex.cz (Postfix) with ESMTP id 98703F80169; Wed, 20 Jul 2022 13:53:51 +0200 (CEST) Received: by alsa1.perex.cz (Postfix, from userid 50401) id 2015AF80269; Wed, 20 Jul 2022 13:53:50 +0200 (CEST) Received: from aposti.net (aposti.net [89.234.176.197]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by alsa1.perex.cz (Postfix) with ESMTPS id 0EA0EF800BA for ; Wed, 20 Jul 2022 13:53:44 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa1.perex.cz 0EA0EF800BA Authentication-Results: alsa1.perex.cz; dkim=pass (1024-bit key) header.d=crapouillou.net header.i=@crapouillou.net header.b="pMvLMo0D" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=crapouillou.net; s=mail; t=1658318023; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=K09VR+cSE8m5Qqo0hYgGalzaeLuxugQm+MZTPFc0mzs=; b=pMvLMo0D2/CPpaCCT1HMTFZQ9TuJRIVZb2u0kKjjWXNyIAMRII1mj5RNX5wjiQJusz72Di Rmw6zq9wrc2hLQOMasqK9IMIahTVkEovn1mb9cp0cdZ2s7rtihbyqxJCzeLBcmmNtHjLx+ pwGRdxkeBBFLiFs5a1hQj5ovjRfLYwk= Date: Wed, 20 Jul 2022 12:53:33 +0100 From: Paul Cercueil Subject: Re: [PATCH v4 07/11] ASoC: jz4740-i2s: Make the PLL clock name SoC-specific To: Aidan MacDonald Message-Id: <9DIBFR.JZ9UUTMAK40G1@crapouillou.net> In-Reply-To: <20220708160244.21933-8-aidanmacdonald.0x0@gmail.com> References: <20220708160244.21933-1-aidanmacdonald.0x0@gmail.com> <20220708160244.21933-8-aidanmacdonald.0x0@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Cc: alsa-devel@alsa-project.org, lgirdwood@gmail.com, linux-kernel@vger.kernel.org, linux-mips@vger.kernel.org, tiwai@suse.com, broonie@kernel.org X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: "Alsa-devel" Hi Aidan, Le ven., juil. 8 2022 at 17:02:40 +0100, Aidan MacDonald=20 a =E9crit : > On some Ingenic SoCs, such as the X1000, there is a programmable > divider used to generate the I2S system clock from a PLL, rather > than a fixed PLL/2 clock. It doesn't make much sense to call the > clock "pll half" on those SoCs, so the clock name should really be > a SoC-dependent value. >=20 > Signed-off-by: Aidan MacDonald Reviewed-by: Paul Cercueil Cheers, -Paul > --- > sound/soc/jz4740/jz4740-i2s.c | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) >=20 > diff --git a/sound/soc/jz4740/jz4740-i2s.c=20 > b/sound/soc/jz4740/jz4740-i2s.c > index 0dcc658b3784..a41398c24d0e 100644 > --- a/sound/soc/jz4740/jz4740-i2s.c > +++ b/sound/soc/jz4740/jz4740-i2s.c > @@ -75,6 +75,8 @@ struct i2s_soc_info { > struct reg_field field_i2sdiv_capture; > struct reg_field field_i2sdiv_playback; >=20 > + const char *pll_clk_name; > + > bool shared_fifo_flush; > }; >=20 > @@ -281,7 +283,7 @@ static int jz4740_i2s_set_sysclk(struct=20 > snd_soc_dai *dai, int clk_id, > clk_set_parent(i2s->clk_i2s, parent); > break; > case JZ4740_I2S_CLKSRC_PLL: > - parent =3D clk_get(NULL, "pll half"); > + parent =3D clk_get(NULL, i2s->soc_info->pll_clk_name); > if (IS_ERR(parent)) > return PTR_ERR(parent); > clk_set_parent(i2s->clk_i2s, parent); > @@ -400,6 +402,7 @@ static const struct i2s_soc_info=20 > jz4740_i2s_soc_info =3D { > .field_tx_fifo_thresh =3D REG_FIELD(JZ_REG_AIC_CONF, 8, 11), > .field_i2sdiv_capture =3D REG_FIELD(JZ_REG_AIC_CLK_DIV, 0, 3), > .field_i2sdiv_playback =3D REG_FIELD(JZ_REG_AIC_CLK_DIV, 0, 3), > + .pll_clk_name =3D "pll half", > .shared_fifo_flush =3D true, > }; >=20 > @@ -409,6 +412,7 @@ static const struct i2s_soc_info=20 > jz4760_i2s_soc_info =3D { > .field_tx_fifo_thresh =3D REG_FIELD(JZ_REG_AIC_CONF, 16, 20), > .field_i2sdiv_capture =3D REG_FIELD(JZ_REG_AIC_CLK_DIV, 0, 3), > .field_i2sdiv_playback =3D REG_FIELD(JZ_REG_AIC_CLK_DIV, 0, 3), > + .pll_clk_name =3D "pll half", > }; >=20 > static struct snd_soc_dai_driver jz4770_i2s_dai =3D { > @@ -435,6 +439,7 @@ static const struct i2s_soc_info=20 > jz4770_i2s_soc_info =3D { > .field_tx_fifo_thresh =3D REG_FIELD(JZ_REG_AIC_CONF, 16, 20), > .field_i2sdiv_capture =3D REG_FIELD(JZ_REG_AIC_CLK_DIV, 8, 11), > .field_i2sdiv_playback =3D REG_FIELD(JZ_REG_AIC_CLK_DIV, 0, 3), > + .pll_clk_name =3D "pll half", > }; >=20 > static const struct i2s_soc_info jz4780_i2s_soc_info =3D { > @@ -443,6 +448,7 @@ static const struct i2s_soc_info=20 > jz4780_i2s_soc_info =3D { > .field_tx_fifo_thresh =3D REG_FIELD(JZ_REG_AIC_CONF, 16, 20), > .field_i2sdiv_capture =3D REG_FIELD(JZ_REG_AIC_CLK_DIV, 8, 11), > .field_i2sdiv_playback =3D REG_FIELD(JZ_REG_AIC_CLK_DIV, 0, 3), > + .pll_clk_name =3D "pll half", > }; >=20 > static const struct snd_soc_component_driver jz4740_i2s_component =3D { > -- > 2.35.1 >=20