Re: [PATCH v2 1/5] sound: sam9x5_wm8731: machine driver for at91sam9x5wm8731 boards

From: Bo Shen
Date: Tue Jul 09 2013 - 04:39:41 EST


Hi Richard,

On 7/9/2013 16:19, Richard Genoud wrote:
2013/7/8 Mark Brown <broonie@xxxxxxxxxx>:
On Mon, Jul 08, 2013 at 03:29:49PM +0200, Richard Genoud wrote:

+ * Nicolas Ferre <nicolas.ferre@xxxxxxxxx>
+ *
+ * Based on sam9g20_wm8731.c by:
+ * Sedji Gaouaou <sedji.gaouaou@xxxxxxxxx>

The obvious question here is of course if we can use the same driver for
both of them.
I haven't got a g20 to test that, but that's the goal.
For now, g20 is still non-DT, so I think it's best to have a DT-only
driver like this one for the 9x5 family (9g15, 9g25, 9x25, 9g35,
9x25).
When the g20 will move to DT completely, we can drop sam9g20_wm8731.c
and adjust sam9x5_wm8731.c (mainly master clock and widgets it seems)

The at91sam9g20ek board can work in DT mode, and the sound has support in DT mode already.

Sure, the mainly thing we need deal with is the master clock and widgets. If put them together will make code ugly or need many many #ifdef, I suggest to keep them separately.

By the way, maybe g45 could use that also (and SAMA5 ?)

For g45ek board, it use AC97 interface, not the case.


+ codec_dai->driver->playback.rates &= SNDRV_PCM_RATE_8000 |
+ SNDRV_PCM_RATE_32000 |
+ SNDRV_PCM_RATE_48000 |
+ SNDRV_PCM_RATE_96000;
+ codec_dai->driver->capture.rates &= SNDRV_PCM_RATE_8000 |
+ SNDRV_PCM_RATE_32000 |
+ SNDRV_PCM_RATE_48000 |
+ SNDRV_PCM_RATE_96000;

You definitely shouldn't be fiddling with a driver's constant static
data. You want to be using snd_pcm_hw_constraint() APIs to set
additional constraints intead.
Ok, I'll change that.


Thanks !


Best Regards,
Bo Shen
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/