mfd: Store twl6040-codec mclk configuration

Store the last used mclk configuration for the PLL.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
This commit is contained in:
Peter Ujfalusi 2012-01-14 20:58:43 +01:00 committed by Samuel Ortiz
parent 62aa2b537c
commit f8447d6c21
2 changed files with 5 additions and 0 deletions

View File

@ -282,6 +282,7 @@ int twl6040_power(struct twl6040 *twl6040, int on)
/* Default PLL configuration after power up */ /* Default PLL configuration after power up */
twl6040->pll = TWL6040_SYSCLK_SEL_LPPLL; twl6040->pll = TWL6040_SYSCLK_SEL_LPPLL;
twl6040->sysclk = 19200000; twl6040->sysclk = 19200000;
twl6040->mclk = 32768;
} else { } else {
/* already powered-down */ /* already powered-down */
if (!twl6040->power_count) { if (!twl6040->power_count) {
@ -305,6 +306,7 @@ int twl6040_power(struct twl6040 *twl6040, int on)
twl6040_power_down(twl6040); twl6040_power_down(twl6040);
} }
twl6040->sysclk = 0; twl6040->sysclk = 0;
twl6040->mclk = 0;
} }
out: out:
@ -421,6 +423,7 @@ int twl6040_set_pll(struct twl6040 *twl6040, int pll_id,
} }
twl6040->sysclk = freq_out; twl6040->sysclk = freq_out;
twl6040->mclk = freq_in;
twl6040->pll = pll_id; twl6040->pll = pll_id;
pll_out: pll_out:

View File

@ -187,8 +187,10 @@ struct twl6040 {
int rev; int rev;
u8 vibra_ctrl_cache[2]; u8 vibra_ctrl_cache[2];
/* PLL configuration */
int pll; int pll;
unsigned int sysclk; unsigned int sysclk;
unsigned int mclk;
unsigned int irq; unsigned int irq;
unsigned int irq_base; unsigned int irq_base;