* [U-Boot] [PATCH] M28: Cleanup memsize.o OOT build
@ 2011-12-08 12:27 Marek Vasut
2011-12-08 19:46 ` [U-Boot] [PATCH V2] " Marek Vasut
2011-12-09 9:14 ` [U-Boot] [PATCH] " Stefano Babic
0 siblings, 2 replies; 5+ messages in thread
From: Marek Vasut @ 2011-12-08 12:27 UTC (permalink / raw)
To: u-boot
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Detlev Zundel <dzu@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
---
arch/arm/cpu/arm926ejs/mx28/Makefile | 7 +------
arch/arm/cpu/arm926ejs/mx28/spl_boot.c | 13 ++-----------
arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds | 12 ++++++------
include/configs/m28evk.h | 2 ++
4 files changed, 11 insertions(+), 23 deletions(-)
diff --git a/arch/arm/cpu/arm926ejs/mx28/Makefile b/arch/arm/cpu/arm926ejs/mx28/Makefile
index 372de8a..a2e3f77 100644
--- a/arch/arm/cpu/arm926ejs/mx28/Makefile
+++ b/arch/arm/cpu/arm926ejs/mx28/Makefile
@@ -28,7 +28,7 @@ LIB = $(obj)lib$(SOC).o
COBJS = clock.o mx28.o iomux.o timer.o
ifdef CONFIG_SPL_BUILD
-COBJS += memsize.o spl_boot.o spl_mem_init.o spl_power_init.o
+COBJS += spl_boot.o spl_mem_init.o spl_power_init.o
endif
SRCS := $(START:.o=.S) $(COBJS:.o=.c)
@@ -40,11 +40,6 @@ all: $(obj).depend $(LIB)
$(LIB): $(OBJS)
$(call cmd_link_o_target, $(OBJS))
-ifdef CONFIG_SPL_BUILD
-memsize.c:
- ln -sf $(TOPDIR)/common/memsize.c $@
-endif
-
#########################################################################
# defines $(obj).depend target
diff --git a/arch/arm/cpu/arm926ejs/mx28/spl_boot.c b/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
index 3cd4c24..dfb8309 100644
--- a/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
+++ b/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
@@ -68,17 +68,8 @@ inline void board_init_r(gd_t *id, ulong dest_addr)
;
}
-inline int printf(const char *fmt, ...)
-{
- return 0;
-}
-
-inline void __coloured_LED_init(void) {}
-inline void __red_LED_on(void) {}
-void coloured_LED_init(void)
- __attribute__((weak, alias("__coloured_LED_init")));
-void red_LED_on(void)
- __attribute__((weak, alias("__red_LED_on")));
+void serial_putc(const char c) {}
+void serial_puts(const char *s) {}
void hang(void) __attribute__ ((noreturn));
void hang(void)
{
diff --git a/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds b/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds
index 893320f..0fccd52 100644
--- a/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds
+++ b/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds
@@ -67,16 +67,16 @@ SECTIONS
*(.dynsym)
}
- _end = .;
-
- .bss __rel_dyn_start (OVERLAY) : {
+ .bss : {
+ . = ALIGN(4);
__bss_start = .;
- *(.bss)
- . = ALIGN(4);
+ *(.bss*)
+ . = ALIGN(4);
__bss_end__ = .;
}
- /DISCARD/ : { *(.bss*) }
+ _end = .;
+
/DISCARD/ : { *(.dynstr*) }
/DISCARD/ : { *(.dynsym*) }
/DISCARD/ : { *(.dynamic*) }
diff --git a/include/configs/m28evk.h b/include/configs/m28evk.h
index cdf7636..39c841f 100644
--- a/include/configs/m28evk.h
+++ b/include/configs/m28evk.h
@@ -50,6 +50,8 @@
#define CONFIG_SPL_NO_CPU_SUPPORT_CODE
#define CONFIG_SPL_START_S_PATH "arch/arm/cpu/arm926ejs/mx28"
#define CONFIG_SPL_LDSCRIPT "arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds"
+#define CONFIG_SPL_LIBCOMMON_SUPPORT
+#define CONFIG_SPL_LIBGENERIC_SUPPORT
/*
* U-Boot Commands
--
1.7.7.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [U-Boot] [PATCH V2] M28: Cleanup memsize.o OOT build
2011-12-08 12:27 [U-Boot] [PATCH] M28: Cleanup memsize.o OOT build Marek Vasut
@ 2011-12-08 19:46 ` Marek Vasut
2011-12-09 9:14 ` [U-Boot] [PATCH] " Stefano Babic
1 sibling, 0 replies; 5+ messages in thread
From: Marek Vasut @ 2011-12-08 19:46 UTC (permalink / raw)
To: u-boot
The current way memsize.c is built just made a symlink into the directory
with SPL and then compiled it like any other file there. This was bad as that
broke the out-of-tree build.
The new way introduced in this patch uses the standard spl/Makefile methods
(CONFIG_SPL_LIBCOMMON_SUPPORT / CONFIG_SPL_LIBGENERIC_SUPPORT) to let files in
common/ be built. Because common/Makefile says memsize.c is always built (SPL
and non-SPL build), this fixes our issue with memsize.c out-of-tree build.
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Detlev Zundel <dzu@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
---
arch/arm/cpu/arm926ejs/mx28/Makefile | 7 +------
arch/arm/cpu/arm926ejs/mx28/spl_boot.c | 13 ++-----------
arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds | 12 ++++++------
include/configs/m28evk.h | 2 ++
4 files changed, 11 insertions(+), 23 deletions(-)
V2: I have to learn to write meaningful commit messages
diff --git a/arch/arm/cpu/arm926ejs/mx28/Makefile b/arch/arm/cpu/arm926ejs/mx28/Makefile
index 372de8a..a2e3f77 100644
--- a/arch/arm/cpu/arm926ejs/mx28/Makefile
+++ b/arch/arm/cpu/arm926ejs/mx28/Makefile
@@ -28,7 +28,7 @@ LIB = $(obj)lib$(SOC).o
COBJS = clock.o mx28.o iomux.o timer.o
ifdef CONFIG_SPL_BUILD
-COBJS += memsize.o spl_boot.o spl_mem_init.o spl_power_init.o
+COBJS += spl_boot.o spl_mem_init.o spl_power_init.o
endif
SRCS := $(START:.o=.S) $(COBJS:.o=.c)
@@ -40,11 +40,6 @@ all: $(obj).depend $(LIB)
$(LIB): $(OBJS)
$(call cmd_link_o_target, $(OBJS))
-ifdef CONFIG_SPL_BUILD
-memsize.c:
- ln -sf $(TOPDIR)/common/memsize.c $@
-endif
-
#########################################################################
# defines $(obj).depend target
diff --git a/arch/arm/cpu/arm926ejs/mx28/spl_boot.c b/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
index 3cd4c24..dfb8309 100644
--- a/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
+++ b/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
@@ -68,17 +68,8 @@ inline void board_init_r(gd_t *id, ulong dest_addr)
;
}
-inline int printf(const char *fmt, ...)
-{
- return 0;
-}
-
-inline void __coloured_LED_init(void) {}
-inline void __red_LED_on(void) {}
-void coloured_LED_init(void)
- __attribute__((weak, alias("__coloured_LED_init")));
-void red_LED_on(void)
- __attribute__((weak, alias("__red_LED_on")));
+void serial_putc(const char c) {}
+void serial_puts(const char *s) {}
void hang(void) __attribute__ ((noreturn));
void hang(void)
{
diff --git a/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds b/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds
index 893320f..0fccd52 100644
--- a/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds
+++ b/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds
@@ -67,16 +67,16 @@ SECTIONS
*(.dynsym)
}
- _end = .;
-
- .bss __rel_dyn_start (OVERLAY) : {
+ .bss : {
+ . = ALIGN(4);
__bss_start = .;
- *(.bss)
- . = ALIGN(4);
+ *(.bss*)
+ . = ALIGN(4);
__bss_end__ = .;
}
- /DISCARD/ : { *(.bss*) }
+ _end = .;
+
/DISCARD/ : { *(.dynstr*) }
/DISCARD/ : { *(.dynsym*) }
/DISCARD/ : { *(.dynamic*) }
diff --git a/include/configs/m28evk.h b/include/configs/m28evk.h
index cdf7636..39c841f 100644
--- a/include/configs/m28evk.h
+++ b/include/configs/m28evk.h
@@ -50,6 +50,8 @@
#define CONFIG_SPL_NO_CPU_SUPPORT_CODE
#define CONFIG_SPL_START_S_PATH "arch/arm/cpu/arm926ejs/mx28"
#define CONFIG_SPL_LDSCRIPT "arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds"
+#define CONFIG_SPL_LIBCOMMON_SUPPORT
+#define CONFIG_SPL_LIBGENERIC_SUPPORT
/*
* U-Boot Commands
--
1.7.7.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [U-Boot] [PATCH] M28: Cleanup memsize.o OOT build
2011-12-08 12:27 [U-Boot] [PATCH] M28: Cleanup memsize.o OOT build Marek Vasut
2011-12-08 19:46 ` [U-Boot] [PATCH V2] " Marek Vasut
@ 2011-12-09 9:14 ` Stefano Babic
2011-12-09 9:48 ` Marek Vasut
1 sibling, 1 reply; 5+ messages in thread
From: Stefano Babic @ 2011-12-09 9:14 UTC (permalink / raw)
To: u-boot
On 08/12/2011 13:27, Marek Vasut wrote:
> Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
> Cc: Wolfgang Denk <wd@denx.de>
> Cc: Detlev Zundel <dzu@denx.de>
> Cc: Stefano Babic <sbabic@denx.de>
> ---
Hi Marek,
> arch/arm/cpu/arm926ejs/mx28/Makefile | 7 +------
> arch/arm/cpu/arm926ejs/mx28/spl_boot.c | 13 ++-----------
> arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds | 12 ++++++------
> include/configs/m28evk.h | 2 ++
> 4 files changed, 11 insertions(+), 23 deletions(-)
>
It seems to me that your patch does much more as what you describe in
the commit message.
> diff --git a/arch/arm/cpu/arm926ejs/mx28/spl_boot.c b/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
> index 3cd4c24..dfb8309 100644
> --- a/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
> +++ b/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
> @@ -68,17 +68,8 @@ inline void board_init_r(gd_t *id, ulong dest_addr)
> ;
> }
>
> -inline int printf(const char *fmt, ...)
> -{
> - return 0;
> -}
> -
> -inline void __coloured_LED_init(void) {}
> -inline void __red_LED_on(void) {}
> -void coloured_LED_init(void)
> - __attribute__((weak, alias("__coloured_LED_init")));
> -void red_LED_on(void)
> - __attribute__((weak, alias("__red_LED_on")));
> +void serial_putc(const char c) {}
> +void serial_puts(const char *s) {}
Make a note in the commit message about these changes (not related to
the subject)
> void hang(void) __attribute__ ((noreturn));
> void hang(void)
> {
> diff --git a/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds b/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds
> index 893320f..0fccd52 100644
> --- a/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds
> +++ b/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds
> @@ -67,16 +67,16 @@ SECTIONS
> *(.dynsym)
> }
>
> - _end = .;
> -
> - .bss __rel_dyn_start (OVERLAY) : {
> + .bss : {
> + . = ALIGN(4);
> __bss_start = .;
> - *(.bss)
> - . = ALIGN(4);
> + *(.bss*)
> + . = ALIGN(4);
> __bss_end__ = .;
> }
>
> - /DISCARD/ : { *(.bss*) }
> + _end = .;
> +
> /DISCARD/ : { *(.dynstr*) }
> /DISCARD/ : { *(.dynsym*) }
> /DISCARD/ : { *(.dynamic*) }
However, these change fix another issue. You want to cleanup
u-boot-spl.lds, but then there are some other parts I cannot understand.
For example, why is __u_boot_cmd_start = needed ?
If your goal is to cleanup the linker file, please submit a separate
patch removing also the unused sections in SPL.
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] 5+ messages in thread
* [U-Boot] [PATCH] M28: Cleanup memsize.o OOT build
2011-12-09 9:14 ` [U-Boot] [PATCH] " Stefano Babic
@ 2011-12-09 9:48 ` Marek Vasut
2011-12-09 10:37 ` Stefano Babic
0 siblings, 1 reply; 5+ messages in thread
From: Marek Vasut @ 2011-12-09 9:48 UTC (permalink / raw)
To: u-boot
> On 08/12/2011 13:27, Marek Vasut wrote:
> > Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
> > Cc: Wolfgang Denk <wd@denx.de>
> > Cc: Detlev Zundel <dzu@denx.de>
> > Cc: Stefano Babic <sbabic@denx.de>
> > ---
>
> Hi Marek,
>
> > arch/arm/cpu/arm926ejs/mx28/Makefile | 7 +------
> > arch/arm/cpu/arm926ejs/mx28/spl_boot.c | 13 ++-----------
> > arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds | 12 ++++++------
> > include/configs/m28evk.h | 2 ++
> > 4 files changed, 11 insertions(+), 23 deletions(-)
>
> It seems to me that your patch does much more as what you describe in
> the commit message.
Please check V2
>
> > diff --git a/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
> > b/arch/arm/cpu/arm926ejs/mx28/spl_boot.c index 3cd4c24..dfb8309 100644
> > --- a/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
> > +++ b/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
> > @@ -68,17 +68,8 @@ inline void board_init_r(gd_t *id, ulong dest_addr)
> >
> > ;
> >
> > }
> >
> > -inline int printf(const char *fmt, ...)
> > -{
> > - return 0;
> > -}
> > -
> > -inline void __coloured_LED_init(void) {}
> > -inline void __red_LED_on(void) {}
> > -void coloured_LED_init(void)
> > - __attribute__((weak, alias("__coloured_LED_init")));
> > -void red_LED_on(void)
> > - __attribute__((weak, alias("__red_LED_on")));
> > +void serial_putc(const char c) {}
> > +void serial_puts(const char *s) {}
>
> Make a note in the commit message about these changes (not related to
> the subject)
Actually I explained this in V2.
>
> > void hang(void) __attribute__ ((noreturn));
> > void hang(void)
> > {
> >
> > diff --git a/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds
> > b/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds index 893320f..0fccd52
> > 100644
> > --- a/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds
> > +++ b/arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds
> > @@ -67,16 +67,16 @@ SECTIONS
> >
> > *(.dynsym)
> >
> > }
> >
> > - _end = .;
> > -
> > - .bss __rel_dyn_start (OVERLAY) : {
> > + .bss : {
> > + . = ALIGN(4);
> >
> > __bss_start = .;
> >
> > - *(.bss)
> > - . = ALIGN(4);
> > + *(.bss*)
> > + . = ALIGN(4);
> >
> > __bss_end__ = .;
> >
> > }
> >
> > - /DISCARD/ : { *(.bss*) }
> > + _end = .;
> > +
> >
> > /DISCARD/ : { *(.dynstr*) }
> > /DISCARD/ : { *(.dynsym*) }
> > /DISCARD/ : { *(.dynamic*) }
>
> However, these change fix another issue.
Not really actually.
> You want to cleanup
> u-boot-spl.lds, but then there are some other parts I cannot understand.
> For example, why is __u_boot_cmd_start = needed ?
Well, u-boot-spl.lds will need a separate cleanup patch eventually maybe.
>
> If your goal is to cleanup the linker file, please submit a separate
> patch removing also the unused sections in SPL.
Not now, right now my goal is to fix the build issue. Linker file cleanup can
wait after .12 release.
M
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] [PATCH] M28: Cleanup memsize.o OOT build
2011-12-09 9:48 ` Marek Vasut
@ 2011-12-09 10:37 ` Stefano Babic
0 siblings, 0 replies; 5+ messages in thread
From: Stefano Babic @ 2011-12-09 10:37 UTC (permalink / raw)
To: u-boot
On 09/12/2011 10:48, Marek Vasut wrote:
>> On 08/12/2011 13:27, Marek Vasut wrote:
>>> Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
>>> Cc: Wolfgang Denk <wd@denx.de>
>>> Cc: Detlev Zundel <dzu@denx.de>
>>> Cc: Stefano Babic <sbabic@denx.de>
>>> ---
>>
>> Hi Marek,
>>
>>> arch/arm/cpu/arm926ejs/mx28/Makefile | 7 +------
>>> arch/arm/cpu/arm926ejs/mx28/spl_boot.c | 13 ++-----------
>>> arch/arm/cpu/arm926ejs/mx28/u-boot-spl.lds | 12 ++++++------
>>> include/configs/m28evk.h | 2 ++
>>> 4 files changed, 11 insertions(+), 23 deletions(-)
>>
>> It seems to me that your patch does much more as what you describe in
>> the commit message.
>
> Please check V2
Ah, ok, I see it.
>>> -inline int printf(const char *fmt, ...)
>>> -{
>>> - return 0;
>>> -}
>>> -
>>> -inline void __coloured_LED_init(void) {}
>>> -inline void __red_LED_on(void) {}
>>> -void coloured_LED_init(void)
>>> - __attribute__((weak, alias("__coloured_LED_init")));
>>> -void red_LED_on(void)
>>> - __attribute__((weak, alias("__red_LED_on")));
>>> +void serial_putc(const char c) {}
>>> +void serial_puts(const char *s) {}
>>
>> Make a note in the commit message about these changes (not related to
>> the subject)
>
> Actually I explained this in V2.
Ok, it is enough
>>> /DISCARD/ : { *(.dynstr*) }
>>> /DISCARD/ : { *(.dynsym*) }
>>> /DISCARD/ : { *(.dynamic*) }
>>
>> However, these change fix another issue.
>
> Not really actually.
>
>> You want to cleanup
>> u-boot-spl.lds, but then there are some other parts I cannot understand.
>> For example, why is __u_boot_cmd_start = needed ?
>
> Well, u-boot-spl.lds will need a separate cleanup patch eventually maybe.
>>
>> If your goal is to cleanup the linker file, please submit a separate
>> patch removing also the unused sections in SPL.
>
> Not now, right now my goal is to fix the build issue. Linker file cleanup can
> wait after .12 release.
Ok, well - I will merge it into u-boot-imx.
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] 5+ messages in thread
end of thread, other threads:[~2011-12-09 10:37 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-12-08 12:27 [U-Boot] [PATCH] M28: Cleanup memsize.o OOT build Marek Vasut
2011-12-08 19:46 ` [U-Boot] [PATCH V2] " Marek Vasut
2011-12-09 9:14 ` [U-Boot] [PATCH] " Stefano Babic
2011-12-09 9:48 ` Marek Vasut
2011-12-09 10:37 ` Stefano Babic
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox