diff options
author | Wolfgang Denk <wd@denx.de> | 2008-01-12 20:31:39 +0100 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2008-01-12 20:31:39 +0100 |
commit | 64134f011254123618798ff77c42ba196b2ec485 (patch) | |
tree | da048d328c9cb0bd00a89bb066d2e75cd5a52fb1 /board/freescale | |
parent | 3afac79ec27b91df185f090b31dad9620779f440 (diff) | |
download | u-boot-imx-64134f011254123618798ff77c42ba196b2ec485.zip u-boot-imx-64134f011254123618798ff77c42ba196b2ec485.tar.gz u-boot-imx-64134f011254123618798ff77c42ba196b2ec485.tar.bz2 |
Fix linker scripts: add NOLOAD atribute to .bss/.sbss sections
With recent toolchain versions, some boards would not build because
or errors like this one (here for ocotea board when building with
ELDK 4.2 beta):
ppc_4xx-ld: section .bootpg [fffff000 -> fffff23b] overlaps section .bss [fffee900 -> fffff8ab]
For many boards, the .bss section is big enough that it wraps around
at the end of the address space (0xFFFFFFFF), so the problem will not
be visible unless you use a 64 bit tool chain for development. On
some boards however, changes to the code size (due to different
optimizations) we bail out with section overlaps like above.
The fix is to add the NOLOAD attribute to the .bss and .sbss
sections, telling the linker that .bss does not consume any space in
the image.
Signed-off-by: Wolfgang Denk <wd@denx.de>
Diffstat (limited to 'board/freescale')
-rw-r--r-- | board/freescale/m5235evb/u-boot.lds | 2 | ||||
-rw-r--r-- | board/freescale/m5249evb/u-boot.lds | 2 | ||||
-rw-r--r-- | board/freescale/m5253evbe/u-boot.lds | 2 | ||||
-rw-r--r-- | board/freescale/m5329evb/u-boot.lds | 2 | ||||
-rw-r--r-- | board/freescale/m54455evb/u-boot.lds | 2 | ||||
-rw-r--r-- | board/freescale/mpc8540ads/u-boot.lds | 2 | ||||
-rw-r--r-- | board/freescale/mpc8541cds/u-boot.lds | 2 | ||||
-rw-r--r-- | board/freescale/mpc8544ds/u-boot.lds | 2 | ||||
-rw-r--r-- | board/freescale/mpc8548cds/u-boot.lds | 2 | ||||
-rw-r--r-- | board/freescale/mpc8555cds/u-boot.lds | 2 | ||||
-rw-r--r-- | board/freescale/mpc8560ads/u-boot.lds | 2 | ||||
-rw-r--r-- | board/freescale/mpc8568mds/u-boot.lds | 2 | ||||
-rw-r--r-- | board/freescale/mpc8610hpcd/u-boot.lds | 2 | ||||
-rw-r--r-- | board/freescale/mpc8641hpcn/u-boot.lds | 2 |
14 files changed, 14 insertions, 14 deletions
diff --git a/board/freescale/m5235evb/u-boot.lds b/board/freescale/m5235evb/u-boot.lds index 8ffd326..c13dd20 100644 --- a/board/freescale/m5235evb/u-boot.lds +++ b/board/freescale/m5235evb/u-boot.lds @@ -130,7 +130,7 @@ SECTIONS __init_end = .; __bss_start = .; - .bss : + .bss (NOLOAD) : { _sbss = .; *(.sbss) *(.scommon) diff --git a/board/freescale/m5249evb/u-boot.lds b/board/freescale/m5249evb/u-boot.lds index a803b1c..4f47323 100644 --- a/board/freescale/m5249evb/u-boot.lds +++ b/board/freescale/m5249evb/u-boot.lds @@ -131,7 +131,7 @@ SECTIONS __init_end = .; __bss_start = .; - .bss : + .bss (NOLOAD) : { _sbss = .; *(.sbss) *(.scommon) diff --git a/board/freescale/m5253evbe/u-boot.lds b/board/freescale/m5253evbe/u-boot.lds index e2fd070..ef28583 100644 --- a/board/freescale/m5253evbe/u-boot.lds +++ b/board/freescale/m5253evbe/u-boot.lds @@ -129,7 +129,7 @@ SECTIONS __init_end = .; __bss_start = .; - .bss : + .bss (NOLOAD) : { _sbss = .; *(.sbss) *(.scommon) diff --git a/board/freescale/m5329evb/u-boot.lds b/board/freescale/m5329evb/u-boot.lds index 9b994a0..e48d1bc 100644 --- a/board/freescale/m5329evb/u-boot.lds +++ b/board/freescale/m5329evb/u-boot.lds @@ -129,7 +129,7 @@ SECTIONS __init_end = .; __bss_start = .; - .bss : + .bss (NOLOAD) : { _sbss = .; *(.sbss) *(.scommon) diff --git a/board/freescale/m54455evb/u-boot.lds b/board/freescale/m54455evb/u-boot.lds index bda68e4..d76bc73 100644 --- a/board/freescale/m54455evb/u-boot.lds +++ b/board/freescale/m54455evb/u-boot.lds @@ -129,7 +129,7 @@ SECTIONS __init_end = .; __bss_start = .; - .bss : + .bss (NOLOAD) : { _sbss = .; *(.sbss) *(.scommon) diff --git a/board/freescale/mpc8540ads/u-boot.lds b/board/freescale/mpc8540ads/u-boot.lds index a7c68b3..bc0db55 100644 --- a/board/freescale/mpc8540ads/u-boot.lds +++ b/board/freescale/mpc8540ads/u-boot.lds @@ -138,7 +138,7 @@ SECTIONS __init_end = .; __bss_start = .; - .bss : + .bss (NOLOAD) : { *(.sbss) *(.scommon) *(.dynbss) diff --git a/board/freescale/mpc8541cds/u-boot.lds b/board/freescale/mpc8541cds/u-boot.lds index 4360d67..1e490d0 100644 --- a/board/freescale/mpc8541cds/u-boot.lds +++ b/board/freescale/mpc8541cds/u-boot.lds @@ -138,7 +138,7 @@ SECTIONS __init_end = .; __bss_start = .; - .bss : + .bss (NOLOAD) : { *(.sbss) *(.scommon) *(.dynbss) diff --git a/board/freescale/mpc8544ds/u-boot.lds b/board/freescale/mpc8544ds/u-boot.lds index 1a8aaa9..66bd4b6 100644 --- a/board/freescale/mpc8544ds/u-boot.lds +++ b/board/freescale/mpc8544ds/u-boot.lds @@ -136,7 +136,7 @@ SECTIONS __init_end = .; __bss_start = .; - .bss : + .bss (NOLOAD) : { *(.sbss) *(.scommon) *(.dynbss) diff --git a/board/freescale/mpc8548cds/u-boot.lds b/board/freescale/mpc8548cds/u-boot.lds index ee772d3..acf25e3 100644 --- a/board/freescale/mpc8548cds/u-boot.lds +++ b/board/freescale/mpc8548cds/u-boot.lds @@ -137,7 +137,7 @@ SECTIONS __init_end = .; __bss_start = .; - .bss : + .bss (NOLOAD) : { *(.sbss) *(.scommon) *(.dynbss) diff --git a/board/freescale/mpc8555cds/u-boot.lds b/board/freescale/mpc8555cds/u-boot.lds index df21ea8..e9fa51e 100644 --- a/board/freescale/mpc8555cds/u-boot.lds +++ b/board/freescale/mpc8555cds/u-boot.lds @@ -138,7 +138,7 @@ SECTIONS __init_end = .; __bss_start = .; - .bss : + .bss (NOLOAD) : { *(.sbss) *(.scommon) *(.dynbss) diff --git a/board/freescale/mpc8560ads/u-boot.lds b/board/freescale/mpc8560ads/u-boot.lds index c2cba61..96af2b1 100644 --- a/board/freescale/mpc8560ads/u-boot.lds +++ b/board/freescale/mpc8560ads/u-boot.lds @@ -141,7 +141,7 @@ SECTIONS __init_end = .; __bss_start = .; - .bss : + .bss (NOLOAD) : { *(.sbss) *(.scommon) *(.dynbss) diff --git a/board/freescale/mpc8568mds/u-boot.lds b/board/freescale/mpc8568mds/u-boot.lds index 4682041..7917409 100644 --- a/board/freescale/mpc8568mds/u-boot.lds +++ b/board/freescale/mpc8568mds/u-boot.lds @@ -140,7 +140,7 @@ SECTIONS __init_end = .; __bss_start = .; - .bss : + .bss (NOLOAD) : { *(.sbss) *(.scommon) *(.dynbss) diff --git a/board/freescale/mpc8610hpcd/u-boot.lds b/board/freescale/mpc8610hpcd/u-boot.lds index ae9c6c4..37838ec 100644 --- a/board/freescale/mpc8610hpcd/u-boot.lds +++ b/board/freescale/mpc8610hpcd/u-boot.lds @@ -123,7 +123,7 @@ SECTIONS __init_end = .; __bss_start = .; - .bss : + .bss (NOLOAD) : { *(.sbss) *(.scommon) *(.dynbss) diff --git a/board/freescale/mpc8641hpcn/u-boot.lds b/board/freescale/mpc8641hpcn/u-boot.lds index fd16362..9900670 100644 --- a/board/freescale/mpc8641hpcn/u-boot.lds +++ b/board/freescale/mpc8641hpcn/u-boot.lds @@ -124,7 +124,7 @@ SECTIONS __init_end = .; __bss_start = .; - .bss : + .bss (NOLOAD) : { *(.sbss) *(.scommon) *(.dynbss) |