nios2: call board_init_f_mem
authorThomas Chou <thomas@wytron.com.tw>
Wed, 9 Sep 2015 07:09:43 +0000 (15:09 +0800)
committerThomas Chou <thomas@wytron.com.tw>
Thu, 22 Oct 2015 23:28:50 +0000 (07:28 +0800)
We will need CONFIG_SYS_MALLOC_F_LEN to use serial uclass.
So we shall undefine CONFIG_SYS_GENERIC_GLOBAL_DATA, and
call board_init_f_mem() to allocates early malloc() memory
with size of CONFIG_SYS_MALLOC_F_LEN in board_f.c.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Marek Vasut <marex@denx.de>
arch/nios2/cpu/start.S
arch/nios2/include/asm/config.h

index 5c7074e09c192fc877b47b00795a88886366e3c5..6c7c7770441bc88c7f4704280055263ba81c3682 100644 (file)
@@ -120,6 +120,16 @@ _reloc:
        stw     r0, 4(sp)
        mov     fp, sp
 
+       /* Allocate and zero GD, update SP */
+       mov     r4, sp
+       movhi   r2, %hi(board_init_f_mem@h)
+       ori     r2, r2, %lo(board_init_f_mem@h)
+       callr   r2
+
+       /* Update stack- and frame-pointers */
+       mov     sp, r2
+       mov     fp, sp
+
        /*
         * Call board_init_f -- never returns
         */
index 9c13848ea2b93d4e072304ce24cfc26e4a8b1c2d..cd29734789449b2cd0a0a006a821af9cf897e0d1 100644 (file)
@@ -7,6 +7,4 @@
 #ifndef _ASM_CONFIG_H_
 #define _ASM_CONFIG_H_
 
-#define CONFIG_SYS_GENERIC_GLOBAL_DATA
-
 #endif