[U-Boot] [PATCH] exynos: allow SPL to build in thumb mode

Minkyu Kang mk7.kang at samsung.com
Fri Jan 4 00:30:31 UTC 2019


On 02/01/19 22:31, Guillaume GARDET wrote:
> Building peach-pi smdk5420 and peach-pit with thumb mode for SPL
> ends-up in the following error:
> 
> Error: Thumb encoding does not support an immediate here -- `msr cpsr_c,#0x13|0xC0'
> 
> Use an intermediate register to be able to use thumb for exynos5 SPL.
> 
> 
> Signed-off-by: Guillaume GARDET <guillaume.gardet at free.fr>
> 
> Cc: Albert Aribaud <albert.u.boot at aribaud.net>
> Cc: Minkyu Kang <mk7.kang at samsung.com>
> Cc: Tom Rini <trini at konsulko.com>
> 
> ---
>  arch/arm/mach-exynos/include/mach/system.h | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/mach-exynos/include/mach/system.h b/arch/arm/mach-exynos/include/mach/system.h
> index 4837781957..81fa9800b4 100644
> --- a/arch/arm/mach-exynos/include/mach/system.h
> +++ b/arch/arm/mach-exynos/include/mach/system.h
> @@ -58,7 +58,8 @@ struct exynos5_sysreg {
>  /* Move 0xd3 value to CPSR register to enable SVC mode */
>  #define svc32_mode_en() __asm__ __volatile__				\
>  			("@ I&F disable, Mode: 0x13 - SVC\n\t"		\
> -			 "msr     cpsr_c, #0x13|0xC0\n\t" : : )
> +			 "mov     r0, #0x13|0xC0\n\t"			\
> +			 "msr     cpsr_c, r0\n\t" : : )
>  
>  /* Set program counter with the given value */
>  #define set_pc(x) __asm__ __volatile__ ("mov     pc, %0\n\t" : : "r"(x))
> 

applied to u-boot-samsung.

Thanks,
Minkyu Kang.


More information about the U-Boot mailing list