aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/davinci/davinci-mcasp.h
diff options
context:
space:
mode:
authorDaniel Mack <zonque@gmail.com>2012-12-05 18:20:38 +0100
committerMark Brown <broonie@opensource.wolfsonmicro.com>2012-12-07 14:47:10 +0900
commit1b3bc060fb008ddd75fe60c876c24784a517c10c (patch)
tree5cad74b24aec395aef242745a6c8c9d5a890318b /sound/soc/davinci/davinci-mcasp.h
parentASoC: McASP: calculate values for channel size (diff)
downloadlinux-dev-1b3bc060fb008ddd75fe60c876c24784a517c10c.tar.xz
linux-dev-1b3bc060fb008ddd75fe60c876c24784a517c10c.zip
ASoC: McASP: implement a way to force BCLK/LRCLK ratios
Depending on the Codec, the the BCLK/LRCLK ratio might not be freely chosen by the CPU DAI. For example, some Codec might want to be supplied with 32-bit samples for both its channels regardless of the actual audio word size the CPU sends. In such cases, the rest of the bits on the data lines must be padded with zeros: _______________________________ LRCLK / \ --' `---------- ..... BCLK ||||||||||||||||||||||||||||||||||||||||||||||| ..... DATA ____||||||||||||||||_________________|||||||||| ..... |<-- data -->|<-- pads --> | This patch adds a new clock divider to configure the BCLK/LRCLK ratio. If the machine code uses that divider, the driver uses the specified value, instead of deriving that information from the audio word size. Otherwise, the original behaviour is retained. Signed-off-by: Daniel Mack <zonque@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/davinci/davinci-mcasp.h')
-rw-r--r--sound/soc/davinci/davinci-mcasp.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/soc/davinci/davinci-mcasp.h b/sound/soc/davinci/davinci-mcasp.h
index d2449a865fc2..0edd3b5a37fd 100644
--- a/sound/soc/davinci/davinci-mcasp.h
+++ b/sound/soc/davinci/davinci-mcasp.h
@@ -38,6 +38,7 @@ struct davinci_audio_dev {
u8 num_serializer;
u8 *serial_dir;
u8 version;
+ u8 bclk_lrclk_ratio;
/* McASP FIFO related */
u8 txnumevt;