提交 2f1e93f8 编写于 作者: J Jianqun 提交者: Mark Brown

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: NJianqun Xu <jay.xu@rock-chips.com>
Signed-off-by: NMark Brown <broonie@kernel.org>
上级 07833d88
...@@ -362,6 +362,8 @@ static bool rockchip_i2s_rd_reg(struct device *dev, unsigned int reg) ...@@ -362,6 +362,8 @@ static bool rockchip_i2s_rd_reg(struct device *dev, unsigned int reg)
case I2S_XFER: case I2S_XFER:
case I2S_CLR: case I2S_CLR:
case I2S_RXDR: case I2S_RXDR:
case I2S_FIFOLR:
case I2S_INTSR:
return true; return true;
default: default:
return false; return false;
...@@ -371,8 +373,8 @@ static bool rockchip_i2s_rd_reg(struct device *dev, unsigned int reg) ...@@ -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) static bool rockchip_i2s_volatile_reg(struct device *dev, unsigned int reg)
{ {
switch (reg) { switch (reg) {
case I2S_FIFOLR:
case I2S_INTSR: case I2S_INTSR:
case I2S_CLR:
return true; return true;
default: default:
return false; return false;
...@@ -382,8 +384,6 @@ static bool rockchip_i2s_volatile_reg(struct device *dev, unsigned int reg) ...@@ -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) static bool rockchip_i2s_precious_reg(struct device *dev, unsigned int reg)
{ {
switch (reg) { switch (reg) {
case I2S_FIFOLR:
return true;
default: default:
return false; return false;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册