[PATCH 1/2] ARM: vexpress/TC2: basic PM support
Nicolas Pitre
nicolas.pitre at linaro.org
Mon Jun 10 16:21:24 EDT 2013
On Mon, 10 Jun 2013, Sudeep KarkadaNagesha wrote:
> On 07/06/13 07:39, Nicolas Pitre wrote:
> > This is the MCPM backend for the Virtual Express A15x2 A7x3 CoreTile
> > aka TC2. This provides cluster management for SMP secondary boot and
> > CPU hotplug.
> >
> > Signed-off-by: Nicolas Pitre <nico at linaro.org>
> > ---
> > arch/arm/mach-vexpress/Kconfig | 9 ++
> > arch/arm/mach-vexpress/Makefile | 1 +
> > arch/arm/mach-vexpress/tc2_pm.c | 243 ++++++++++++++++++++++++++++++++++++++++
> > 3 files changed, 253 insertions(+)
> > create mode 100644 arch/arm/mach-vexpress/tc2_pm.c
> >
> [...]
> > +/*
> > + * Enable cluster-level coherency, in preparation for turning on the MMU.
> > + */
> > +static void __naked tc2_pm_power_up_setup(unsigned int affinity_level)
> > +{
> > + asm volatile (" \n"
> > +" cmp r0, #1 \n"
> > +" beq cci_enable_port_for_self \n"
> > +" bx lr ");
> You may need Thumb2 if-then(IT) instruction to support longer branch
> range here when compiled in THUMB2 mode.
> " it eq \n"
Yeah, I noticed, and therefore reworked it in my follow-up patch as
follows:
cmp r0, #1
bxne lr
b cci_enable_port_for_self \n"
Nicolas
More information about the linux-arm-kernel
mailing list