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:
parent
62aa2b537c
commit
f8447d6c21
|
@ -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:
|
||||||
|
|
|
@ -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;
|
||||||
|
|
Loading…
Reference in New Issue