
Hi Tom,
On 3 March 2015 at 07:48, Tom Rini trini@konsulko.com wrote:
On Tue, Mar 03, 2015 at 09:06:15AM -0500, Tom Rini wrote:
On Mon, Mar 02, 2015 at 09:39:37PM -0700, Simon Glass wrote:
Hi Tom,
On 2 March 2015 at 17:51, Tom Rini trini@konsulko.com wrote:
On Mon, Mar 02, 2015 at 03:19:05PM -0700, Simon Glass wrote:
Hi,
On 26 February 2015 at 10:26, Simon Glass sjg@chromium.org wrote:
This series includes a few more patches aimed at getting rid of gdata, the parallel global_data structure introduced on some ARM boards.
It also collects together the other patches which have been sent previously, so that everything is in one place.
I would like get this agreed and applied to u-boot-dm this week if possible so that we will at last have driver model available in SPL.
This series is available at u-boot-dm/spl-working.
Changes in v5:
- Rebase to master
Are there any more comments on this? I know Albert was looking at applying it, but I am tempted to bring it through the u-boot-dm tree and get it in. RC3 is soon!
Did you have something that switched beaglebone black over to this? Thanks!
I think I sent patches at the time but they were too radical. I'm even nervous about the current set which is why I want time for people to test this.
I'll dig this up and send a v6.
I recall you had something radical before but I solved those problems (I thought!) differently and that brought us back to the need to add CONFIG_SPL_STACK_R which shouldn't be a big deal. I'm kicking at the problem again differently this morning (aside, conmux + XMODEM is broken in conmux it seem which breaks my workflow on some boards pretty bad).
OK, yeah, it's not _that_ bad:
diff --git a/arch/arm/cpu/armv7/am33xx/board.c b/arch/arm/cpu/armv7/am33xx/board.c index 81477aa..4436413 100644 --- a/arch/arm/cpu/armv7/am33xx/board.c +++ b/arch/arm/cpu/armv7/am33xx/board.c @@ -204,18 +204,20 @@ int arch_misc_init(void) }
#ifndef CONFIG_SKIP_LOWLEVEL_INIT +#ifdef CONFIG_SPL_BUILD /*
- In the case of non-SPL based booting we'll want to call these
- functions a tiny bit later as it will require gd to be set and cleared
- and that's not true in s_init in this case so we cannot do it there.
*/ -int board_early_init_f(void) +void board_init_f(ulong dummy) { prcm_init(); set_mux_conf_regs();
return 0;
sdram_init();
} +#endif
/*
- This function is the place to do per-board things such as ramp up the
@@ -298,9 +300,5 @@ void s_init(void) /* Enable RTC32K clock */ rtc32k_enable(); #endif -#ifdef CONFIG_SPL_BUILD
board_early_init_f();
sdram_init();
-#endif } #endif diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig index 2e5aeaa..deecf95 100644 --- a/configs/am335x_evm_defconfig +++ b/configs/am335x_evm_defconfig @@ -1,4 +1,6 @@ CONFIG_SPL=y +CONFIG_CONFIG_SPL_STACK_R=y +CONFIG_CONFIG_SPL_STACK_R_ADDR=0x82000000 CONFIG_SYS_EXTRA_OPTIONS="NAND" CONFIG_CONS_INDEX=1 +S:CONFIG_ARM=y diff --git a/include/configs/ti_armv7_common.h b/include/configs/ti_armv7_common.h index 2bd1164..1882073 100644 --- a/include/configs/ti_armv7_common.h +++ b/include/configs/ti_armv7_common.h @@ -216,7 +216,6 @@
- end of the BSS area. We place our stack at 32MiB after the start of
- DRAM to allow room for all of the above.
*/ -#define CONFIG_SPL_STACK (CONFIG_SYS_SDRAM_BASE + (32 << 20)) #ifndef CONFIG_SYS_TEXT_BASE #define CONFIG_SYS_TEXT_BASE 0x80800000 #endif
I might even go so far as to say that's a clean-up. I do need to put this through it's paces tho on am335x and then work on converting the rest of the families.
Yes this looks similar to what I was fiddling with this morning. It's at u-boot-dm/spl-working. It's just finished a run through buildman so I'll resend v6. I made a change to the first patch to keep gdata around for non-DM boards (seems prudent just in case).
But, Albert, shall we put this in right after -rc3?
Regards, Simon