ASoC: rsnd: move DVC_DVUER settings under rsnd_dvc_volume_update()

We need to Enable/Disable DVC_DVUER register if we set
DVCp_ZCMCR, DVCp_VRCTR, DVCp_VRPDR, DVCp_VRDBR,
DVCp_VOL0R, DVCp_VOL1R, DVCp_VOL2R, DVCp_VOL3R,
DVCp_VOL4R, DVCp_VOL5R, DVCp_VOL6R, DVCp_VOL7R
and, these are controlled under rsnd_dvc_volume_update().
This patch moves DVC_DVUER settings to it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Kuninori Morimoto 2014-11-04 20:27:18 -08:00 committed by Mark Brown
parent 1c5d1c9883
commit 140bab8961
1 changed files with 6 additions and 2 deletions

View File

@ -48,6 +48,9 @@ static void rsnd_dvc_volume_update(struct rsnd_mod *mod)
mute |= (!!dvc->mute.val[i]) << i;
}
/* Disable DVC Register access */
rsnd_mod_write(mod, DVC_DVUER, 0);
/* Enable Digital Volume */
dvucr = 0x100;
rsnd_mod_write(mod, DVC_VOL0R, dvc->volume.val[0]);
@ -60,6 +63,9 @@ static void rsnd_dvc_volume_update(struct rsnd_mod *mod)
}
rsnd_mod_write(mod, DVC_DVUCR, dvucr);
/* Enable DVC Register access */
rsnd_mod_write(mod, DVC_DVUER, 1);
}
static int rsnd_dvc_probe_gen2(struct rsnd_mod *mod,
@ -117,8 +123,6 @@ static int rsnd_dvc_init(struct rsnd_mod *dvc_mod,
rsnd_mod_write(dvc_mod, DVC_DVUIR, 0);
rsnd_mod_write(dvc_mod, DVC_DVUER, 1);
rsnd_adg_set_cmd_timsel_gen2(rdai, dvc_mod, io);
return 0;