Message ID | CAHmAUHKD90eibgj3JmHaJNduhrOQZUZBZixtZE+dWxR2L6Bq1Q@mail.gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | rockchip_rk3288_efuse_read: Fix segfault in rockchip_rk3288_efuse_read by using readl instead of readb when reading REG_EFUSE_DOUT. | expand |
diff --git a/drivers/nvmem/rockchip-efuse.c b/drivers/nvmem/rockchip-efuse.c index e4579de5d014..f680a80d81cf 100644 --- a/drivers/nvmem/rockchip-efuse.c +++ b/drivers/nvmem/rockchip-efuse.c @@ -78,7 +78,7 @@ static int rockchip_rk3288_efuse_read(void *context, unsigned int offset, writel(readl(efuse->base + REG_EFUSE_CTRL) | RK3288_STROBE, efuse->base + REG_EFUSE_CTRL); udelay(1); - *buf++ = readb(efuse->base + REG_EFUSE_DOUT); + *buf++ = readl(efuse->base + REG_EFUSE_DOUT); writel(readl(efuse->base + REG_EFUSE_CTRL) & (~RK3288_STROBE), efuse->base + REG_EFUSE_CTRL);