summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJianqun <jay.xu@rock-chips.com>2014-09-13 08:42:12 +0800
committerMark Brown <broonie@kernel.org>2014-09-13 09:35:43 -0700
commit2f1e93f81cebfa99b668f27cdb14992ff23480a4 (patch)
treefa92f4e18a3a6176fbe8c038c710554c63b1eafd
parent07833d88314c496f8a136c6e4b4729c69e65b878 (diff)
downloadop-kernel-dev-2f1e93f81cebfa99b668f27cdb14992ff23480a4.zip
op-kernel-dev-2f1e93f81cebfa99b668f27cdb14992ff23480a4.tar.gz
ASoC: rockchip-i2s: fix registers' property of rockchip i2s controller
Reference rockchip I2S controller TRM, modify some registers' property I2S_FIFOLR: read / write, but not volatile, not precious I2S_INTSR: read / write I2S_CLR: volatile, register value will be cleared by read Test on RK3288 with max98090. Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com> Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--sound/soc/rockchip/rockchip_i2s.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sound/soc/rockchip/rockchip_i2s.c b/sound/soc/rockchip/rockchip_i2s.c
index 870a664..fb9e05c 100644
--- a/sound/soc/rockchip/rockchip_i2s.c
+++ b/sound/soc/rockchip/rockchip_i2s.c
@@ -362,6 +362,8 @@ static bool rockchip_i2s_rd_reg(struct device *dev, unsigned int reg)
case I2S_XFER:
case I2S_CLR:
case I2S_RXDR:
+ case I2S_FIFOLR:
+ case I2S_INTSR:
return true;
default:
return false;
@@ -371,8 +373,8 @@ static bool rockchip_i2s_rd_reg(struct device *dev, unsigned int reg)
static bool rockchip_i2s_volatile_reg(struct device *dev, unsigned int reg)
{
switch (reg) {
- case I2S_FIFOLR:
case I2S_INTSR:
+ case I2S_CLR:
return true;
default:
return false;
@@ -382,8 +384,6 @@ static bool rockchip_i2s_volatile_reg(struct device *dev, unsigned int reg)
static bool rockchip_i2s_precious_reg(struct device *dev, unsigned int reg)
{
switch (reg) {
- case I2S_FIFOLR:
- return true;
default:
return false;
}
OpenPOWER on IntegriCloud