diff options
author | Geert Uytterhoeven <geert+renesas@glider.be> | 2017-10-30 18:29:58 +0100 |
---|---|---|
committer | Simon Horman <horms+renesas@verge.net.au> | 2017-11-27 11:40:57 +0100 |
commit | 90f0d2b344313a8a4c366ef60d0df33008d2be84 (patch) | |
tree | 4aa40e76ebb43e467feb4c25c2aa5f39bd88d279 /drivers/soc/renesas/renesas-soc.c | |
parent | 4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323 (diff) |
soc: renesas: Identify R-Car M3-W ES1.1
The Product Register of R-Car M3-W ES1.1 incorrectly identifies the SoC
revision as ES2.0. Add a workaround to fix this.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Diffstat (limited to 'drivers/soc/renesas/renesas-soc.c')
-rw-r--r-- | drivers/soc/renesas/renesas-soc.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/soc/renesas/renesas-soc.c b/drivers/soc/renesas/renesas-soc.c index 9f4ee2567c72..926b7fd6db2d 100644 --- a/drivers/soc/renesas/renesas-soc.c +++ b/drivers/soc/renesas/renesas-soc.c @@ -250,6 +250,9 @@ static int __init renesas_soc_init(void) if (chipid) { product = readl(chipid); iounmap(chipid); + /* R-Car M3-W ES1.1 incorrectly identifies as ES2.0 */ + if ((product & 0x7fff) == 0x5210) + product ^= 0x11; if (soc->id && ((product >> 8) & 0xff) != soc->id) { pr_warn("SoC mismatch (product = 0x%x)\n", product); return -ENODEV; |