Message ID | 20111226021727.GN8240@S2100-06.ap.freescale.net |
---|---|
State | New |
Headers | show |
On Mon, Dec 26, 2011 at 10:17 AM, Shawn Guo <shawn.guo@freescale.com> wrote: > On Thu, Dec 22, 2011 at 11:55:01AM +0800, Eric Miao wrote: >> Original patch from Lothar Waßmann, this patch fixes a building error >> when CONFIG_CACHE_L2X0 is not defined. >> >> Cc: Lothar Waßmann <lw@karo-electronics.de> >> Cc: Shawn Guo <shawn.guo@linaro.org> >> Signed-off-by: Eric Miao <eric.miao@linaro.org> >> --- >> arch/arm/mach-imx/head-v7.S | 13 +++++++++---- >> 1 files changed, 9 insertions(+), 4 deletions(-) >> >> diff --git a/arch/arm/mach-imx/head-v7.S b/arch/arm/mach-imx/head-v7.S >> index a59cae7..cec23a8 100644 >> --- a/arch/arm/mach-imx/head-v7.S >> +++ b/arch/arm/mach-imx/head-v7.S >> @@ -80,6 +80,7 @@ ENDPROC(v7_secondary_startup) >> .data >> .align >> >> +#ifdef CONFIG_CACHE_L2X0 >> .macro pl310_resume >> ldr r2, phys_l2x0_saved_regs >> ldr r0, [r2, #L2X0_R_PHY_BASE] @ get physical base of l2x0 >> @@ -89,13 +90,17 @@ ENDPROC(v7_secondary_startup) >> str r1, [r0, #L2X0_CTRL] @ re-enable L2 >> .endm >> >> + .globl phys_l2x0_saved_regs >> +phys_l2x0_saved_regs: >> + .long 0 >> +#else >> + .macro pl310_resume >> + .endm >> +#endif >> + >> ENTRY(v7_cpu_resume) >> bl v7_invalidate_l1 >> pl310_resume >> b cpu_resume >> ENDPROC(v7_cpu_resume) >> - >> - .globl phys_l2x0_saved_regs >> -phys_l2x0_saved_regs: >> - .long 0 >> #endif >> -- >> 1.7.5.4 >> > The following change on pm-imx6q.c needs to amended, otherwise we will see > > LD .tmp_vmlinux1 > arch/arm/mach-imx/built-in.o: In function `imx6q_pm_init': > arch/arm/mach-imx/pm-imx6q.c:70: undefined reference to `phys_l2x0_saved_regs' > arch/arm/mach-imx/pm-imx6q.c:70: undefined reference to `l2x0_saved_regs' > > I fixed it up and queued for 3.3. Thanks. > > Regards, > Shawn > > 8<---- > diff --git a/arch/arm/mach-imx/pm-imx6q.c b/arch/arm/mach-imx/pm-imx6q.c > index f20f191..f7b0c2b 100644 > --- a/arch/arm/mach-imx/pm-imx6q.c > +++ b/arch/arm/mach-imx/pm-imx6q.c > @@ -64,7 +64,9 @@ void __init imx6q_pm_init(void) > * address of the data structure used by l2x0 core to save registers, > * and later restore the necessary ones in imx6q resume entry. > */ > +#ifdef CONFIG_CACHE_L2X0 > phys_l2x0_saved_regs = __pa(&l2x0_saved_regs); > +#endif Ok, thanks.
diff --git a/arch/arm/mach-imx/pm-imx6q.c b/arch/arm/mach-imx/pm-imx6q.c index f20f191..f7b0c2b 100644 --- a/arch/arm/mach-imx/pm-imx6q.c +++ b/arch/arm/mach-imx/pm-imx6q.c @@ -64,7 +64,9 @@ void __init imx6q_pm_init(void) * address of the data structure used by l2x0 core to save registers, * and later restore the necessary ones in imx6q resume entry. */ +#ifdef CONFIG_CACHE_L2X0 phys_l2x0_saved_regs = __pa(&l2x0_saved_regs); +#endif suspend_set_ops(&imx6q_pm_ops); }