Skip to contentSkip to conversation

arm: mxs: Properly set GD pointer in SPL

PATCH New Marek Vasut 2 participants 7 messages Mar 19, 2014 – Apr 2, 2014

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/2 arm: mxs: Properly set GD pointer in SPL

Set the GD pointer in the SPL to a defined symbol so various functions from U-Boot can be used without adverse side effects.

---
 arch/arm/cpu/arm926ejs/mxs/spl_boot.c | 5 +++++
 1 file changed, 5 insertions(+)
arch/arm/cpu/arm926ejs/mxs/spl_boot.c +5 -0
index 68c30af..87b63c1 100644
@@ -13,9 +13,13 @@
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/gpio.h>
+#include <linux/compiler.h>
 
 #include "mxs_init.h"
 
+DECLARE_GLOBAL_DATA_PTR;
+gd_t gdata __section(".data");
+
 /*
  * This delay function is intended to be used only in early stage of boot, where
  * clock are not set up yet. The timer used here is reset on every boot and
@@ -109,6 +113,7 @@ void mxs_common_spl_init(const uint32_t arg, const uint32_t *resptr,
 	struct mxs_spl_data *data = (struct mxs_spl_data *)
 		((CONFIG_SYS_TEXT_BASE - sizeof(struct mxs_spl_data)) & ~0xf);
 	uint8_t bootmode = mxs_get_bootmode_index();
+	gd = &gdata;
 
 	mxs_iomux_setup_multiple_pads(iomux_setup, iomux_size);
 	mxs_power_init();
Signature · 1 line
1.8.5.2
#1 lore raw

PATCH 2/2 arm: mxs: Add serial console support into SPL

Add support for serial console into the i.MX23/i.MX28 SPL. A full, uncrippled serial console support comes very helpful when debugging various spectacular hardware bringup issues early in the process. Because we do not use SPL framework, but have our own minimalistic SPL, which is compatible with the i.MX23/i.MX28 BootROM, we do not use preloader_console_init(), but instead use a similar function to start the console. Nonetheless, to avoid blowing up the size of the SPL binary, this support is enabled only if CONFIG_SPL_SERIAL_SUPPORT is defined, which is disabled by default.

---
 arch/arm/cpu/arm926ejs/mxs/spl_boot.c | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)
arch/arm/cpu/arm926ejs/mxs/spl_boot.c +15 -1
index 87b63c1..58ff8db 100644
@@ -18,7 +18,8 @@
 #include "mxs_init.h"
 
 DECLARE_GLOBAL_DATA_PTR;
-gd_t gdata __section(".data");
+static gd_t gdata __section(".data");
+static bd_t bdata __section(".data");
 
 /*
  * This delay function is intended to be used only in early stage of boot, where
@@ -106,6 +107,16 @@ static uint8_t mxs_get_bootmode_index(void)
 	return i;
 }
 
+static void mxs_spl_console_init(void)
+{
+#ifdef CONFIG_SPL_SERIAL_SUPPORT
+	gd->bd = &bdata;
+	gd->baudrate = CONFIG_BAUDRATE;
+	serial_init();
+	gd->have_console = 1;
+#endif
+}
+
 void mxs_common_spl_init(const uint32_t arg, const uint32_t *resptr,
 			 const iomux_cfg_t *iomux_setup,
 			 const unsigned int iomux_size)
@@ -116,6 +127,9 @@ void mxs_common_spl_init(const uint32_t arg, const uint32_t *resptr,
 	gd = &gdata;
 
 	mxs_iomux_setup_multiple_pads(iomux_setup, iomux_size);
+
+	mxs_spl_console_init();
+
 	mxs_power_init();
 
 	mxs_mem_init();
Signature · 1 line
1.8.5.2
#2 lore raw

PATCH 2/2 arm: mxs: Add serial console support into SPL

Quoted 10 lines · Marek Vasut

Add support for serial console into the i.MX23/i.MX28 SPL. A full, uncrippled serial console support comes very helpful when debugging various spectacular hardware bringup issues early in the process. Because we do not use SPL framework, but have our own minimalistic SPL, which is compatible with the i.MX23/i.MX28 BootROM, we do not use preloader_console_init(), but instead use a similar function to start the console. Nonetheless, to avoid blowing up the size of the SPL binary, this support is enabled only if CONFIG_SPL_SERIAL_SUPPORT is defined, which is disabled by default.

Quoted 3 lines

---

Applied after fixing warning:

arch/arm/cpu/arm926ejs/mxs/spl_boot.c:22:13: warning: 'bdata' defined but not used

to u-boot-imx, thanks !

Best regards,
Stefano Babic

Signature · 5 lines
=====================================================================
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
#3 lore raw

PATCH 2/2 arm: mxs: Add serial console support into SPL

Quoted 11 lines · Stefano Babic
Quoted 10 lines · Marek Vasut

Add support for serial console into the i.MX23/i.MX28 SPL. A full, uncrippled serial console support comes very helpful when debugging various spectacular hardware bringup issues early in the process. Because we do not use SPL framework, but have our own minimalistic SPL, which is compatible with the i.MX23/i.MX28 BootROM, we do not use preloader_console_init(), but instead use a similar function to start the console. Nonetheless, to avoid blowing up the size of the SPL binary, this support is enabled only if CONFIG_SPL_SERIAL_SUPPORT is defined, which is disabled by default.

Quoted 8 lines
Quoted 3 lines

---

Applied after fixing warning:

arch/arm/cpu/arm926ejs/mxs/spl_boot.c:22:13: warning: 'bdata' defined but not used

Tsk, stupid me. Thanks!

Best regards,
Marek Vasut

#4 lore raw

PATCH 2/2 arm: mxs: Add serial console support into SPL

Quoted 16 lines · Marek Vasut
Quoted 15 lines · Stefano Babic
Quoted 13 lines · Marek Vasut

Add support for serial console into the i.MX23/i.MX28 SPL. A full, uncrippled serial console support comes very helpful when debugging various spectacular hardware bringup issues early in the process. Because we do not use SPL framework, but have our own minimalistic SPL, which is compatible with the i.MX23/i.MX28 BootROM, we do not use preloader_console_init(), but instead use a similar function to start the console. Nonetheless, to avoid blowing up the size of the SPL binary, this support is enabled only if CONFIG_SPL_SERIAL_SUPPORT is defined, which is disabled by default.

---

Quoted 6 lines
Quoted 4 lines

Applied after fixing warning:

arch/arm/cpu/arm926ejs/mxs/spl_boot.c:22:13: warning: 'bdata' defined but not used

Tsk, stupid me. Thanks!

No, stupid me ! I pushed the tree before fixing your patch. I had to add the simple fix as separate commit, it was not my intention.

Best regards,
Stefano Babic

Signature · 5 lines
=====================================================================
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
#5 lore raw

PATCH 2/2 arm: mxs: Add serial console support into SPL

Quoted 19 lines · Stefano Babic
Quoted 18 lines · Marek Vasut
Quoted 17 lines · Stefano Babic
Quoted 10 lines · Marek Vasut

Add support for serial console into the i.MX23/i.MX28 SPL. A full, uncrippled serial console support comes very helpful when debugging various spectacular hardware bringup issues early in the process. Because we do not use SPL framework, but have our own minimalistic SPL, which is compatible with the i.MX23/i.MX28 BootROM, we do not use preloader_console_init(), but instead use a similar function to start the console. Nonetheless, to avoid blowing up the size of the SPL binary, this support is enabled only if CONFIG_SPL_SERIAL_SUPPORT is defined, which is disabled by default.

Quoted 3 lines

---

Applied after fixing warning:

Quoted 7 lines
Quoted 4 lines
Quoted 2 lines

arch/arm/cpu/arm926ejs/mxs/spl_boot.c:22:13: warning: 'bdata' defined but not used

Tsk, stupid me. Thanks!

No, stupid me ! I pushed the tree before fixing your patch. I had to add the simple fix as separate commit, it was not my intention.

Everything is crap! (TM) :-)

Best regards,
Marek Vasut

#6 lore raw

PATCH 1/2 arm: mxs: Properly set GD pointer in SPL

In reply to Marek Vasut
Quoted 6 lines · Marek Vasut

Set the GD pointer in the SPL to a defined symbol so various functions from U-Boot can be used without adverse side effects.

---

Applied to u-boot-imx, thanks !

Best regards,
Stefano Babic

Signature · 5 lines
=====================================================================
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================