Re: [PATCH -next] ASoC: Intel: bytcht_es8316: Set correct platform drvdata in snd_byt_cht_es8316_mc_probe()
On Wed, Jan 09, 2019 at 10:33:38AM +0100, Hans de Goede wrote: > Hi, > > On 09-01-19 10:29, Dan Carpenter wrote: > > I think the correct fix is actually this (untested): > > Right, I'm pretty sure the soc framework depends on dev_get_drvdata > returning the snd_soc_card and I forgot about this when adding > the remove function. > > Wei Yongjun, thank you for catching this. > > Dan, thank you for the correct version of the patch :) > > Dan, can you do an official submission of the correct version of the > patch, with a Reported-by: Wei Yongjun > or shall I submit your version upstream ? Wei can resend and get authorship credit. I only wrote the patch by accident because it was easier than explaining. (Or if you really don't want to, Wei, then message me and I will do it). regards, dan carpenter
Re: [PATCH -next] ASoC: Intel: bytcht_es8316: Set correct platform drvdata in snd_byt_cht_es8316_mc_probe()
Hi, On 09-01-19 10:29, Dan Carpenter wrote: I think the correct fix is actually this (untested): Right, I'm pretty sure the soc framework depends on dev_get_drvdata returning the snd_soc_card and I forgot about this when adding the remove function. Wei Yongjun, thank you for catching this. Dan, thank you for the correct version of the patch :) Dan, can you do an official submission of the correct version of the patch, with a Reported-by: Wei Yongjun or shall I submit your version upstream ? Regards, Hans diff --git a/sound/soc/intel/boards/bytcht_es8316.c b/sound/soc/intel/boards/bytcht_es8316.c index cdf2061e7613..fa9c4cf97686 100644 --- a/sound/soc/intel/boards/bytcht_es8316.c +++ b/sound/soc/intel/boards/bytcht_es8316.c @@ -544,7 +544,8 @@ static int snd_byt_cht_es8316_mc_probe(struct platform_device *pdev) static int snd_byt_cht_es8316_mc_remove(struct platform_device *pdev) { - struct byt_cht_es8316_private *priv = platform_get_drvdata(pdev); + struct snd_soc_card *card = platform_get_drvdata(pdev); + struct byt_cht_es8316_private *priv = snd_soc_card_get_drvdata(card); gpiod_put(priv->speaker_en_gpio); return 0;
Re: [PATCH -next] ASoC: Intel: bytcht_es8316: Set correct platform drvdata in snd_byt_cht_es8316_mc_probe()
I think the correct fix is actually this (untested): diff --git a/sound/soc/intel/boards/bytcht_es8316.c b/sound/soc/intel/boards/bytcht_es8316.c index cdf2061e7613..fa9c4cf97686 100644 --- a/sound/soc/intel/boards/bytcht_es8316.c +++ b/sound/soc/intel/boards/bytcht_es8316.c @@ -544,7 +544,8 @@ static int snd_byt_cht_es8316_mc_probe(struct platform_device *pdev) static int snd_byt_cht_es8316_mc_remove(struct platform_device *pdev) { - struct byt_cht_es8316_private *priv = platform_get_drvdata(pdev); + struct snd_soc_card *card = platform_get_drvdata(pdev); + struct byt_cht_es8316_private *priv = snd_soc_card_get_drvdata(card); gpiod_put(priv->speaker_en_gpio); return 0;