[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAA+D8AMRGRRk6FzdiqaHAP1=dPJngNgmdGmU59vrroXA9BMyXw@mail.gmail.com>
Date: Tue, 9 Feb 2021 17:16:16 +0800
From: Shengjiu Wang <shengjiu.wang@...il.com>
To: Mark Brown <broonie@...nel.org>
Cc: Shengjiu Wang <shengjiu.wang@....com>,
"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
<devicetree@...r.kernel.org>, alsa-devel@...a-project.org,
Timur Tabi <timur@...nel.org>,
Liam Girdwood <lgirdwood@...il.com>,
linuxppc-dev@...ts.ozlabs.org, Xiubo Li <Xiubo.Lee@...il.com>,
linux-kernel <linux-kernel@...r.kernel.org>,
Takashi Iwai <tiwai@...e.com>,
Nicolin Chen <nicoleotsuka@...il.com>,
Rob Herring <robh+dt@...nel.org>,
Fabio Estevam <festevam@...il.com>
Subject: Re: [PATCH v2 2/7] ASoC: fsl_rpmsg: Add CPU DAI driver for audio base
on rpmsg
On Mon, Feb 8, 2021 at 7:53 PM Mark Brown <broonie@...nel.org> wrote:
>
> On Sun, Feb 07, 2021 at 06:23:50PM +0800, Shengjiu Wang wrote:
>
> > +static int fsl_rpmsg_hw_params(struct snd_pcm_substream *substream,
> > + struct snd_pcm_hw_params *params,
> > + struct snd_soc_dai *dai)
> > +{
>
> ...
>
> > + ret = clk_prepare_enable(rpmsg->mclk);
> > + if (ret)
> > + dev_err(dai->dev, "failed to enable mclk: %d\n", ret);
> > +
> > + return ret;
> > +}
> > +
> > +static int fsl_rpmsg_hw_free(struct snd_pcm_substream *substream,
> > + struct snd_soc_dai *dai)
> > +{
> > + struct fsl_rpmsg *rpmsg = snd_soc_dai_get_drvdata(dai);
> > +
> > + clk_disable_unprepare(rpmsg->mclk);
>
> hw_params() can be called multiple times and there's no need for it to
> be balanced with hw_free(), I'd move this to a different callback (DAPM
> should work well).
Which callback should I use? Is there an example?
best regards
wang shengjiu
Powered by blists - more mailing lists