aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs/ad1836.h
diff options
context:
space:
mode:
authorLars-Peter Clausen <lars@metafoo.de>2011-06-06 07:38:36 -0400
committerMark Brown <broonie@opensource.wolfsonmicro.com>2011-06-06 16:54:41 -0400
commit90bc11d1d0310e5e6bfbdea6ed21047b3865df05 (patch)
treeec6599e1c21f88b7dd8e8407a3e0b6e2cdd7dd0c /sound/soc/codecs/ad1836.h
parent85e9e766380fe40e1937b8316e8aa867544f09f1 (diff)
ASoC: AD1836: Add ADC/DAC controls helper macros
The different ADC and DAC controls follow the same scheme, so add some helper macros for declaring them. This should make the code a bit more readable and also decreases the code size a bit. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/codecs/ad1836.h')
-rw-r--r--sound/soc/codecs/ad1836.h25
1 files changed, 8 insertions, 17 deletions
diff --git a/sound/soc/codecs/ad1836.h b/sound/soc/codecs/ad1836.h
index 845596717fdf..4ed7d9dfb346 100644
--- a/sound/soc/codecs/ad1836.h
+++ b/sound/soc/codecs/ad1836.h
@@ -27,29 +27,20 @@
27#define AD1836_DAC_WORD_LEN_MASK 0x18 27#define AD1836_DAC_WORD_LEN_MASK 0x18
28 28
29#define AD1836_DAC_CTRL2 1 29#define AD1836_DAC_CTRL2 1
30#define AD1836_DACL1_MUTE 0 30
31#define AD1836_DACR1_MUTE 1 31/* These macros are one-based. So AD183X_MUTE_LEFT(1) will return the mute bit
32#define AD1836_DACL2_MUTE 2 32 * for the first ADC/DAC */
33#define AD1836_DACR2_MUTE 3 33#define AD1836_MUTE_LEFT(x) (((x) * 2) - 2)
34#define AD1836_DACL3_MUTE 4 34#define AD1836_MUTE_RIGHT(x) (((x) * 2) - 1)
35#define AD1836_DACR3_MUTE 5 35
36 36#define AD1836_DAC_L_VOL(x) ((x) * 2)
37#define AD1836_DAC_L1_VOL 2 37#define AD1836_DAC_R_VOL(x) (1 + ((x) * 2))
38#define AD1836_DAC_R1_VOL 3
39#define AD1836_DAC_L2_VOL 4
40#define AD1836_DAC_R2_VOL 5
41#define AD1836_DAC_L3_VOL 6
42#define AD1836_DAC_R3_VOL 7
43 38
44#define AD1836_ADC_CTRL1 12 39#define AD1836_ADC_CTRL1 12
45#define AD1836_ADC_POWERDOWN 7 40#define AD1836_ADC_POWERDOWN 7
46#define AD1836_ADC_HIGHPASS_FILTER 8 41#define AD1836_ADC_HIGHPASS_FILTER 8
47 42
48#define AD1836_ADC_CTRL2 13 43#define AD1836_ADC_CTRL2 13
49#define AD1836_ADCL1_MUTE 0
50#define AD1836_ADCR1_MUTE 1
51#define AD1836_ADCL2_MUTE 2
52#define AD1836_ADCR2_MUTE 3
53#define AD1836_ADC_WORD_LEN_MASK 0x30 44#define AD1836_ADC_WORD_LEN_MASK 0x30
54#define AD1836_ADC_SERFMT_MASK (7 << 6) 45#define AD1836_ADC_SERFMT_MASK (7 << 6)
55#define AD1836_ADC_SERFMT_PCK256 (0x4 << 6) 46#define AD1836_ADC_SERFMT_PCK256 (0x4 << 6)