[PATCH 4/6] omap: Fix sev instruction usage for multi-omap

Shilimkar, Santosh santosh.shilimkar at ti.com
Fri Aug 13 05:04:07 EDT 2010


> -----Original Message-----
> From: linux-omap-owner at vger.kernel.org [mailto:linux-omap-
> owner at vger.kernel.org] On Behalf Of Tony Lindgren
> Sent: Friday, August 13, 2010 1:32 PM
> To: linux-arm-kernel at lists.infradead.org
> Cc: linux-omap at vger.kernel.org
> Subject: [PATCH 4/6] omap: Fix sev instruction usage for multi-omap
> 
> Otherwise we get the following error with omap3_defconfig and CONFIG_SMP:
> 
> Error: selected processor does not support `sev'
> 
> Signed-off-by: Tony Lindgren <tony at atomide.com>
Looks good to me.
Acked-by: Santosh Shilimkar <santosh.shilimkar at ti.com>

> ---
>  arch/arm/mach-omap2/Makefile          |    1 +
>  arch/arm/mach-omap2/omap-smp.c        |    3 +--
>  arch/arm/plat-omap/include/plat/smp.h |    7 -------
>  3 files changed, 2 insertions(+), 9 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
> index 63b2d88..88d3a1e 100644
> --- a/arch/arm/mach-omap2/Makefile
> +++ b/arch/arm/mach-omap2/Makefile
> @@ -25,6 +25,7 @@ obj-$(CONFIG_LOCAL_TIMERS)		+= timer-mpu.o
>  obj-$(CONFIG_HOTPLUG_CPU)		+= omap-hotplug.o
>  obj-$(CONFIG_ARCH_OMAP4)		+= omap44xx-smc.o omap4-common.o
> 
> +AFLAGS_omap-headsmp.o			:=-Wa,-march=armv7-a
>  AFLAGS_omap44xx-smc.o			:=-Wa,-march=armv7-a
> 
>  # Functions loaded to SRAM
> diff --git a/arch/arm/mach-omap2/omap-smp.c b/arch/arm/mach-omap2/omap-
> smp.c
> index af3c20c..9e9f70e 100644
> --- a/arch/arm/mach-omap2/omap-smp.c
> +++ b/arch/arm/mach-omap2/omap-smp.c
> @@ -102,8 +102,7 @@ static void __init wakeup_secondary(void)
>  	 * Send a 'sev' to wake the secondary core from WFE.
>  	 * Drain the outstanding writes to memory
>  	 */
> -	dsb();
> -	set_event();
> +	dsb_sev();
>  	mb();
>  }
> 
> diff --git a/arch/arm/plat-omap/include/plat/smp.h b/arch/arm/plat-
> omap/include/plat/smp.h
> index 6a3ff65..5177a9c 100644
> --- a/arch/arm/plat-omap/include/plat/smp.h
> +++ b/arch/arm/plat-omap/include/plat/smp.h
> @@ -19,13 +19,6 @@
> 
>  #include <asm/hardware/gic.h>
> 
> -/*
> - * set_event() is used to wake up secondary core from wfe using sev. ROM
> - * code puts the second core into wfe(standby).
> - *
> - */
> -#define set_event()	__asm__ __volatile__ ("sev" : : : "memory")
> -
>  /* Needed for secondary core boot */
>  extern void omap_secondary_startup(void);
>  extern u32 omap_modify_auxcoreboot0(u32 set_mask, u32 clear_mask);
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



More information about the linux-arm-kernel mailing list