diff options
author | Anson Huang <Anson.Huang@nxp.com> | 2017-12-27 19:06:05 +0800 |
---|---|---|
committer | Leonard Crestez <leonard.crestez@nxp.com> | 2018-08-24 12:41:33 +0300 |
commit | ce57e44b6427e2a190bf5137ee507bafa29aa14d (patch) | |
tree | 5a2ef75f98f216876d9a37da24f10ac2b8010cf3 /arch/arm/mach-imx | |
parent | 1fa75dfd9f8e7fe3e45a4c6080809fe92b39011b (diff) |
MLK-17314-1 arm: imx: remove snvs pcc save/restore
On i.MX7ULP B0, SNVS is located in M4 domain, remove
snvs pcc save/restore to avoid imprecise abort after
resume:
Restarting tasks ... Unhandled fault:
imprecise external abort (0x1c06) at 0x00040000
pgd = b173c000
[00040000] *pgd=9169d835, *pte=00000000, *ppte=00000000
done.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Diffstat (limited to 'arch/arm/mach-imx')
-rw-r--r-- | arch/arm/mach-imx/pm-imx7ulp.c | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/arch/arm/mach-imx/pm-imx7ulp.c b/arch/arm/mach-imx/pm-imx7ulp.c index e5ac4229d0d4..86c17cc6c21a 100644 --- a/arch/arm/mach-imx/pm-imx7ulp.c +++ b/arch/arm/mach-imx/pm-imx7ulp.c @@ -139,14 +139,13 @@ static void (*imx7ulp_suspend_in_ocram_fn)(void __iomem *sram_base); static u32 tpm5_regs[4]; static u32 lpuart4_regs[4]; -static u32 pcc2_regs[25][2] = { +static u32 pcc2_regs[24][2] = { {0x20, 0}, {0x3c, 0}, {0x40, 0}, {0x6c, 0}, - {0x84, 0}, {0x8c, 0}, {0x90, 0}, {0x94, 0}, - {0x98, 0}, {0x9c, 0}, {0xa4, 0}, {0xa8, 0}, - {0xac, 0}, {0xb0, 0}, {0xb4, 0}, {0xb8, 0}, - {0xc4, 0}, {0xcc, 0}, {0xd0, 0}, {0xd4, 0}, - {0xd8, 0}, {0xdc, 0}, {0xe0, 0}, {0xf4, 0}, - {0x10c, 0}, + {0x84, 0}, {0x90, 0}, {0x94, 0}, {0x98, 0}, + {0x9c, 0}, {0xa4, 0}, {0xa8, 0}, {0xac, 0}, + {0xb0, 0}, {0xb4, 0}, {0xb8, 0}, {0xc4, 0}, + {0xcc, 0}, {0xd0, 0}, {0xd4, 0}, {0xd8, 0}, + {0xdc, 0}, {0xe0, 0}, {0xf4, 0}, {0x10c, 0}, }; static u32 pcc3_regs[16][2] = { @@ -315,7 +314,7 @@ static void imx7ulp_pcc2_save(void) { int i; - for (i = 0; i < 25; i++) + for (i = 0; i < 24; i++) pcc2_regs[i][1] = readl_relaxed(pcc2_base + pcc2_regs[i][0]); } @@ -323,7 +322,7 @@ static void imx7ulp_pcc2_restore(void) { int i; - for (i = 0; i < 25; i++) + for (i = 0; i < 24; i++) writel_relaxed(pcc2_regs[i][1], pcc2_base + pcc2_regs[i][0]); } |