diff mbox

[05/39,v2] ASoC: simple-card-utils: add asoc_simple_card_parse_tdm()

Message ID 878tyqsj48.wl%kuninori.morimoto.gx@renesas.com (mailing list archive)
State Changes Requested
Delegated to: Geert Uytterhoeven
Headers show

Commit Message

Kuninori Morimoto May 31, 2016, 9 a.m. UTC
From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>

simple-card is supporting TDM.
This patch makes this method simple style standard.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
---
 include/sound/simple_card_utils.h     | 12 ++++++++++++
 sound/soc/generic/simple-card-utils.c | 11 +++++++++++
 2 files changed, 23 insertions(+)

Comments

Mark Brown June 29, 2016, 6:11 p.m. UTC | #1
On Tue, May 31, 2016 at 09:00:40AM +0000, Kuninori Morimoto wrote:

> +int asoc_simple_card_parse_tdm(struct device_node *port_np,
> +			       struct asoc_simple_dai *simple_dai)
> +{
> +	return snd_soc_of_parse_tdm_slot(port_np,
> +					 &simple_dai->tx_slot_mask,
> +					 &simple_dai->rx_slot_mask,
> +					 &simple_dai->slots,
> +					 &simple_dai->slot_width);
> +}
> +EXPORT_SYMBOL_GPL(asoc_simple_card_parse_tdm);

This is (obviously) a very thin wrapper around the existing interface.
If that makes sense then perhaps we should just update the existing
interface?
Kuninori Morimoto June 30, 2016, 12:03 a.m. UTC | #2
Hi Mark

> > +int asoc_simple_card_parse_tdm(struct device_node *port_np,
> > +			       struct asoc_simple_dai *simple_dai)
> > +{
> > +	return snd_soc_of_parse_tdm_slot(port_np,
> > +					 &simple_dai->tx_slot_mask,
> > +					 &simple_dai->rx_slot_mask,
> > +					 &simple_dai->slots,
> > +					 &simple_dai->slot_width);
> > +}
> > +EXPORT_SYMBOL_GPL(asoc_simple_card_parse_tdm);
> 
> This is (obviously) a very thin wrapper around the existing interface.
> If that makes sense then perhaps we should just update the existing
> interface?

Indeed it is very thin. I will just remove it in v3
diff mbox

Patch

diff --git a/include/sound/simple_card_utils.h b/include/sound/simple_card_utils.h
index 7acc798..6bb2c5f 100644
--- a/include/sound/simple_card_utils.h
+++ b/include/sound/simple_card_utils.h
@@ -12,10 +12,22 @@ 
 
 #include <sound/soc.h>
 
+struct asoc_simple_dai {
+	const char *name;
+	unsigned int sysclk;
+	int slots;
+	int slot_width;
+	unsigned int tx_slot_mask;
+	unsigned int rx_slot_mask;
+	struct clk *clk;
+};
+
 int asoc_simple_card_parse_daifmt(struct device *dev,
 				  struct device_node *node,
 				  struct device_node *codec,
 				  char *prefix,
 				  unsigned int *retfmt);
+int asoc_simple_card_parse_tdm(struct device_node *port_np,
+			       struct asoc_simple_dai *simple_dai);
 
 #endif /* __SIMPLE_CARD_CORE_H */
diff --git a/sound/soc/generic/simple-card-utils.c b/sound/soc/generic/simple-card-utils.c
index 3f6b725..86fb2cf 100644
--- a/sound/soc/generic/simple-card-utils.c
+++ b/sound/soc/generic/simple-card-utils.c
@@ -52,3 +52,14 @@  int asoc_simple_card_parse_daifmt(struct device *dev,
 	return 0;
 }
 EXPORT_SYMBOL_GPL(asoc_simple_card_parse_daifmt);
+
+int asoc_simple_card_parse_tdm(struct device_node *port_np,
+			       struct asoc_simple_dai *simple_dai)
+{
+	return snd_soc_of_parse_tdm_slot(port_np,
+					 &simple_dai->tx_slot_mask,
+					 &simple_dai->rx_slot_mask,
+					 &simple_dai->slots,
+					 &simple_dai->slot_width);
+}
+EXPORT_SYMBOL_GPL(asoc_simple_card_parse_tdm);