[U-Boot-Users] [PATCH] Fix linker scripts: add NOLOAD atribute to .bss/.sbss sections

Wolfgang Denk
2007-12-07T11:16:54Z

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):
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>
---
board/BuS/EB+MCF-EV123/u-boot.lds | 2 +-
board/LEOX/elpt860/u-boot.lds | 2 +-
board/MAI/AmigaOneG3SE/u-boot.lds | 2 +-
board/Marvell/db64360/u-boot.lds | 2 +-
board/Marvell/db64460/u-boot.lds | 2 +-
board/RPXClassic/u-boot.lds | 2 +-
board/RPXlite/u-boot.lds | 2 +-
board/RPXlite_dw/u-boot.lds | 2 +-
board/RRvision/u-boot.lds | 2 +-
board/adder/u-boot.lds | 2 +-
board/ads5121/u-boot.lds | 2 +-
board/adsvix/u-boot.lds | 2 +-
board/altera/dk1c20/u-boot.lds | 2 +-
board/altera/dk1s10/u-boot.lds | 2 +-
board/altera/ep1c20/u-boot.lds | 4 ++--
board/altera/ep1s10/u-boot.lds | 4 ++--
board/altera/ep1s40/u-boot.lds | 4 ++--
board/amcc/acadia/u-boot-nand.lds | 2 +-
board/amcc/acadia/u-boot.lds | 2 +-
board/amcc/bamboo/u-boot-nand.lds | 2 +-
board/amcc/bamboo/u-boot.lds | 2 +-
board/amcc/bubinga/u-boot.lds | 2 +-
board/amcc/ebony/u-boot.lds | 2 +-
board/amcc/katmai/u-boot.lds | 2 +-
board/amcc/luan/u-boot.lds | 2 +-
board/amcc/ocotea/u-boot.lds | 2 +-
board/amcc/sequoia/u-boot-nand.lds | 2 +-
board/amcc/sequoia/u-boot.lds | 2 +-
board/amcc/taihu/u-boot.lds | 2 +-
board/amcc/taishan/u-boot.lds | 2 +-
board/amcc/walnut/u-boot.lds | 2 +-
board/amcc/yosemite/u-boot.lds | 2 +-
board/amcc/yucca/u-boot.lds | 2 +-
board/amirix/ap1000/u-boot.lds | 2 +-
board/armadillo/u-boot.lds | 2 +-
board/assabet/u-boot.lds | 2 +-
board/at91rm9200dk/u-boot.lds | 2 +-
board/atmel/atstk1000/u-boot.lds | 2 +-
board/c2mon/u-boot.lds | 2 +-
board/cds/mpc8541cds/u-boot.lds | 2 +-
board/cds/mpc8548cds/u-boot.lds | 2 +-
board/cds/mpc8555cds/u-boot.lds | 2 +-
board/cerf250/u-boot.lds | 2 +-
board/cm4008/u-boot.lds | 2 +-
board/cm41xx/u-boot.lds | 2 +-
board/cm5200/u-boot.lds | 2 +-
board/cmc_pu2/u-boot.lds | 2 +-
board/cobra5272/u-boot.lds | 2 +-
board/cogent/u-boot.lds | 2 +-
board/cradle/u-boot.lds | 2 +-
board/cray/L1/u-boot.lds | 2 +-
board/csb226/u-boot.lds | 2 +-
board/csb272/u-boot.lds | 2 +-
board/csb472/u-boot.lds | 2 +-
board/csb637/u-boot.lds | 2 +-
board/dave/B2/u-boot.lds | 2 +-
board/dave/PPChameleonEVB/u-boot.lds | 2 +-
board/davinci/dv-evm/u-boot.lds | 2 +-
board/davinci/schmoogie/u-boot.lds | 2 +-
board/davinci/sonata/u-boot.lds | 2 +-
board/dbau1x00/u-boot.lds | 4 ++--
board/delta/u-boot.lds | 2 +-
board/dnp1110/u-boot.lds | 2 +-
board/eltec/bab7xx/u-boot.lds | 2 +-
board/eltec/elppc/u-boot.lds | 2 +-
board/eltec/mhpc/u-boot.lds | 2 +-
board/emk/top860/u-boot.lds | 2 +-
board/ep7312/u-boot.lds | 2 +-
board/ep88x/u-boot.lds | 2 +-
board/eric/u-boot.lds | 2 +-
board/esd/adciop/u-boot.lds | 2 +-
board/esd/apc405/u-boot.lds | 2 +-
board/esd/ar405/u-boot.lds | 2 +-
board/esd/ash405/u-boot.lds | 2 +-
board/esd/canbt/u-boot.lds | 2 +-
board/esd/cms700/u-boot.lds | 2 +-
board/esd/cpci2dp/u-boot.lds | 2 +-
board/esd/cpci405/u-boot.lds | 2 +-
board/esd/cpci440/u-boot.lds | 2 +-
board/esd/cpci750/u-boot.lds | 2 +-
board/esd/cpciiser4/u-boot.lds | 2 +-
board/esd/dasa_sim/u-boot.lds | 2 +-
board/esd/dp405/u-boot.lds | 2 +-
board/esd/du405/u-boot.lds | 2 +-
board/esd/hh405/u-boot.lds | 2 +-
board/esd/hub405/u-boot.lds | 2 +-
board/esd/ocrtc/u-boot.lds | 2 +-
board/esd/pci405/u-boot.lds | 2 +-
board/esd/plu405/u-boot.lds | 2 +-
board/esd/pmc405/u-boot.lds | 2 +-
board/esd/tasreg/u-boot.lds | 2 +-
board/esd/voh405/u-boot.lds | 2 +-
board/esd/vom405/u-boot.lds | 2 +-
board/esd/wuh405/u-boot.lds | 2 +-
board/esteem192e/u-boot.lds | 2 +-
board/etx094/u-boot.lds | 2 +-
board/evb4510/u-boot.lds | 2 +-
board/evb64260/u-boot.lds | 2 +-
board/exbitgen/u-boot.lds | 2 +-
board/fads/u-boot.lds | 2 +-
board/flagadm/u-boot.lds | 2 +-
board/freescale/m5235evb/u-boot.lds | 2 +-
board/freescale/m5249evb/u-boot.lds | 2 +-
board/freescale/m5253evbe/u-boot.lds | 2 +-
board/freescale/m5329evb/u-boot.lds | 2 +-
board/freescale/m54455evb/u-boot.lds | 2 +-
board/freescale/mpc8544ds/u-boot.lds | 2 +-
board/freescale/mpc8641hpcn/u-boot.lds | 2 +-
board/g2000/u-boot.lds | 2 +-
board/gcplus/u-boot.lds | 2 +-
board/gen860t/u-boot-flashenv.lds | 2 +-
board/gen860t/u-boot.lds | 2 +-
board/genietv/u-boot.lds | 2 +-
board/gth/u-boot.lds | 2 +-
board/gth2/u-boot.lds | 4 ++--
board/hermes/u-boot.lds | 2 +-
board/hymod/u-boot.lds | 2 +-
board/icu862/u-boot.lds | 2 +-
board/idmr/u-boot.lds | 2 +-
board/impa7/u-boot.lds | 2 +-
board/incaip/u-boot.lds | 4 ++--
board/innokom/u-boot.lds | 2 +-
board/ip860/u-boot.lds | 2 +-
board/ivm/u-boot.lds | 2 +-
board/ixdp425/u-boot.lds | 2 +-
board/jse/u-boot.lds | 2 +-
board/kb9202/u-boot.lds | 2 +-
board/kup/kup4k/u-boot.lds | 2 +-
board/kup/kup4x/u-boot.lds | 2 +-
board/lantec/u-boot.lds | 2 +-
board/lart/u-boot.lds | 2 +-
board/logodl/u-boot.lds | 2 +-
board/lpc2292sodimm/u-boot.lds | 2 +-
board/lpd7a40x/u-boot.lds | 2 +-
board/lubbock/u-boot.lds | 2 +-
board/lwmon/u-boot.lds | 2 +-
board/lwmon5/u-boot.lds | 2 +-
board/m5271evb/u-boot.lds | 2 +-
board/m5272c3/u-boot.lds | 2 +-
board/m5282evb/u-boot.lds | 2 +-
board/mbx8xx/u-boot.lds | 2 +-
board/ml2/u-boot.lds | 2 +-
board/modnet50/u-boot.lds | 2 +-
board/mousse/u-boot.lds | 2 +-
board/mp2usb/u-boot.lds | 2 +-
board/mpc7448hpc2/u-boot.lds | 2 +-
board/mpc8540ads/u-boot.lds | 2 +-
board/mpc8540eval/u-boot.lds | 2 +-
board/mpc8560ads/u-boot.lds | 2 +-
board/mpc8568mds/u-boot.lds | 2 +-
board/mpl/mip405/u-boot.lds | 2 +-
board/mpl/pip405/u-boot.lds | 2 +-
board/mpl/vcma9/u-boot.lds | 2 +-
board/mvs1/u-boot.lds | 2 +-
board/mx1ads/u-boot.lds | 2 +-
board/mx1fs2/u-boot.lds | 2 +-
board/nc650/u-boot.lds | 2 +-
board/netphone/u-boot.lds | 2 +-
board/netstal/hcu4/u-boot.lds | 2 +-
board/netstal/hcu5/u-boot.lds | 2 +-
board/netstar/u-boot.lds | 2 +-
board/netta/u-boot.lds | 2 +-
board/netta2/u-boot.lds | 2 +-
board/netvia/u-boot.lds | 2 +-
board/ns9750dev/u-boot.lds | 2 +-
board/nx823/u-boot.lds | 2 +-
board/omap1510inn/u-boot.lds | 2 +-
board/omap1610inn/u-boot.lds | 2 +-
board/omap2420h4/u-boot.lds | 2 +-
board/omap5912osk/u-boot.lds | 2 +-
board/omap730p2/u-boot.lds | 2 +-
board/pb1x00/u-boot.lds | 4 ++--
board/pcippc2/u-boot.lds | 2 +-
board/pcs440ep/u-boot.lds | 2 +-
board/pleb2/u-boot.lds | 2 +-
board/pm854/u-boot.lds | 2 +-
board/pm856/u-boot.lds | 2 +-
board/ppmc7xx/u-boot.lds | 2 +-
board/prodrive/alpr/u-boot.lds | 2 +-
board/prodrive/p3mx/u-boot.lds | 2 +-
board/prodrive/p3p440/u-boot.lds | 2 +-
board/prodrive/pdnb3/u-boot.lds | 2 +-
board/psyent/pci5441/u-boot.lds | 4 ++--
board/psyent/pk1c20/u-boot.lds | 4 ++--
board/purple/u-boot.lds | 4 ++--
board/pxa255_idp/u-boot.lds | 2 +-
board/quantum/u-boot.lds | 2 +-
board/r360mpi/u-boot.lds | 2 +-
board/r5200/u-boot.lds | 2 +-
board/rbc823/u-boot.lds | 2 +-
board/rmu/u-boot.lds | 2 +-
board/rsdproto/u-boot.lds | 2 +-
board/sandburst/karef/u-boot.lds | 2 +-
board/sandburst/metrobox/u-boot.lds | 2 +-
board/sbc2410x/u-boot.lds | 2 +-
board/sbc405/u-boot.lds | 2 +-
board/sbc8560/u-boot.lds | 2 +-
board/sbc8641d/u-boot.lds | 2 +-
board/sc3/u-boot.lds | 2 +-
board/sc520_cdp/u-boot.lds | 2 +-
board/sc520_spunk/u-boot.lds | 2 +-
board/scb9328/u-boot.lds | 2 +-
board/shannon/u-boot.lds | 2 +-
board/siemens/CCM/u-boot.lds | 2 +-
board/siemens/IAD210/u-boot.lds | 2 +-
board/siemens/SMN42/u-boot.lds | 2 +-
board/siemens/pcu_e/u-boot.lds | 2 +-
board/sixnet/u-boot.lds | 2 +-
board/smdk2400/u-boot.lds | 2 +-
board/smdk2410/u-boot.lds | 2 +-
board/snmc/qs850/u-boot.lds | 2 +-
board/snmc/qs860t/u-boot.lds | 2 +-
board/spc1920/u-boot.lds | 2 +-
board/spd8xx/u-boot.lds | 2 +-
board/ssv/adnpesc1/u-boot.lds | 2 +-
board/stxgp3/u-boot.lds | 2 +-
board/stxssa/u-boot.lds | 2 +-
board/stxxtc/u-boot.lds | 2 +-
board/svm_sc8xx/u-boot.lds | 2 +-
board/sx1/u-boot.lds | 2 +-
board/tb0229/u-boot.lds | 4 ++--
board/tqm85xx/u-boot.lds | 2 +-
board/tqm8xx/u-boot.lds | 2 +-
board/trab/u-boot.lds | 2 +-
board/trizepsiv/u-boot.lds | 2 +-
board/uc100/u-boot.lds | 2 +-
board/v37/u-boot.lds | 2 +-
board/versatile/u-boot.lds | 2 +-
board/voiceblue/u-boot.lds | 2 +-
board/w7o/u-boot.lds | 2 +-
board/wepep250/u-boot.lds | 2 +-
board/westel/amx860/u-boot.lds | 2 +-
board/xaeniax/u-boot.lds | 2 +-
board/xilinx/ml300/u-boot.lds | 2 +-
board/xm250/u-boot.lds | 2 +-
board/xpedite1k/u-boot.lds | 2 +-
board/xsengine/u-boot.lds | 2 +-
board/zeus/u-boot.lds | 2 +-
board/zylonite/u-boot.lds | 2 +-
cpu/mpc5xx/u-boot.lds | 2 +-
cpu/mpc5xxx/u-boot-customlayout.lds | 2 +-
cpu/mpc5xxx/u-boot.lds | 2 +-
cpu/mpc8220/u-boot.lds | 2 +-
cpu/mpc824x/u-boot.lds | 2 +-
cpu/mpc8260/u-boot.lds | 2 +-
cpu/mpc83xx/u-boot.lds | 2 +-
nand_spl/board/amcc/acadia/u-boot.lds | 2 +-
nand_spl/board/amcc/bamboo/u-boot.lds | 2 +-
nand_spl/board/amcc/sequoia/u-boot.lds | 2 +-
249 files changed, 260 insertions(+), 260 deletions(-)

Patch exceeds mailing list's message size limit.

Please see ftp://ftp.denx.de/pub/tmp/Fix-linker-scripts-BSS-NOLOAD.patch