Re: [PATCH 3/3] ASoC: simple-card: Add system-clock-id DT parameter to dai nodes

2014-06-24 Thread Jyri Sarha

On 06/21/2014 01:09 PM, Mark Brown wrote:

On Fri, Jun 13, 2014 at 01:04:38PM +0300, Jyri Sarha wrote:

Select clk_id parameters for set_sysclk calls in the card init phase.


This is making the ID defined by the drivers into ABI.  It's not clear
that this is something we want to do, and we certainly don't want to do
it without updating the driver bindings.  In principle what we want to
do here is have our clocks handled by the clock API, though that's not
trivial work.



I see, actually this is not something I would need anytime soon, but
how about the previous Add system-clock-direction DT parameter to dai 
nodes patch?


There is a clear common definitions for clock direction, so this should 
be ok, right?


If the clock direction patch would go in I would not need to add more 
stuff to already quite messy davinci-evm driver.


Best regards,
Jyri
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 3/3] ASoC: simple-card: Add system-clock-id DT parameter to dai nodes

2014-06-24 Thread Mark Brown
On Tue, Jun 24, 2014 at 12:59:20PM +0300, Jyri Sarha wrote:

 I see, actually this is not something I would need anytime soon, but
 how about the previous Add system-clock-direction DT parameter to dai
 nodes patch?

 There is a clear common definitions for clock direction, so this should be
 ok, right?

 If the clock direction patch would go in I would not need to add more stuff
 to already quite messy davinci-evm driver.

Yeah, I'm still thinking about that one.  One thing I was wondering was
if we should agree a definition that's generic with the clock API but
then have an ASoC specific implementation for now until the clock API
gets further along.


signature.asc
Description: Digital signature


Re: [PATCH 3/3] ASoC: simple-card: Add system-clock-id DT parameter to dai nodes

2014-06-21 Thread Mark Brown
On Fri, Jun 13, 2014 at 01:04:38PM +0300, Jyri Sarha wrote:
 Select clk_id parameters for set_sysclk calls in the card init phase.

This is making the ID defined by the drivers into ABI.  It's not clear
that this is something we want to do, and we certainly don't want to do
it without updating the driver bindings.  In principle what we want to
do here is have our clocks handled by the clock API, though that's not
trivial work.


signature.asc
Description: Digital signature


[PATCH 3/3] ASoC: simple-card: Add system-clock-id DT parameter to dai nodes

2014-06-13 Thread Jyri Sarha
Select clk_id parameters for set_sysclk calls in the card init phase.

Signed-off-by: Jyri Sarha jsa...@ti.com
---
 .../devicetree/bindings/sound/simple-card.txt  |2 ++
 include/sound/simple_card.h|1 +
 sound/soc/generic/simple-card.c|6 +-
 3 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/sound/simple-card.txt 
b/Documentation/devicetree/bindings/sound/simple-card.txt
index 8460744..8877130 100644
--- a/Documentation/devicetree/bindings/sound/simple-card.txt
+++ b/Documentation/devicetree/bindings/sound/simple-card.txt
@@ -72,6 +72,8 @@ Optional CPU/CODEC subnodes properties:
  clock node (= common clock), or 
system-clock-frequency
  (if system doens't support common 
clock)
 - system-clock-direction   : in or out, default in
+- system-clock-id  : u32, clk_id parameter for set_sysclk,
+ default 0
 
 Example 1 - single DAI link:
 
diff --git a/include/sound/simple_card.h b/include/sound/simple_card.h
index 6d74fef..f3c7a30 100644
--- a/include/sound/simple_card.h
+++ b/include/sound/simple_card.h
@@ -19,6 +19,7 @@ struct asoc_simple_dai {
unsigned int fmt;
unsigned int sysclk;
int sysclk_dir;
+   int sysclk_id;
int slots;
int slot_width;
 };
diff --git a/sound/soc/generic/simple-card.c b/sound/soc/generic/simple-card.c
index 8dd7957..f840d9c 100644
--- a/sound/soc/generic/simple-card.c
+++ b/sound/soc/generic/simple-card.c
@@ -64,7 +64,7 @@ static int __asoc_simple_card_dai_init(struct snd_soc_dai 
*dai,
}
 
if (set-sysclk) {
-   ret = snd_soc_dai_set_sysclk(dai, 0, set-sysclk,
+   ret = snd_soc_dai_set_sysclk(dai, set-sysclk_id, set-sysclk,
 set-sysclk_dir);
if (ret  ret != -ENOTSUPP) {
dev_err(dai-dev, simple-card: set_sysclk error\n);
@@ -150,6 +150,10 @@ asoc_simple_card_sub_parse_of(struct device_node *np,
return -EINVAL;
}
 
+   ret = of_property_read_u32(np, system-clock-id, val);
+   if (ret == 0)
+   dai-sysclk_id = val;
+
/*
 * dai-sysclk come from
 *  clocks = xxx (if system has common clock)
-- 
1.7.9.5

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html