Skip to contentSkip to conversation

powerpc/mpc83xx: Zero boot_flags arg for calling board_init_f()

PATCH New Valentin Longchamp 2 participants 5 messages Oct 3, 2014 – Nov 14, 2014 PowerPC

lore
Share & tools
lore
#0 lore raw

PATCH 1/2 powerpc/mpc83xx: Zero boot_flags arg for calling board_init_f()

The argument boot_flags of board_init_f() is not used at all in the powerpc specific board.c init sequence. Now with the generic init sequence, this boot_flags arg is used by board_init_f().

This patch sets the r3 register that is used to pass the boot_flags argument from the start.S board_init_f() call to 0 prior to the function call to avoid unknown content to end up in gd->flags.

---

 arch/powerpc/cpu/mpc83xx/start.S | 1 +
 1 file changed, 1 insertion(+)
arch/powerpc/cpu/mpc83xx/start.S +1 -0
index 36724e5..8abb3f1 100644
@@ -283,6 +283,7 @@ in_flash:
 	bl	cpu_init_f
 
 	/* run 1st part of board init code (in Flash)*/
+	li	r3, 0		/* clear boot_flag for calling board_init_f */
 	bl	board_init_f
 
 	/* NOTREACHED - board_init_f() does not return */
Signature · 1 line
1.8.0.1
#1 lore raw

PATCH 2/2 keymile/powerpc: move to the architecture-generic board system

This converts all the Keymile powerpc boards to the generic board initialization.

This includes the 3 Keymile powerpc subsystems: km82xx, km83xx, and kmp204x.

---

 include/configs/km/km83xx-common.h  | 3 +++
 include/configs/km/kmp204x-common.h | 3 +++
 include/configs/km82xx.h            | 3 +++
 3 files changed, 9 insertions(+)
include/configs/km/km83xx-common.h +3 -0
index ae6b6dc..940000e 100644
@@ -8,6 +8,9 @@
 #ifndef __CONFIG_KM83XX_H
 #define __CONFIG_KM83XX_H
 
+#define CONFIG_SYS_GENERIC_BOARD
+#define CONFIG_DISPLAY_BOARDINFO
+
 /* include common defines/options for all Keymile boards */
 #include "keymile-common.h"
 #include "km-powerpc.h"
include/configs/km/kmp204x-common.h +3 -0
index a0f9d29..b658c68 100644
@@ -21,6 +21,9 @@
 
 #define CONFIG_NAND_ECC_BCH
 
+#define CONFIG_SYS_GENERIC_BOARD
+#define CONFIG_DISPLAY_BOARDINFO
+
 /* common KM defines */
 #include "keymile-common.h"
 
include/configs/km82xx.h +3 -0
index 029c348..69ba66a 100644
@@ -29,6 +29,9 @@
 #error ("Board unsupported")
 #endif
 
+#define CONFIG_SYS_GENERIC_BOARD
+#define CONFIG_DISPLAY_BOARDINFO
+
 #define	CONFIG_SYS_TEXT_BASE	0xFE000000
 
 /* include common defines/options for all Keymile boards */
Signature · 1 line
1.8.0.1
#2 lore raw

PATCH 2/2 keymile/powerpc: move to the architecture-generic board system

Quoted 8 lines · Valentin Longchamp

This converts all the Keymile powerpc boards to the generic board initialization.

This includes the 3 Keymile powerpc subsystems: km82xx, km83xx, and kmp204x.

---

Applied to u-boot-mpc85xx master. Thanks.

York

#3 lore raw

PATCH 1/2 powerpc/mpc83xx: Zero boot_flags arg for calling board_init_f()

In reply to Valentin Longchamp
Quoted 20 lines · Valentin Longchamp

The argument boot_flags of board_init_f() is not used at all in the powerpc specific board.c init sequence. Now with the generic init sequence, this boot_flags arg is used by board_init_f().

This patch sets the r3 register that is used to pass the boot_flags argument from the start.S board_init_f() call to 0 prior to the function call to avoid unknown content to end up in gd->flags.

---

 arch/powerpc/cpu/mpc83xx/start.S | 1 +
 1 file changed, 1 insertion(+)
arch/powerpc/cpu/mpc83xx/start.S +0 -0
index 36724e5..8abb3f1 100644

arch/powerpc/cpu/mpc83xx/start.S in_flash: · line 289

Quoted 7 lines
arch/powerpc/cpu/mpc83xx/start.S +1 -0
@@ -283,6 +283,7 @@ in_flash:
 	bl	cpu_init_f
 
 	/* run 1st part of board init code (in Flash)*/
+	li	r3, 0		/* clear boot_flag for calling board_init_f */
 	bl	board_init_f
 
 	/* NOTREACHED - board_init_f() does not return */

Kim,

This is for 83xx. I think the patch is OK. I can take it in along with other patches when the merge window opens if you are OK.

York

#4 lore raw

PATCH 1/2 powerpc/mpc83xx: Zero boot_flags arg for calling board_init_f()

In reply to Valentin Longchamp
Quoted 10 lines · Valentin Longchamp

The argument boot_flags of board_init_f() is not used at all in the powerpc specific board.c init sequence. Now with the generic init sequence, this boot_flags arg is used by board_init_f().

This patch sets the r3 register that is used to pass the boot_flags argument from the start.S board_init_f() call to 0 prior to the function call to avoid unknown content to end up in gd->flags.

---

Applied to u-boot-mpc85xx master. Thanks.

York