* [U-Boot] [PATCH v2] mx31ads: Use the new relocation scheme
@ 2011-06-01 19:46 Fabio Estevam
2011-06-02 6:28 ` Stefano Babic
0 siblings, 1 reply; 4+ messages in thread
From: Fabio Estevam @ 2011-06-01 19:46 UTC (permalink / raw)
To: u-boot
This fixes the MX31ADS build by using the new relocation scheme.
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
---
Changes since v1:
- Fixed lines over 80 characters.
Build tested only.
Do not have the hardware handy to test.
board/freescale/mx31ads/mx31ads.c | 19 ++++++++++++---
board/freescale/mx31ads/u-boot.lds | 42 ++++++++++++++++++++++++++++-------
include/configs/mx31ads.h | 9 +++++++
3 files changed, 57 insertions(+), 13 deletions(-)
diff --git a/board/freescale/mx31ads/mx31ads.c b/board/freescale/mx31ads/mx31ads.c
index a298e05..e46ad23 100644
--- a/board/freescale/mx31ads/mx31ads.c
+++ b/board/freescale/mx31ads/mx31ads.c
@@ -28,15 +28,21 @@
DECLARE_GLOBAL_DATA_PTR;
-int dram_init (void)
+int dram_init(void)
+{
+ /* dram_init must store complete ramsize in gd->ram_size */
+ gd->ram_size = get_ram_size((volatile void *)CONFIG_SYS_SDRAM_BASE,
+ PHYS_SDRAM_1_SIZE);
+ return 0;
+}
+
+void dram_init_banksize(void)
{
gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE;
-
- return 0;
}
-int board_init (void)
+int board_early_init_f(void)
{
int i;
@@ -94,6 +100,11 @@ int board_init (void)
readb(CS4_BASE + 8);
readb(CS4_BASE + 7);
+ return 0;
+}
+
+int board_init(void)
+{
gd->bd->bi_arch_number = MACH_TYPE_MX31ADS; /* board id for linux */
gd->bd->bi_boot_params = 0x80000100; /* adress of boot parameters */
diff --git a/board/freescale/mx31ads/u-boot.lds b/board/freescale/mx31ads/u-boot.lds
index b081b21..79eb7ac 100644
--- a/board/freescale/mx31ads/u-boot.lds
+++ b/board/freescale/mx31ads/u-boot.lds
@@ -48,23 +48,47 @@ SECTIONS
*(.text)
}
-
. = ALIGN(4);
- .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
+ .rodata : { *(.rodata) }
. = ALIGN(4);
- .data : { *(.data) }
+ .data : {
+ *(.data)
+ }
. = ALIGN(4);
- .got : { *(.got) }
-
- . = .;
__u_boot_cmd_start = .;
.u_boot_cmd : { *(.u_boot_cmd) }
__u_boot_cmd_end = .;
. = ALIGN(4);
- __bss_start = .;
- .bss : { *(.bss) . = ALIGN(4); }
- __bss_end__ = .;
+
+ .rel.dyn : {
+ __rel_dyn_start = .;
+ *(.rel*)
+ __rel_dyn_end = .;
+ }
+
+ .dynsym : {
+ __dynsym_start = .;
+ *(.dynsym)
+ }
+
+ _end = .;
+
+ .bss __rel_dyn_start (OVERLAY) : {
+ __bss_start = .;
+ *(.bss)
+ . = ALIGN(4);
+ __bss_end__ = .;
+ }
+
+ /DISCARD/ : { *(.bss*) }
+ /DISCARD/ : { *(.dynstr*) }
+ /DISCARD/ : { *(.dynsym*) }
+ /DISCARD/ : { *(.dynamic*) }
+ /DISCARD/ : { *(.hash*) }
+ /DISCARD/ : { *(.plt*) }
+ /DISCARD/ : { *(.interp*) }
+ /DISCARD/ : { *(.gnu*) }
}
diff --git a/include/configs/mx31ads.h b/include/configs/mx31ads.h
index 5ea59b4..2046bbf 100644
--- a/include/configs/mx31ads.h
+++ b/include/configs/mx31ads.h
@@ -160,6 +160,15 @@
#define CONFIG_NR_DRAM_BANKS 1
#define PHYS_SDRAM_1 CSD0_BASE
#define PHYS_SDRAM_1_SIZE (128 * 1024 * 1024)
+#define CONFIG_BOARD_EARLY_INIT_F
+
+#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1
+#define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR
+#define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE
+#define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_SIZE - \
+ GENERATED_GBL_DATA_SIZE)
+#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_INIT_RAM_ADDR + \
+ CONFIG_SYS_GBL_DATA_OFFSET)
/*-----------------------------------------------------------------------
* FLASH and environment organization
--
1.6.0.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [U-Boot] [PATCH v2] mx31ads: Use the new relocation scheme
2011-06-01 19:46 [U-Boot] [PATCH v2] mx31ads: Use the new relocation scheme Fabio Estevam
@ 2011-06-02 6:28 ` Stefano Babic
2011-06-02 16:02 ` Fabio Estevam
0 siblings, 1 reply; 4+ messages in thread
From: Stefano Babic @ 2011-06-02 6:28 UTC (permalink / raw)
To: u-boot
On 06/01/2011 09:46 PM, Fabio Estevam wrote:
> This fixes the MX31ADS build by using the new relocation scheme.
>
> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> ---
Hi Fabio,
> Changes since v1:
>
> - Fixed lines over 80 characters.
>
> Build tested only.
>
> Do not have the hardware handy to test.
Maybe someone can help on this topic ;-)
> -int dram_init (void) +int dram_init(void) +{ + /* dram_init must
> store complete ramsize in gd->ram_size */ + gd->ram_size =
> get_ram_size((volatile void *)CONFIG_SYS_SDRAM_BASE,
I know it is the same, but if you use PHYS_SDRAM_1 instead of
CONFIG_SYS_SDRAM_BASE (as most boards do), the reader understands easier
that the start address and the size are strictly connected.
> --- a/board/freescale/mx31ads/u-boot.lds +++
> b/board/freescale/mx31ads/u-boot.lds @@ -48,23 +48,47 @@ SECTIONS
>
Can we get rid of this file ? We do not need anymore, and you can also
remove config.mk as well.
Your patch makes u-boot.lds in board directory identical (if I have not
missed something) to arch/arm/cpu/arm1136/u-boot.lds.
Best regards,
Stefano
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 4+ messages in thread
* [U-Boot] [PATCH v2] mx31ads: Use the new relocation scheme
2011-06-02 6:28 ` Stefano Babic
@ 2011-06-02 16:02 ` Fabio Estevam
2011-06-02 17:39 ` Stefano Babic
0 siblings, 1 reply; 4+ messages in thread
From: Fabio Estevam @ 2011-06-02 16:02 UTC (permalink / raw)
To: u-boot
Hi Stefano,
On Thu, Jun 2, 2011 at 3:28 AM, Stefano Babic <sbabic@denx.de> wrote:
...
> I know it is the same, but if you use PHYS_SDRAM_1 instead of
> CONFIG_SYS_SDRAM_BASE (as most boards do), the reader understands easier
> that the start address and the size are strictly connected.
OK.
>
>> --- a/board/freescale/mx31ads/u-boot.lds +++
>> b/board/freescale/mx31ads/u-boot.lds @@ -48,23 +48,47 @@ SECTIONS
>>
>
> Can we get rid of this file ? We do not need anymore, and you can also
> remove config.mk as well.
If I remove the board/freescale/mx31ads/u-boot.ld then I get the
following error:
010q1/bin/../lib/gcc/arm-none-linux-gnueabi/4.4.1/armv4t -lgcc -Map
u-boot.map -o u-boot
common/libcommon.o:(.data+0x80c): undefined reference to `environment'
and I think that is due to the fact that
board/freescale/mx31ads/u-boot.ld is a bit customized as per the
comment below:
.text :
{
/* WARNING - the following is hand-optimized to fit within */
/* the sector layout of our flash chips! XXX FIXME XXX */
arch/arm/cpu/arm1136/start.o (.text)
board/freescale/mx31ads/libmx31ads.o (.text)
arch/arm/lib/libarm.o (.text)
net/libnet.o (.text)
drivers/mtd/libmtd.o (.text)
. = DEFINED(env_offset) ? env_offset : .;
common/env_embedded.o(.text)
My intention on this patch was to fix the MX31ADS build so that this
board does not get removed from U-boot.
Would it be OK if I resend a new patch taking in consideration your
other comments, except the removal of
board/freescale/mx31ads/u-boot.ld ?
Or would you have any other suggestion?
Regards,
Fabio Estevam
^ permalink raw reply [flat|nested] 4+ messages in thread
* [U-Boot] [PATCH v2] mx31ads: Use the new relocation scheme
2011-06-02 16:02 ` Fabio Estevam
@ 2011-06-02 17:39 ` Stefano Babic
0 siblings, 0 replies; 4+ messages in thread
From: Stefano Babic @ 2011-06-02 17:39 UTC (permalink / raw)
To: u-boot
On 06/02/2011 06:02 PM, Fabio Estevam wrote:
> Hi Stefano,
>
Hi Fabio,
>
> My intention on this patch was to fix the MX31ADS build so that this
> board does not get removed from U-boot.
Sure. This is the first goal.
>
> Would it be OK if I resend a new patch taking in consideration your
> other comments, except the removal of
> board/freescale/mx31ads/u-boot.ld ?
Agree.
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2011-06-02 17:39 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-06-01 19:46 [U-Boot] [PATCH v2] mx31ads: Use the new relocation scheme Fabio Estevam
2011-06-02 6:28 ` Stefano Babic
2011-06-02 16:02 ` Fabio Estevam
2011-06-02 17:39 ` Stefano Babic
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.