summary refs log tree commit diff
path: root/drivers/nvmem
diff options
context:
space:
mode:
authorStefan Mavrodiev <stefan@olimex.com>2019-08-18 10:33:41 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-08-18 12:56:52 +0200
commit2ac00e34acfc93af19376f83bb31db1aea1f006a (patch)
tree1c2b359895c2de73e4c9882465e1ae353f3a88c2 /drivers/nvmem
parentd93b5d4a2145acf2c67a24e26e17a7908c95ebbc (diff)
downloadlinux-2ac00e34acfc93af19376f83bb31db1aea1f006a.tar.gz
nvmem: sunxi_sid: fix A64 SID controller support
Like in H3, A64 SID controller doesn't return correct data
when using direct access. It appears that on A64, SID needs
8 bytes of word_size.

Workaround is to enable read by registers.

Signed-off-by: Stefan Mavrodiev <stefan@olimex.com>
Acked-by: Chen-Yu Tsai <wens@csie.org>
Tested-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20190818093345.29647-4-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/nvmem')
-rw-r--r--drivers/nvmem/sunxi_sid.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/nvmem/sunxi_sid.c b/drivers/nvmem/sunxi_sid.c
index a079a80ddf2c..e26ef1bbf198 100644
--- a/drivers/nvmem/sunxi_sid.c
+++ b/drivers/nvmem/sunxi_sid.c
@@ -186,6 +186,7 @@ static const struct sunxi_sid_cfg sun8i_h3_cfg = {
 static const struct sunxi_sid_cfg sun50i_a64_cfg = {
 	.value_offset = 0x200,
 	.size = 0x100,
+	.need_register_readout = true,
 };
 
 static const struct sunxi_sid_cfg sun50i_h6_cfg = {