linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] Add remove path for Tegra audio graph card
@ 2021-02-03 16:09 Sameer Pujar
  2021-02-03 16:09 ` [PATCH 1/2] ASoC: audio-graph: Export graph_remove() function Sameer Pujar
  2021-02-03 16:09 ` [PATCH 2/2] ASoC: tegra: Add driver remove() callback Sameer Pujar
  0 siblings, 2 replies; 10+ messages in thread
From: Sameer Pujar @ 2021-02-03 16:09 UTC (permalink / raw)
  To: broonie
  Cc: thierry.reding, jonathanh, kuninori.morimoto.gx, alsa-devel,
	linux-tegra, linux-kernel, sharadg, Sameer Pujar

Audio graph driver cleans up phandle references of CPU/CODEC nodes in
graph_remove() path. As Tegra graph card driver is based on this
populate remove callback for it.

Sameer Pujar (2):
  ASoC: audio-graph: Export graph_remove() function
  ASoC: tegra: Add driver remove() callback

 include/sound/graph_card.h               | 2 ++
 sound/soc/generic/audio-graph-card.c     | 3 ++-
 sound/soc/tegra/tegra_audio_graph_card.c | 3 ++-
 3 files changed, 6 insertions(+), 2 deletions(-)

-- 
2.7.4


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH 1/2] ASoC: audio-graph: Export graph_remove() function
  2021-02-03 16:09 [PATCH 0/2] Add remove path for Tegra audio graph card Sameer Pujar
@ 2021-02-03 16:09 ` Sameer Pujar
  2021-02-03 16:19   ` Mark Brown
  2021-02-03 22:31   ` Kuninori Morimoto
  2021-02-03 16:09 ` [PATCH 2/2] ASoC: tegra: Add driver remove() callback Sameer Pujar
  1 sibling, 2 replies; 10+ messages in thread
From: Sameer Pujar @ 2021-02-03 16:09 UTC (permalink / raw)
  To: broonie
  Cc: thierry.reding, jonathanh, kuninori.morimoto.gx, alsa-devel,
	linux-tegra, linux-kernel, sharadg, Sameer Pujar

Audio graph based sound card drivers can call graph_remove() function
for cleanups during driver removal. To facilitate this export above
mentioned function.

Signed-off-by: Sameer Pujar <spujar@nvidia.com>
Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
---
 include/sound/graph_card.h           | 2 ++
 sound/soc/generic/audio-graph-card.c | 3 ++-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/include/sound/graph_card.h b/include/sound/graph_card.h
index bbb5a13..dfa8e56 100644
--- a/include/sound/graph_card.h
+++ b/include/sound/graph_card.h
@@ -13,4 +13,6 @@ int graph_card_probe(struct snd_soc_card *card);
 
 int graph_parse_of(struct asoc_simple_priv *priv, struct device *dev);
 
+int graph_remove(struct platform_device *pdev);
+
 #endif /* __GRAPH_CARD_H */
diff --git a/sound/soc/generic/audio-graph-card.c b/sound/soc/generic/audio-graph-card.c
index 16a04a6..93f6d57f 100644
--- a/sound/soc/generic/audio-graph-card.c
+++ b/sound/soc/generic/audio-graph-card.c
@@ -744,12 +744,13 @@ static int graph_probe(struct platform_device *pdev)
 	return graph_parse_of(priv, dev);
 }
 
-static int graph_remove(struct platform_device *pdev)
+int graph_remove(struct platform_device *pdev)
 {
 	struct snd_soc_card *card = platform_get_drvdata(pdev);
 
 	return asoc_simple_clean_reference(card);
 }
+EXPORT_SYMBOL_GPL(graph_remove);
 
 static const struct of_device_id graph_of_match[] = {
 	{ .compatible = "audio-graph-card", },
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 2/2] ASoC: tegra: Add driver remove() callback
  2021-02-03 16:09 [PATCH 0/2] Add remove path for Tegra audio graph card Sameer Pujar
  2021-02-03 16:09 ` [PATCH 1/2] ASoC: audio-graph: Export graph_remove() function Sameer Pujar
@ 2021-02-03 16:09 ` Sameer Pujar
  1 sibling, 0 replies; 10+ messages in thread
From: Sameer Pujar @ 2021-02-03 16:09 UTC (permalink / raw)
  To: broonie
  Cc: thierry.reding, jonathanh, kuninori.morimoto.gx, alsa-devel,
	linux-tegra, linux-kernel, sharadg, Sameer Pujar

There is cleanup required, related to release of phandles, during driver
removal and hence point remove function pointer to graph_remove().

Fixes: 202e2f774543 ("ASoC: tegra: Add audio graph based card driver")
Signed-off-by: Sameer Pujar <spujar@nvidia.com>
---
 sound/soc/tegra/tegra_audio_graph_card.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/sound/soc/tegra/tegra_audio_graph_card.c b/sound/soc/tegra/tegra_audio_graph_card.c
index 9e43f16..f43d302 100644
--- a/sound/soc/tegra/tegra_audio_graph_card.c
+++ b/sound/soc/tegra/tegra_audio_graph_card.c
@@ -2,7 +2,7 @@
 //
 // tegra_audio_graph_card.c - Audio Graph based Tegra Machine Driver
 //
-// Copyright (c) 2020 NVIDIA CORPORATION.  All rights reserved.
+// Copyright (c) 2020-2021 NVIDIA CORPORATION.  All rights reserved.
 
 #include <linux/math64.h>
 #include <linux/module.h>
@@ -243,6 +243,7 @@ static struct platform_driver tegra_audio_graph_card = {
 		.of_match_table = graph_of_tegra_match,
 	},
 	.probe = tegra_audio_graph_probe,
+	.remove = graph_remove,
 };
 module_platform_driver(tegra_audio_graph_card);
 
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/2] ASoC: audio-graph: Export graph_remove() function
  2021-02-03 16:09 ` [PATCH 1/2] ASoC: audio-graph: Export graph_remove() function Sameer Pujar
@ 2021-02-03 16:19   ` Mark Brown
  2021-02-03 16:39     ` Sameer Pujar
  2021-02-03 22:31   ` Kuninori Morimoto
  1 sibling, 1 reply; 10+ messages in thread
From: Mark Brown @ 2021-02-03 16:19 UTC (permalink / raw)
  To: Sameer Pujar
  Cc: thierry.reding, jonathanh, kuninori.morimoto.gx, alsa-devel,
	linux-tegra, linux-kernel, sharadg

[-- Attachment #1: Type: text/plain, Size: 183 bytes --]

On Wed, Feb 03, 2021 at 09:39:34PM +0530, Sameer Pujar wrote:

> +int graph_remove(struct platform_device *pdev);

I think this needs better namespacing if it's going to be exported.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Re: [PATCH 1/2] ASoC: audio-graph: Export graph_remove() function
  2021-02-03 16:19   ` Mark Brown
@ 2021-02-03 16:39     ` Sameer Pujar
  2021-02-03 17:24       ` Mark Brown
  0 siblings, 1 reply; 10+ messages in thread
From: Sameer Pujar @ 2021-02-03 16:39 UTC (permalink / raw)
  To: Mark Brown
  Cc: thierry.reding, jonathanh, kuninori.morimoto.gx, alsa-devel,
	linux-tegra, linux-kernel, sharadg



On 2/3/2021 9:49 PM, Mark Brown wrote:
> On Wed, Feb 03, 2021 at 09:39:34PM +0530, Sameer Pujar wrote:
>
>> +int graph_remove(struct platform_device *pdev);
> I think this needs better namespacing if it's going to be exported.

audio_graph_remove() can be a better choice?

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Re: [PATCH 1/2] ASoC: audio-graph: Export graph_remove() function
  2021-02-03 16:39     ` Sameer Pujar
@ 2021-02-03 17:24       ` Mark Brown
  2021-02-03 22:33         ` Kuninori Morimoto
  0 siblings, 1 reply; 10+ messages in thread
From: Mark Brown @ 2021-02-03 17:24 UTC (permalink / raw)
  To: Sameer Pujar
  Cc: thierry.reding, jonathanh, kuninori.morimoto.gx, alsa-devel,
	linux-tegra, linux-kernel, sharadg

[-- Attachment #1: Type: text/plain, Size: 376 bytes --]

On Wed, Feb 03, 2021 at 10:09:01PM +0530, Sameer Pujar wrote:
> On 2/3/2021 9:49 PM, Mark Brown wrote:
> > On Wed, Feb 03, 2021 at 09:39:34PM +0530, Sameer Pujar wrote:

> > > +int graph_remove(struct platform_device *pdev);

> > I think this needs better namespacing if it's going to be exported.

> audio_graph_remove() can be a better choice?

Yeah, that looks reasonable.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/2] ASoC: audio-graph: Export graph_remove() function
  2021-02-03 16:09 ` [PATCH 1/2] ASoC: audio-graph: Export graph_remove() function Sameer Pujar
  2021-02-03 16:19   ` Mark Brown
@ 2021-02-03 22:31   ` Kuninori Morimoto
  2021-02-04  3:39     ` Sameer Pujar
  1 sibling, 1 reply; 10+ messages in thread
From: Kuninori Morimoto @ 2021-02-03 22:31 UTC (permalink / raw)
  To: Sameer Pujar
  Cc: broonie, thierry.reding, jonathanh, alsa-devel, linux-tegra,
	linux-kernel, sharadg


Hi Sameer

> Audio graph based sound card drivers can call graph_remove() function
> for cleanups during driver removal. To facilitate this export above
> mentioned function.
> 
> Signed-off-by: Sameer Pujar <spujar@nvidia.com>
> Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
(snip)
> -static int graph_remove(struct platform_device *pdev)
> +int graph_remove(struct platform_device *pdev)
>  {
>  	struct snd_soc_card *card = platform_get_drvdata(pdev);
>  
>  	return asoc_simple_clean_reference(card);
>  }
> +EXPORT_SYMBOL_GPL(graph_remove);

Not a big deal, but
it is just calling asoc_simple_clean_reference() which is
already global function.

Thank you for your help !!

Best regards
---
Kuninori Morimoto

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/2] ASoC: audio-graph: Export graph_remove() function
  2021-02-03 17:24       ` Mark Brown
@ 2021-02-03 22:33         ` Kuninori Morimoto
  2021-02-04  3:45           ` Sameer Pujar
  0 siblings, 1 reply; 10+ messages in thread
From: Kuninori Morimoto @ 2021-02-03 22:33 UTC (permalink / raw)
  To: Mark Brown
  Cc: Sameer Pujar, thierry.reding, jonathanh, alsa-devel, linux-tegra,
	linux-kernel, sharadg


Hi

> > > > +int graph_remove(struct platform_device *pdev);
> 
> > > I think this needs better namespacing if it's going to be exported.
> 
> > audio_graph_remove() can be a better choice?
> 
> Yeah, that looks reasonable.

Nice naming I think.
In such case,  update also graph_parse_of() is nice idea for me.

	- int graph_parse_of(...)
	+ int audio_graph_parse_of()

Thank you for your help !!

Best regards
---
Kuninori Morimoto

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/2] ASoC: audio-graph: Export graph_remove() function
  2021-02-03 22:31   ` Kuninori Morimoto
@ 2021-02-04  3:39     ` Sameer Pujar
  0 siblings, 0 replies; 10+ messages in thread
From: Sameer Pujar @ 2021-02-04  3:39 UTC (permalink / raw)
  To: Kuninori Morimoto
  Cc: broonie, thierry.reding, jonathanh, alsa-devel, linux-tegra,
	linux-kernel, sharadg



On 2/4/2021 4:01 AM, Kuninori Morimoto wrote:
>> Audio graph based sound card drivers can call graph_remove() function
>> for cleanups during driver removal. To facilitate this export above
>> mentioned function.
>>
>> Signed-off-by: Sameer Pujar <spujar@nvidia.com>
>> Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
> (snip)
>> -static int graph_remove(struct platform_device *pdev)
>> +int graph_remove(struct platform_device *pdev)
>>   {
>>        struct snd_soc_card *card = platform_get_drvdata(pdev);
>>
>>        return asoc_simple_clean_reference(card);
>>   }
>> +EXPORT_SYMBOL_GPL(graph_remove);
> Not a big deal, but
> it is just calling asoc_simple_clean_reference() which is
> already global function.

Yes that is true, but idea was to put dependency on graph_remove() so 
that any additions/changes here in future will be automatically taken 
care for Tegra graph card.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/2] ASoC: audio-graph: Export graph_remove() function
  2021-02-03 22:33         ` Kuninori Morimoto
@ 2021-02-04  3:45           ` Sameer Pujar
  0 siblings, 0 replies; 10+ messages in thread
From: Sameer Pujar @ 2021-02-04  3:45 UTC (permalink / raw)
  To: Kuninori Morimoto, Mark Brown
  Cc: thierry.reding, jonathanh, alsa-devel, linux-tegra, linux-kernel,
	sharadg



On 2/4/2021 4:03 AM, Kuninori Morimoto wrote:
> External email: Use caution opening links or attachments
>
>
> Hi
>
>>>>> +int graph_remove(struct platform_device *pdev);
>>>> I think this needs better namespacing if it's going to be exported.
>>> audio_graph_remove() can be a better choice?
>> Yeah, that looks reasonable.
> Nice naming I think.
> In such case,  update also graph_parse_of() is nice idea for me.
>
>          - int graph_parse_of(...)
>          + int audio_graph_parse_of()

OK, Will update following.

graph_remove()     --> audio_graph_remove()
graph_parse_of()   --> audio_graph_parse_of()
graph_card_probe() --> audio_graph_card_probe()



^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2021-02-04  3:47 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-03 16:09 [PATCH 0/2] Add remove path for Tegra audio graph card Sameer Pujar
2021-02-03 16:09 ` [PATCH 1/2] ASoC: audio-graph: Export graph_remove() function Sameer Pujar
2021-02-03 16:19   ` Mark Brown
2021-02-03 16:39     ` Sameer Pujar
2021-02-03 17:24       ` Mark Brown
2021-02-03 22:33         ` Kuninori Morimoto
2021-02-04  3:45           ` Sameer Pujar
2021-02-03 22:31   ` Kuninori Morimoto
2021-02-04  3:39     ` Sameer Pujar
2021-02-03 16:09 ` [PATCH 2/2] ASoC: tegra: Add driver remove() callback Sameer Pujar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).