Move assembly newline function into common debug code
authorJustin Chadwell <justin.chadwell@arm.com>
Tue, 20 Aug 2019 09:58:49 +0000 (10:58 +0100)
committerPaul Beesley <paul.beesley@arm.com>
Thu, 29 Aug 2019 12:00:59 +0000 (12:00 +0000)
Printing a newline is a relatively common functionality for code to want
to do. Therefore, this patch now moves this function into a common part
of the code that anyone can use.

Change-Id: I2cad699fde00ef8d2aabf8bf35742ddd88d090ba
Signed-off-by: Justin Chadwell <justin.chadwell@arm.com>
bl31/aarch64/crash_reporting.S
common/aarch64/debug.S

index 2c41029813e7aef92049d8c225550750d25c5587..f2c12961d5ce12bf08493d3d14923c504c1b92a3 100644 (file)
@@ -61,14 +61,6 @@ excpt_msg:
 intr_excpt_msg:
        .asciz "Unhandled Interrupt Exception in EL3.\nx30"
 
-       /*
-        * Helper function to print newline to console.
-        */
-func print_newline
-       mov     x0, '\n'
-       b       plat_crash_console_putc
-endfunc print_newline
-
        /*
         * Helper function to print from crash buf.
         * The print loop is controlled by the buf size and
@@ -101,7 +93,7 @@ test_size_list:
        bl      print_alignment
        ldr     x4, [x7], #REGSZ
        bl      asm_print_hex
-       bl      print_newline
+       bl      asm_print_newline
        b       test_size_list
 exit_size_print:
        mov     x30, sp
@@ -253,7 +245,7 @@ func do_crash_reporting
        /* report x30 first from the crash buf */
        ldr     x4, [x0, #REGSZ * 7]
        bl      asm_print_hex
-       bl      print_newline
+       bl      asm_print_newline
        /* Load the crash buf address */
        mrs     x0, tpidr_el3
        /* Now mov x7 into crash buf */
index ac47cbe9ef217c30625c27e4f856e06f208e2088..e6e32985393a3aed34be4629e4cf124a170f0c73 100644 (file)
@@ -11,6 +11,7 @@
        .globl  asm_print_str
        .globl  asm_print_hex
        .globl  asm_print_hex_bits
+       .globl  asm_print_newline
        .globl  asm_assert
        .globl  do_panic
 
@@ -130,6 +131,15 @@ asm_print_hex_bits:
        ret     x3
 endfunc asm_print_hex
 
+/*
+ * Helper function to print newline to console
+ * Clobber: x0
+ */
+func asm_print_newline
+       mov     x0, '\n'
+       b       plat_crash_console_putc
+endfunc asm_print_newline
+
        /***********************************************************
         * The common implementation of do_panic for all BL stages
         ***********************************************************/