diff options
author | Daniel Mack <daniel@caiaq.de> | 2008-04-30 10:20:19 -0400 |
---|---|---|
committer | Jaroslav Kysela <perex@perex.cz> | 2008-05-19 07:19:13 -0400 |
commit | 4f9c16ccfa26691dbb9a5d9e7d5098eb934ccdbe (patch) | |
tree | 9d1d3124b3b6d9d8dd474d3642b492dc16403113 /sound/soc/codecs/tlv320aic3x.h | |
parent | bce7f793daec3e65ec5c5705d2457b81fe7b5725 (diff) |
[ALSA] soc - tlv320aic3x - revisit clock setup
This patch cleans up the clocking setup for aic3x codecs. It drops the
dividers table and determines the PLL control values programatically.
Under certain conditions, the PLL is disabled entirely which could save
some power.
Signed-off-by: Daniel Mack <daniel@caiaq.de>
Acked-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Diffstat (limited to 'sound/soc/codecs/tlv320aic3x.h')
-rw-r--r-- | sound/soc/codecs/tlv320aic3x.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sound/soc/codecs/tlv320aic3x.h b/sound/soc/codecs/tlv320aic3x.h index d0cdeeb629de..d49d001e6e4c 100644 --- a/sound/soc/codecs/tlv320aic3x.h +++ b/sound/soc/codecs/tlv320aic3x.h | |||
@@ -109,6 +109,7 @@ | |||
109 | #define LLOPM_CTRL 86 | 109 | #define LLOPM_CTRL 86 |
110 | #define RLOPM_CTRL 93 | 110 | #define RLOPM_CTRL 93 |
111 | /* Clock generation control register */ | 111 | /* Clock generation control register */ |
112 | #define AIC3X_GPIOB_REG 101 | ||
112 | #define AIC3X_CLKGEN_CTRL_REG 102 | 113 | #define AIC3X_CLKGEN_CTRL_REG 102 |
113 | 114 | ||
114 | /* Page select register bits */ | 115 | /* Page select register bits */ |
@@ -128,12 +129,15 @@ | |||
128 | 129 | ||
129 | /* PLL registers bitfields */ | 130 | /* PLL registers bitfields */ |
130 | #define PLLP_SHIFT 0 | 131 | #define PLLP_SHIFT 0 |
132 | #define PLLQ_SHIFT 3 | ||
131 | #define PLLR_SHIFT 0 | 133 | #define PLLR_SHIFT 0 |
132 | #define PLLJ_SHIFT 2 | 134 | #define PLLJ_SHIFT 2 |
133 | #define PLLD_MSB_SHIFT 0 | 135 | #define PLLD_MSB_SHIFT 0 |
134 | #define PLLD_LSB_SHIFT 2 | 136 | #define PLLD_LSB_SHIFT 2 |
135 | 137 | ||
136 | /* Clock generation register bits */ | 138 | /* Clock generation register bits */ |
139 | #define CODEC_CLKIN_PLLDIV 0 | ||
140 | #define CODEC_CLKIN_CLKDIV 1 | ||
137 | #define PLL_CLKIN_SHIFT 4 | 141 | #define PLL_CLKIN_SHIFT 4 |
138 | #define MCLK_SOURCE 0x0 | 142 | #define MCLK_SOURCE 0x0 |
139 | #define PLL_CLKDIV_SHIFT 0 | 143 | #define PLL_CLKDIV_SHIFT 0 |