Thread (13 messages) 13 messages, 2 authors, 2013-07-15

[PATCH v5 1/7] sound: codec: wm8731: add rates constraints

From: Richard Genoud <hidden>
Date: 2013-07-15 14:54:09
Also in: alsa-devel, linux-devicetree, lkml

2013/7/12 Mark Brown [off-list ref]:
On Thu, Jul 11, 2013 at 06:15:53PM +0200, Richard Genoud wrote:

Please always try to use commit logs that look like normal commit logs
for the subsystem.
Ok, I'll pay attention to that.
quoted
      switch (freq) {
-     case 11289600:
      case 12000000:
+             wm8731->constraints = &wm8731_constraints_12000000;
+             break;
      case 12288000:
-     case 16934400:
      case 18432000:
-             wm8731->sysclk = freq;
+             wm8731->constraints = &wm8731_constraints_12288000_18432000;
+             break;
+     case 16934400:
+     case 11289600:
+             wm8731->constraints = &wm8731_constraints_11289600_16934400;
              break;
      default:
              return -EINVAL;
      }
This isn't going to work with systems which have a variable clock as the
input to the CODEC.  If it's imposing constraints the driver needs to
allow setting the clock to zero as a way of removing constraints (and
any existing drivers should be updated to do this if needed).
Maybe I'm wrong, but I didn't find any system using variable clock
with this codec.
The sam9g20ek (soc/atmel/sam9g20_wm8731.c) is not using a crystal, but
it's using a fixed clock anyway.
But there's soc/pxa/corgi.c and soc/pxa/poodle.c that puzzle me.
They seems to use a crystal, but they are setting a different sysclk
depending on the rate.
That seems wrong, but as I'm a newbie in ASoC...
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help