[alsa-devel] [PATCH] ASoC: sgtl5000: Use devm_ functions
Julia Lawall
julia.lawall at lip6.fr
Mon Jul 7 16:58:24 CEST 2014
On Mon, 7 Jul 2014, Mark Brown wrote:
> On Sun, Jul 06, 2014 at 12:38:00PM +0530, Himangi Saraogi wrote:
>
> > diff --git a/sound/soc/codecs/sgtl5000.c b/sound/soc/codecs/sgtl5000.c
> > index 249fadb..0efd6d6 100644
> > --- a/sound/soc/codecs/sgtl5000.c
> > +++ b/sound/soc/codecs/sgtl5000.c
> > @@ -841,14 +841,15 @@ static int ldo_regulator_register(struct snd_soc_codec *codec,
> > struct sgtl5000_priv *sgtl5000 = snd_soc_codec_get_drvdata(codec);
> > struct regulator_config config = { };
> >
> > - ldo = kzalloc(sizeof(struct ldo_regulator), GFP_KERNEL);
> > + ldo = devm_kzalloc(codec->dev, sizeof(struct ldo_regulator),
> > + GFP_KERNEL);
>
> You're using the managed functions within the ASoC level probe functions
> which doesn't work - devm_ is only usable as part of the driver model
> binding and unbinding. All this resource allocation needs to be moved
> into the device level probe (which is a better thing anyway) before it
> is converted to devm.
Nevertheless, there is already a call to devm_regulator_bulk_get in
sgtl5000_enable_regulators which calls sgtl5000_replace_vddd_with_ldo
which calls ldo_regulator_register. That call was introduced by
commit 63e54cd9caa3ce03635810608519e2b37d8bc706
Author: Fabio Estevam <fabio.estevam at freescale.com>
Date: Thu Apr 24 14:13:08 2014 -0300
It seems that that patch should be reverted?
julia
More information about the Alsa-devel
mailing list