summaryrefslogtreecommitdiff
path: root/arch/arm/mach-imx
diff options
context:
space:
mode:
authorAnson Huang <Anson.Huang@nxp.com>2017-12-27 19:06:05 +0800
committerLeonard Crestez <leonard.crestez@nxp.com>2018-08-24 12:41:33 +0300
commitce57e44b6427e2a190bf5137ee507bafa29aa14d (patch)
tree5a2ef75f98f216876d9a37da24f10ac2b8010cf3 /arch/arm/mach-imx
parent1fa75dfd9f8e7fe3e45a4c6080809fe92b39011b (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.c17
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]);
}