Signed-off-by: Oleksij Rempel <o.rem...@pengutronix.de>
---
 arch/mips/include/asm/asm.h | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/arch/mips/include/asm/asm.h b/arch/mips/include/asm/asm.h
index 12e17581b8..b9ccccc0cc 100644
--- a/arch/mips/include/asm/asm.h
+++ b/arch/mips/include/asm/asm.h
@@ -79,6 +79,35 @@ symbol:              .frame  sp, framesize, rpc
                .globl  symbol;                         \
 symbol:
 
+/*
+ * ENTRY_FUNCTION - mark start of entry function
+ */
+#define ENTRY_FUNCTION(symbol)                         \
+       .set noreorder;                                 \
+       .section .text_head_entry.BOARD_PBL_START;      \
+       .align 4;                                       \
+                                                       \
+EXPORT(symbol)
+
+/*
+ * ENTRY_FUNCTION_END - mark end of entry function
+ */
+#define ENTRY_FUNCTION_END(symbol,dtb_start,dtb_end)   \
+       mips_nmon;                                      \
+       copy_to_link_location   symbol;                 \
+       stack_setup;                                    \
+                                                       \
+       la      a0, dtb_start;                          \
+       la      a1, dtb_end;                            \
+       la      v0, pbl_main_entry;                     \
+       jal     v0;                                     \
+        nop;                                           \
+                                                       \
+       /* No return */                                 \
+__error:                                               \
+       b       __error;                                \
+        nop;
+
 /*
  * FEXPORT - export definition of a function symbol
  */
-- 
2.19.1


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

Reply via email to