En passant this adds support for PBL_BREAK. While there is no 64 bit support available for mvebu, keeping the difference between arch/arm/mach-mvebu/include/mach/barebox-arm-head.h and arch/arm/include/asm/barebox-arm-head.h minimal is a good thing. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx> --- Changes in this v2: Only some whitespace changes to reduce the diff between the two headers even more. --- .../include/mach/barebox-arm-head.h | 25 ++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/arch/arm/mach-mvebu/include/mach/barebox-arm-head.h b/arch/arm/mach-mvebu/include/mach/barebox-arm-head.h index 3035f40ddf3b..723e2ab4c8b5 100644 --- a/arch/arm/mach-mvebu/include/mach/barebox-arm-head.h +++ b/arch/arm/mach-mvebu/include/mach/barebox-arm-head.h @@ -4,6 +4,7 @@ static inline void __barebox_arm_head(void) { __asm__ __volatile__ ( +#ifdef CONFIG_CPU_32 #ifdef CONFIG_THUMB2_BAREBOX ".arm\n" "adr r9, 1f + 1\n" @@ -23,11 +24,23 @@ static inline void __barebox_arm_head(void) "1: b 1b\n" "1: b 1b\n" "1: b 1b\n" +#endif +#else + "b 2f\n" + "nop\n" + "nop\n" + "nop\n" + "nop\n" + "nop\n" #endif ".asciz \"barebox\"\n" +#ifdef CONFIG_CPU_32 ".word _text\n" /* text base. If copied there, * barebox can skip relocation */ +#else + ".word 0xffffffff\n" +#endif ".word _barebox_image_size\n" /* image size to copy */ /* @@ -42,9 +55,19 @@ static inline void __barebox_arm_head(void) ".word 0x55555555\n" ".endr\n" "2:\n" +#ifdef CONFIG_PBL_BREAK +#ifdef CONFIG_CPU_V8 + "brk #17\n" +#else + "bkpt #17\n" +#endif + "nop\n" +#else + "nop\n" + "nop\n" +#endif ); } - static inline void barebox_arm_head(void) { __barebox_arm_head(); -- 2.30.2 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox