ARM: mcpm: fix big endian issue in mcpm startup code
authorVictor Kamensky <victor.kamensky@linaro.org>
Tue, 8 Oct 2013 04:37:19 +0000 (21:37 -0700)
committerVictor Kamensky <victor.kamensky@linaro.org>
Thu, 13 Mar 2014 21:49:51 +0000 (14:49 -0700)
In big endian mode mcpm_entry_point is first function
that called on secondaries CPU. First it should switch
CPU into big endian code.

[ben.dooks@codethink.co.uk: merge fix patch from Victor into this]
Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
Acked-by: Nicolas Pitre <nico@linaro.org>
Reviewed-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
(cherry picked from commit 519ceb9fd10cd7e836d0aa97b2068cc9e97f463b)

Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
arch/arm/common/mcpm_head.S

index 057e9c5a9e1f5875d9c201445693defc068d3c19..0decb3c07165c9c9718394ff755b8c1e18a0e0a3 100644 (file)
@@ -15,6 +15,7 @@
 
 #include <linux/linkage.h>
 #include <asm/mcpm.h>
+#include <asm/assembler.h>
 
 #include "vlock.h"
 
@@ -47,6 +48,7 @@
 
 ENTRY(mcpm_entry_point)
 
+ ARM_BE8(setend        be)
  THUMB(        adr     r12, BSYM(1f)   )
  THUMB(        bx      r12             )
  THUMB(        .thumb                  )