On Wed, 15 Aug 2018 14:59:46 +0200, ylhuajnu@xxxxxxx wrote: > > From: Lihua Yao <ylhuajnu@xxxxxxx> > > ac97->dev is an object of 'struct device' type. It should be initialized > via device_initialize() or device_register(). > > Fixes: 74426fbff66e ("ALSA: ac97: add an ac97 bus") > Signed-off-by: Lihua Yao <ylhuajnu@xxxxxxx> Looks good though a quick glance, but I'd like to get an ack from Robert. Robert? Also check two other patches and runtime PM. thanks, Takashi > --- > sound/ac97/snd_ac97_compat.c | 19 +++++++++++++++++-- > 1 file changed, 17 insertions(+), 2 deletions(-) > > diff --git a/sound/ac97/snd_ac97_compat.c b/sound/ac97/snd_ac97_compat.c > index 61544e0d8de4..8bab44f74bb8 100644 > --- a/sound/ac97/snd_ac97_compat.c > +++ b/sound/ac97/snd_ac97_compat.c > @@ -15,6 +15,11 @@ > > #include "ac97_core.h" > > +static void compat_ac97_release(struct device *dev) > +{ > + kfree(to_ac97_t(dev)); > +} > + > static void compat_ac97_reset(struct snd_ac97 *ac97) > { > struct ac97_codec_device *adev = to_ac97_device(ac97->private_data); > @@ -65,21 +70,31 @@ static struct snd_ac97_bus compat_soc_ac97_bus = { > struct snd_ac97 *snd_ac97_compat_alloc(struct ac97_codec_device *adev) > { > struct snd_ac97 *ac97; > + int ret; > > ac97 = kzalloc(sizeof(struct snd_ac97), GFP_KERNEL); > if (ac97 == NULL) > return ERR_PTR(-ENOMEM); > > - ac97->dev = adev->dev; > ac97->private_data = adev; > ac97->bus = &compat_soc_ac97_bus; > + > + ac97->dev.parent = &adev->dev; > + ac97->dev.release = compat_ac97_release; > + dev_set_name(&ac97->dev, "%s-compat", dev_name(&adev->dev)); > + ret = device_register(&ac97->dev); > + if (ret) { > + put_device(&ac97->dev); > + return ERR_PTR(ret); > + } > + > return ac97; > } > EXPORT_SYMBOL_GPL(snd_ac97_compat_alloc); > > void snd_ac97_compat_release(struct snd_ac97 *ac97) > { > - kfree(ac97); > + device_unregister(&ac97->dev); > } > EXPORT_SYMBOL_GPL(snd_ac97_compat_release); > > -- > 2.17.1 > > > _______________________________________________ > Alsa-devel mailing list > Alsa-devel@xxxxxxxxxxxxxxxx > http://mailman.alsa-project.org/mailman/listinfo/alsa-devel > _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel