mirror of https://gitee.com/openkylin/linux.git
ASoC: arizona: Suppress noop FLL updates
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
ba6b047ab9
commit
1cbe4bcae3
|
@ -937,6 +937,9 @@ int arizona_set_fll(struct arizona_fll *fll, int source,
|
|||
bool ena;
|
||||
int ret;
|
||||
|
||||
if (fll->fref == Fref && fll->fout == Fout)
|
||||
return 0;
|
||||
|
||||
ret = regmap_read(arizona->regmap, fll->base + 1, ®);
|
||||
if (ret != 0) {
|
||||
arizona_fll_err(fll, "Failed to read current state: %d\n",
|
||||
|
@ -1014,6 +1017,9 @@ int arizona_set_fll(struct arizona_fll *fll, int source,
|
|||
if (ret == 0)
|
||||
arizona_fll_warn(fll, "Timed out waiting for lock\n");
|
||||
|
||||
fll->fref = Fref;
|
||||
fll->fout = Fout;
|
||||
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(arizona_set_fll);
|
||||
|
|
|
@ -191,6 +191,8 @@ struct arizona_fll {
|
|||
unsigned int vco_mult;
|
||||
struct completion lock;
|
||||
struct completion ok;
|
||||
unsigned int fref;
|
||||
unsigned int fout;
|
||||
|
||||
char lock_name[ARIZONA_FLL_NAME_LEN];
|
||||
char clock_ok_name[ARIZONA_FLL_NAME_LEN];
|
||||
|
|
Loading…
Reference in New Issue