diff options
33 files changed, 152 insertions, 407 deletions
| diff --git a/arch/powerpc/cpu/ppc4xx/u-boot.lds b/arch/powerpc/cpu/ppc4xx/u-boot.lds index eca1f9dd8..dac0e5b61 100644 --- a/arch/powerpc/cpu/ppc4xx/u-boot.lds +++ b/arch/powerpc/cpu/ppc4xx/u-boot.lds @@ -27,8 +27,7 @@  #endif  OUTPUT_ARCH(powerpc) -/* Do we need any of these for elf? -   __DYNAMIC = 0;    */ +  PHDRS  {    text PT_LOAD; @@ -39,43 +38,16 @@ SECTIONS  {    /* Read-only sections, merged into text segment: */    . = + SIZEOF_HEADERS; -  .interp : { *(.interp) } -  .hash          : { *(.hash)		} -  .dynsym        : { *(.dynsym)		} -  .dynstr        : { *(.dynstr)		} -  .rel.text      : { *(.rel.text)		} -  .rela.text     : { *(.rela.text)	} -  .rel.data      : { *(.rel.data)		} -  .rela.data     : { *(.rela.data)	} -  .rel.rodata    : { *(.rel.rodata)	} -  .rela.rodata   : { *(.rela.rodata)	} -  .rel.got       : { *(.rel.got)		} -  .rela.got      : { *(.rela.got)		} -  .rel.ctors     : { *(.rel.ctors)	} -  .rela.ctors    : { *(.rela.ctors)	} -  .rel.dtors     : { *(.rel.dtors)	} -  .rela.dtors    : { *(.rela.dtors)	} -  .rel.bss       : { *(.rel.bss)		} -  .rela.bss      : { *(.rela.bss)		} -  .rel.plt       : { *(.rel.plt)		} -  .rela.plt      : { *(.rela.plt)		} -  .init          : { *(.init)	} -  .plt : { *(.plt) }    .text      :    { -    *(.text) -    *(.got1) +    *(.text*)     } :text      _etext = .;      PROVIDE (etext = .);      .rodata    :     { -    *(.eh_frame)      *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))    } :text -  .fini      : { *(.fini)    } =0 -  .ctors     : { *(.ctors)   } -  .dtors     : { *(.dtors)   }    /* Read-write section, merged into data segment: */    . = (. + 0x00FF) & 0xFFFFFF00; @@ -83,23 +55,19 @@ SECTIONS    PROVIDE (erotext = .);    .reloc   :    { -    *(.got) +    KEEP(*(.got))      _GOT2_TABLE_ = .; -    *(.got2) +    KEEP(*(.got2))      _FIXUP_TABLE_ = .; -    *(.fixup) +    KEEP(*(.fixup))    }    __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >> 2;    __fixup_entries = (. - _FIXUP_TABLE_) >> 2;    .data    :    { -    *(.data) -    *(.data1) -    *(.sdata) -    *(.sdata2) -    *(.dynamic) -    CONSTRUCTORS +    *(.data*) +    *(.sdata*)    }    _edata  =  .;    PROVIDE (edata = .); @@ -138,7 +106,7 @@ SECTIONS    .resetvec RESET_VECTOR_ADDRESS :    { -    *(.resetvec) +    KEEP(*(.resetvec))    } :text = 0xffff    . = RESET_VECTOR_ADDRESS + 0x4; @@ -157,9 +125,8 @@ SECTIONS    __bss_start = .;    .bss (NOLOAD)       :    { -   *(.sbss) *(.scommon) -   *(.dynbss) -   *(.bss) +   *(.bss*) +   *(.sbss*)     *(COMMON)    } :bss diff --git a/board/amcc/bamboo/Makefile b/board/amcc/bamboo/Makefile index 7c0f50f2c..2e7dc3917 100644 --- a/board/amcc/bamboo/Makefile +++ b/board/amcc/bamboo/Makefile @@ -32,8 +32,10 @@ SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)  OBJS	:= $(addprefix $(obj),$(COBJS))  SOBJS	:= $(addprefix $(obj),$(SOBJS)) -$(LIB):	$(OBJS) $(SOBJS) -	$(call cmd_link_o_target, $(OBJS) $(SOBJS)) +all:	$(LIB) $(SOBJS) + +$(LIB):	$(OBJS) +	$(call cmd_link_o_target, $^)  clean:  	rm -f $(SOBJS) $(OBJS) diff --git a/board/amcc/bamboo/u-boot-nand.lds b/board/amcc/bamboo/u-boot-nand.lds index e256b198d..c34bb62cc 100644 --- a/board/amcc/bamboo/u-boot-nand.lds +++ b/board/amcc/bamboo/u-boot-nand.lds @@ -26,34 +26,13 @@ SECTIONS  {    /* Read-only sections, merged into text segment: */    . = + SIZEOF_HEADERS; -  .interp : { *(.interp) } -  .hash          : { *(.hash)		} -  .dynsym        : { *(.dynsym)		} -  .dynstr        : { *(.dynstr)		} -  .rel.text      : { *(.rel.text)		} -  .rela.text     : { *(.rela.text)	} -  .rel.data      : { *(.rel.data)		} -  .rela.data     : { *(.rela.data)	} -  .rel.rodata    : { *(.rel.rodata)	} -  .rela.rodata   : { *(.rela.rodata)	} -  .rel.got       : { *(.rel.got)		} -  .rela.got      : { *(.rela.got)		} -  .rel.ctors     : { *(.rel.ctors)	} -  .rela.ctors    : { *(.rela.ctors)	} -  .rel.dtors     : { *(.rel.dtors)	} -  .rela.dtors    : { *(.rela.dtors)	} -  .rel.bss       : { *(.rel.bss)		} -  .rela.bss      : { *(.rela.bss)		} -  .rel.plt       : { *(.rel.plt)		} -  .rela.plt      : { *(.rela.plt)		} -  .init          : { *(.init)	} -  .plt : { *(.plt) }    .text      :    {      /* WARNING - the following is hand-optimized to fit within	*/      /* the sector layout of our flash chips!	XXX FIXME XXX	*/ -    arch/powerpc/cpu/ppc4xx/start.o	(.text) +    arch/powerpc/cpu/ppc4xx/start.o	(.text*) +    board/amcc/bamboo/init.o		(.text*)      /* Align to next NAND block */      . = ALIGN(0x4000); @@ -61,8 +40,7 @@ SECTIONS      /* Keep some space here for redundant env and potential bad env blocks */      . = ALIGN(0x10000); -    *(.text) -    *(.got1) +    *(.text*)    }    _etext = .;    PROVIDE (etext = .); @@ -70,9 +48,6 @@ SECTIONS    {      *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))    } -  .fini      : { *(.fini)    } =0 -  .ctors     : { *(.ctors)   } -  .dtors     : { *(.dtors)   }    /* Read-write section, merged into data segment: */    . = (. + 0x00FF) & 0xFFFFFF00; @@ -80,23 +55,19 @@ SECTIONS    PROVIDE (erotext = .);    .reloc   :    { -    *(.got) +    KEEP(*(.got))      _GOT2_TABLE_ = .; -    *(.got2) +    KEEP(*(.got2))      _FIXUP_TABLE_ = .; -    *(.fixup) +    KEEP(*(.fixup))    }    __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;    __fixup_entries = (. - _FIXUP_TABLE_)>>2;    .data    :    { -    *(.data) -    *(.data1) -    *(.sdata) -    *(.sdata2) -    *(.dynamic) -    CONSTRUCTORS +    *(.data*) +    *(.sdata*)    }    _edata  =  .;    PROVIDE (edata = .); @@ -122,9 +93,8 @@ SECTIONS    __bss_start = .;    .bss (NOLOAD)       :    { -   *(.sbss) *(.scommon) -   *(.dynbss) -   *(.bss) +   *(.bss*) +   *(.sbss*)     *(COMMON)     . = ALIGN(4);    } diff --git a/board/amcc/bluestone/Makefile b/board/amcc/bluestone/Makefile index bcc52523a..642eda01a 100644 --- a/board/amcc/bluestone/Makefile +++ b/board/amcc/bluestone/Makefile @@ -33,8 +33,10 @@ SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)  OBJS	:= $(addprefix $(obj),$(COBJS))  SOBJS	:= $(addprefix $(obj),$(SOBJS)) -$(LIB):	$(OBJS) $(SOBJS) -	$(call cmd_link_o_target, $(OBJS) $(SOBJS)) +all:	$(LIB) $(SOBJS) + +$(LIB):	$(OBJS) +	$(call cmd_link_o_target, $^)  clean:  	rm -f $(SOBJS) $(OBJS) diff --git a/board/amcc/canyonlands/Makefile b/board/amcc/canyonlands/Makefile index c8ecaf9ff..4d87ea9a7 100644 --- a/board/amcc/canyonlands/Makefile +++ b/board/amcc/canyonlands/Makefile @@ -34,8 +34,10 @@ SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)  OBJS	:= $(addprefix $(obj),$(COBJS))  SOBJS	:= $(addprefix $(obj),$(SOBJS)) -$(LIB):	$(OBJS) $(SOBJS) -	$(call cmd_link_o_target, $(OBJS) $(SOBJS)) +all:	$(LIB) $(SOBJS) + +$(LIB):	$(OBJS) +	$(call cmd_link_o_target, $^)  clean:  	rm -f $(SOBJS) $(OBJS) diff --git a/board/amcc/canyonlands/u-boot-nand.lds b/board/amcc/canyonlands/u-boot-nand.lds index c71f0b7c0..534d6ddf4 100644 --- a/board/amcc/canyonlands/u-boot-nand.lds +++ b/board/amcc/canyonlands/u-boot-nand.lds @@ -26,34 +26,13 @@ SECTIONS  {    /* Read-only sections, merged into text segment: */    . = + SIZEOF_HEADERS; -  .interp : { *(.interp) } -  .hash          : { *(.hash)		} -  .dynsym        : { *(.dynsym)		} -  .dynstr        : { *(.dynstr)		} -  .rel.text      : { *(.rel.text)		} -  .rela.text     : { *(.rela.text)	} -  .rel.data      : { *(.rel.data)		} -  .rela.data     : { *(.rela.data)	} -  .rel.rodata    : { *(.rel.rodata)	} -  .rela.rodata   : { *(.rela.rodata)	} -  .rel.got       : { *(.rel.got)		} -  .rela.got      : { *(.rela.got)		} -  .rel.ctors     : { *(.rel.ctors)	} -  .rela.ctors    : { *(.rela.ctors)	} -  .rel.dtors     : { *(.rel.dtors)	} -  .rela.dtors    : { *(.rela.dtors)	} -  .rel.bss       : { *(.rel.bss)		} -  .rela.bss      : { *(.rela.bss)		} -  .rel.plt       : { *(.rel.plt)		} -  .rela.plt      : { *(.rela.plt)		} -  .init          : { *(.init)	} -  .plt : { *(.plt) }    .text      :    {      /* WARNING - the following is hand-optimized to fit within	*/      /* the sector layout of our flash chips!	XXX FIXME XXX	*/      arch/powerpc/cpu/ppc4xx/start.o	(.text) +    board/amcc/canyonlands/init.o	(.text*)      /* Align to next NAND block */      . = ALIGN(0x20000); @@ -61,8 +40,7 @@ SECTIONS      /* Keep some space here for redundant env and potential bad env blocks */      . = ALIGN(0x80000); -    *(.text) -    *(.got1) +    *(.text*)    }    _etext = .;    PROVIDE (etext = .); @@ -70,9 +48,6 @@ SECTIONS    {      *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))    } -  .fini      : { *(.fini)    } =0 -  .ctors     : { *(.ctors)   } -  .dtors     : { *(.dtors)   }    /* Read-write section, merged into data segment: */    . = (. + 0x00FF) & 0xFFFFFF00; @@ -80,23 +55,19 @@ SECTIONS    PROVIDE (erotext = .);    .reloc   :    { -    *(.got) +    KEEP(*(.got))      _GOT2_TABLE_ = .; -    *(.got2) +    KEEP(*(.got2))      _FIXUP_TABLE_ = .; -    *(.fixup) +    KEEP(*(.fixup))    }    __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;    __fixup_entries = (. - _FIXUP_TABLE_)>>2;    .data    :    { -    *(.data) -    *(.data1) -    *(.sdata) -    *(.sdata2) -    *(.dynamic) -    CONSTRUCTORS +    *(.data*) +    *(.sdata*)    }    _edata  =  .;    PROVIDE (edata = .); @@ -122,9 +93,8 @@ SECTIONS    __bss_start = .;    .bss (NOLOAD)       :    { -   *(.sbss) *(.scommon) -   *(.dynbss) -   *(.bss) +   *(.bss*) +   *(.sbss*)     *(COMMON)     . = ALIGN(4);    } diff --git a/board/amcc/sequoia/Makefile b/board/amcc/sequoia/Makefile index 50851381e..efe2065e4 100644 --- a/board/amcc/sequoia/Makefile +++ b/board/amcc/sequoia/Makefile @@ -34,8 +34,10 @@ SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)  OBJS	:= $(addprefix $(obj),$(COBJS))  SOBJS	:= $(addprefix $(obj),$(SOBJS)) -$(LIB):	$(OBJS) $(SOBJS) -	$(call cmd_link_o_target, $(OBJS) $(SOBJS)) +all:	$(LIB) $(SOBJS) + +$(LIB):	$(OBJS) +	$(call cmd_link_o_target, $^)  clean:  	rm -f $(SOBJS) $(OBJS) diff --git a/board/amcc/sequoia/u-boot-nand.lds b/board/amcc/sequoia/u-boot-nand.lds index cf4229a22..f3855c4dd 100644 --- a/board/amcc/sequoia/u-boot-nand.lds +++ b/board/amcc/sequoia/u-boot-nand.lds @@ -26,34 +26,13 @@ SECTIONS  {    /* Read-only sections, merged into text segment: */    . = + SIZEOF_HEADERS; -  .interp : { *(.interp) } -  .hash          : { *(.hash)		} -  .dynsym        : { *(.dynsym)		} -  .dynstr        : { *(.dynstr)		} -  .rel.text      : { *(.rel.text)		} -  .rela.text     : { *(.rela.text)	} -  .rel.data      : { *(.rel.data)		} -  .rela.data     : { *(.rela.data)	} -  .rel.rodata    : { *(.rel.rodata)	} -  .rela.rodata   : { *(.rela.rodata)	} -  .rel.got       : { *(.rel.got)		} -  .rela.got      : { *(.rela.got)		} -  .rel.ctors     : { *(.rel.ctors)	} -  .rela.ctors    : { *(.rela.ctors)	} -  .rel.dtors     : { *(.rel.dtors)	} -  .rela.dtors    : { *(.rela.dtors)	} -  .rel.bss       : { *(.rel.bss)		} -  .rela.bss      : { *(.rela.bss)		} -  .rel.plt       : { *(.rel.plt)		} -  .rela.plt      : { *(.rela.plt)		} -  .init          : { *(.init)	} -  .plt : { *(.plt) }    .text      :    {      /* WARNING - the following is hand-optimized to fit within	*/      /* the sector layout of our flash chips!	XXX FIXME XXX	*/      arch/powerpc/cpu/ppc4xx/start.o	(.text) +    board/amcc/sequoia/init.o	(.text*)      /* Align to next NAND block */      . = ALIGN(0x4000); @@ -61,8 +40,7 @@ SECTIONS      /* Keep some space here for redundant env and potential bad env blocks */      . = ALIGN(0x10000); -    *(.text) -    *(.got1) +    *(.text*)    }    _etext = .;    PROVIDE (etext = .); @@ -70,9 +48,6 @@ SECTIONS    {      *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))    } -  .fini      : { *(.fini)    } =0 -  .ctors     : { *(.ctors)   } -  .dtors     : { *(.dtors)   }    /* Read-write section, merged into data segment: */    . = (. + 0x00FF) & 0xFFFFFF00; @@ -80,23 +55,19 @@ SECTIONS    PROVIDE (erotext = .);    .reloc   :    { -    *(.got) +    KEEP(*(.got))      _GOT2_TABLE_ = .; -    *(.got2) +    KEEP(*(.got2))      _FIXUP_TABLE_ = .; -    *(.fixup) +    KEEP(*(.fixup))    }    __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;    __fixup_entries = (. - _FIXUP_TABLE_)>>2;    .data    :    { -    *(.data) -    *(.data1) -    *(.sdata) -    *(.sdata2) -    *(.dynamic) -    CONSTRUCTORS +    *(.data*) +    *(.sdata*)    }    _edata  =  .;    PROVIDE (edata = .); @@ -122,9 +93,8 @@ SECTIONS    __bss_start = .;    .bss (NOLOAD)       :    { -   *(.sbss) *(.scommon) -   *(.dynbss) -   *(.bss) +   *(.bss*) +   *(.sbss*)     *(COMMON)     . = ALIGN(4);    } diff --git a/board/amcc/sequoia/u-boot-ram.lds b/board/amcc/sequoia/u-boot-ram.lds index 63e87c988..ba76a7792 100644 --- a/board/amcc/sequoia/u-boot-ram.lds +++ b/board/amcc/sequoia/u-boot-ram.lds @@ -26,34 +26,12 @@ SECTIONS  {    /* Read-only sections, merged into text segment: */    . = + SIZEOF_HEADERS; -  .interp : { *(.interp) } -  .hash          : { *(.hash)		} -  .dynsym        : { *(.dynsym)		} -  .dynstr        : { *(.dynstr)		} -  .rel.text      : { *(.rel.text)		} -  .rela.text     : { *(.rela.text)	} -  .rel.data      : { *(.rel.data)		} -  .rela.data     : { *(.rela.data)	} -  .rel.rodata    : { *(.rel.rodata)	} -  .rela.rodata   : { *(.rela.rodata)	} -  .rel.got       : { *(.rel.got)		} -  .rela.got      : { *(.rela.got)		} -  .rel.ctors     : { *(.rel.ctors)	} -  .rela.ctors    : { *(.rela.ctors)	} -  .rel.dtors     : { *(.rel.dtors)	} -  .rela.dtors    : { *(.rela.dtors)	} -  .rel.bss       : { *(.rel.bss)		} -  .rela.bss      : { *(.rela.bss)		} -  .rel.plt       : { *(.rel.plt)		} -  .rela.plt      : { *(.rela.plt)		} -  .init          : { *(.init)	} -  .plt : { *(.plt) }    .text      :    { -    arch/powerpc/cpu/ppc4xx/start.o	(.text) +    arch/powerpc/cpu/ppc4xx/start.o	(.text*) +    board/amcc/sequoia/init.o		(.text*) -    *(.text) -    *(.got1) +    *(.text*)    }    _etext = .;    PROVIDE (etext = .); @@ -61,9 +39,6 @@ SECTIONS    {      *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))    } -  .fini      : { *(.fini)    } =0 -  .ctors     : { *(.ctors)   } -  .dtors     : { *(.dtors)   }    /* Read-write section, merged into data segment: */    . = (. + 0x00FF) & 0xFFFFFF00; @@ -71,23 +46,19 @@ SECTIONS    PROVIDE (erotext = .);    .reloc   :    { -    *(.got) +    KEEP(*(.got))      _GOT2_TABLE_ = .; -    *(.got2) +    KEEP(*(.got2))      _FIXUP_TABLE_ = .; -    *(.fixup) +    KEEP(*(.fixup))    }    __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;    __fixup_entries = (. - _FIXUP_TABLE_)>>2;    .data    :    { -    *(.data) -    *(.data1) -    *(.sdata) -    *(.sdata2) -    *(.dynamic) -    CONSTRUCTORS +    *(.data*) +    *(.sdata*)    }    _edata  =  .;    PROVIDE (edata = .); @@ -113,9 +84,8 @@ SECTIONS    __bss_start = .;    .bss (NOLOAD)       :    { -   *(.sbss) *(.scommon) -   *(.dynbss) -   *(.bss) +   *(.bss*) +   *(.sbss*)     *(COMMON)     . = ALIGN(4);    } diff --git a/board/amirix/ap1000/Makefile b/board/amirix/ap1000/Makefile index fdf61458d..fe7a6a214 100644 --- a/board/amirix/ap1000/Makefile +++ b/board/amirix/ap1000/Makefile @@ -32,7 +32,9 @@ SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)  OBJS	:= $(addprefix $(obj),$(COBJS))  SOBJS	:= $(addprefix $(obj),$(SOBJS)) -$(LIB):	$(OBJS) $(SOBJS) +all:	$(LIB) $(SOBJS) + +$(LIB):	$(OBJS)  	$(call cmd_link_o_target, $^)  clean: diff --git a/board/amirix/ap1000/u-boot.lds b/board/amirix/ap1000/u-boot.lds index bebcded61..356d01997 100644 --- a/board/amirix/ap1000/u-boot.lds +++ b/board/amirix/ap1000/u-boot.lds @@ -22,68 +22,26 @@   */  OUTPUT_ARCH(powerpc) -/* Do we need any of these for elf? -   __DYNAMIC = 0;    */ +  SECTIONS  {    /* Read-only sections, merged into text segment: */    . = + SIZEOF_HEADERS; -  .interp : { *(.interp) } -  .hash          : { *(.hash)		} -  .dynsym        : { *(.dynsym)		} -  .dynstr        : { *(.dynstr)		} -  .rel.text      : { *(.rel.text)		} -  .rela.text     : { *(.rela.text)	} -  .rel.data      : { *(.rel.data)		} -  .rela.data     : { *(.rela.data)	} -  .rel.rodata    : { *(.rel.rodata)	} -  .rela.rodata   : { *(.rela.rodata)	} -  .rel.got       : { *(.rel.got)		} -  .rela.got      : { *(.rela.got)		} -  .rel.ctors     : { *(.rel.ctors)	} -  .rela.ctors    : { *(.rela.ctors)	} -  .rel.dtors     : { *(.rel.dtors)	} -  .rela.dtors    : { *(.rela.dtors)	} -  .rel.bss       : { *(.rel.bss)		} -  .rela.bss      : { *(.rela.bss)		} -  .rel.plt       : { *(.rel.plt)		} -  .rela.plt      : { *(.rela.plt)		} -  .init          : { *(.init)	} -  .plt : { *(.plt) }    .text      :    {      /* WARNING - the following is hand-optimized to fit within	*/      /* the sector layout of our flash chips!	XXX FIXME XXX	*/      arch/powerpc/cpu/ppc4xx/start.o	(.text) -    board/amirix/ap1000/init.o	(.text) -    arch/powerpc/cpu/ppc4xx/kgdb.o	(.text) -    arch/powerpc/cpu/ppc4xx/traps.o	(.text) -    arch/powerpc/cpu/ppc4xx/interrupts.o	(.text) -    arch/powerpc/cpu/ppc4xx/4xx_uart.o	(.text) -    arch/powerpc/cpu/ppc4xx/cpu_init.o	(.text) -    arch/powerpc/cpu/ppc4xx/speed.o	(.text) -    common/dlmalloc.o	(.text) -    lib/crc32.o		(.text) -    arch/powerpc/lib/extable.o	(.text) -    lib/zlib.o		(.text) - -/*    . = env_offset;*/ -/*    common/env_embedded.o(.text)*/ - -    *(.text) -    *(.got1) +    board/amirix/ap1000/init.o		(.text) +    *(.text*)    }    _etext = .;    PROVIDE (etext = .);    .rodata    :    { -    *(.eh_frame)      *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))    } -  .fini      : { *(.fini)    } =0 -  .ctors     : { *(.ctors)   } -  .dtors     : { *(.dtors)   }    /* Read-write section, merged into data segment: */    . = (. + 0x00FF) & 0xFFFFFF00; @@ -91,23 +49,19 @@ SECTIONS    PROVIDE (erotext = .);    .reloc   :    { -    *(.got) +    KEEP(*(.got))      _GOT2_TABLE_ = .; -    *(.got2) +    KEEP(*(.got2))      _FIXUP_TABLE_ = .; -    *(.fixup) +    KEEP(*(.fixup))    }    __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;    __fixup_entries = (. - _FIXUP_TABLE_)>>2;    .data    :    { -    *(.data) -    *(.data1) -    *(.sdata) -    *(.sdata2) -    *(.dynamic) -    CONSTRUCTORS +    *(.data*) +    *(.sdata*)    }    _edata  =  .;    PROVIDE (edata = .); @@ -131,9 +85,8 @@ SECTIONS    __bss_start = .;    .bss (NOLOAD)       :    { -   *(.sbss) *(.scommon) -   *(.dynbss) -   *(.bss) +   *(.bss*) +   *(.sbss*)     *(COMMON)     . = ALIGN(4);    } diff --git a/board/cray/L1/L1.c b/board/cray/L1/L1.c index 0f5f02cb8..d87b6ef90 100644 --- a/board/cray/L1/L1.c +++ b/board/cray/L1/L1.c @@ -170,12 +170,6 @@ int misc_init_r (void)  }  /* ------------------------------------------------------------------------- */ -phys_size_t initdram (int board_type) -{ -	return (L1_MEMSIZE); -} - -/* ------------------------------------------------------------------------- */  /* stubs so we can print dates w/o any nvram RTC.*/  int rtc_get (struct rtc_time *tmp)  { diff --git a/board/esd/dasa_sim/u-boot.lds b/board/esd/dasa_sim/u-boot.lds index 0e1d625a1..3349fe8d4 100644 --- a/board/esd/dasa_sim/u-boot.lds +++ b/board/esd/dasa_sim/u-boot.lds @@ -22,59 +22,31 @@   */  OUTPUT_ARCH(powerpc) -/* Do we need any of these for elf? -   __DYNAMIC = 0;    */ +  SECTIONS  {    .resetvec 0xFFFFFFFC :    { -    *(.resetvec) +    KEEP(*(.resetvec))    } = 0xffff    /* Read-only sections, merged into text segment: */    . = + SIZEOF_HEADERS; -  .interp : { *(.interp) } -  .hash          : { *(.hash)		} -  .dynsym        : { *(.dynsym)		} -  .dynstr        : { *(.dynstr)		} -  .rel.text      : { *(.rel.text)		} -  .rela.text     : { *(.rela.text)	} -  .rel.data      : { *(.rel.data)		} -  .rela.data     : { *(.rela.data)	} -  .rel.rodata    : { *(.rel.rodata)	} -  .rela.rodata   : { *(.rela.rodata)	} -  .rel.got       : { *(.rel.got)		} -  .rela.got      : { *(.rela.got)		} -  .rel.ctors     : { *(.rel.ctors)	} -  .rela.ctors    : { *(.rela.ctors)	} -  .rel.dtors     : { *(.rel.dtors)	} -  .rela.dtors    : { *(.rela.dtors)	} -  .rel.bss       : { *(.rel.bss)		} -  .rela.bss      : { *(.rela.bss)		} -  .rel.plt       : { *(.rel.plt)		} -  .rela.plt      : { *(.rela.plt)		} -  .init          : { *(.init)	} -  .plt : { *(.plt) }    .text      :    { -    arch/powerpc/cpu/ppc4xx/start.o		(.text) +    arch/powerpc/cpu/ppc4xx/start.o	(.text)      . = env_offset; -    common/env_embedded.o(.text) +    common/env_embedded.o		(.text*) -    *(.text) -    *(.got1) +    *(.text*)    }    _etext = .;    PROVIDE (etext = .);    .rodata    :    { -    *(.eh_frame)      *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))    } -  .fini      : { *(.fini)    } =0 -  .ctors     : { *(.ctors)   } -  .dtors     : { *(.dtors)   }    /* Read-write section, merged into data segment: */    . = (. + 0x0FFF) & 0xFFFFF000; @@ -82,23 +54,19 @@ SECTIONS    PROVIDE (erotext = .);    .reloc   :    { -    *(.got) +    KEEP(*(.got))      _GOT2_TABLE_ = .; -    *(.got2) +    KEEP(*(.got2))      _FIXUP_TABLE_ = .; -    *(.fixup) +    KEEP(*(.fixup))    }    __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;    __fixup_entries = (. - _FIXUP_TABLE_)>>2;    .data    :    { -    *(.data) -    *(.data1) -    *(.sdata) -    *(.sdata2) -    *(.dynamic) -    CONSTRUCTORS +    *(.data*) +    *(.sdata*)    }    _edata  =  .;    PROVIDE (edata = .); @@ -124,9 +92,8 @@ SECTIONS    __bss_start = .;    .bss (NOLOAD)       :    { -   *(.sbss) *(.scommon) -   *(.dynbss) -   *(.bss) +   *(.bss*) +   *(.sbss*)     *(COMMON)     . = ALIGN(4);    } diff --git a/board/esd/du440/Makefile b/board/esd/du440/Makefile index 7b7b4f7fd..06824c7ac 100644 --- a/board/esd/du440/Makefile +++ b/board/esd/du440/Makefile @@ -32,8 +32,10 @@ SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)  OBJS	:= $(addprefix $(obj),$(COBJS))  SOBJS	:= $(addprefix $(obj),$(SOBJS)) -$(LIB):	$(OBJS) $(SOBJS) -	$(call cmd_link_o_target, $(OBJS) $(SOBJS)) +all:	$(LIB) $(SOBJS) + +$(LIB):	$(OBJS) +	$(call cmd_link_o_target, $^)  clean:  	rm -f $(SOBJS) $(OBJS) diff --git a/board/esd/pmc440/Makefile b/board/esd/pmc440/Makefile index b2f446583..f640d1e00 100644 --- a/board/esd/pmc440/Makefile +++ b/board/esd/pmc440/Makefile @@ -37,8 +37,10 @@ SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)  OBJS	:= $(addprefix $(obj),$(COBJS))  SOBJS	:= $(addprefix $(obj),$(SOBJS)) -$(LIB):	$(OBJS) $(SOBJS) -	$(call cmd_link_o_target, $(OBJS) $(SOBJS)) +all:	$(LIB) $(SOBJS) + +$(LIB):	$(OBJS) +	$(call cmd_link_o_target, $^)  clean:  	rm -f $(SOBJS) $(OBJS) diff --git a/board/gdsys/intip/Makefile b/board/gdsys/intip/Makefile index c8ecaf9ff..4d87ea9a7 100644 --- a/board/gdsys/intip/Makefile +++ b/board/gdsys/intip/Makefile @@ -34,8 +34,10 @@ SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)  OBJS	:= $(addprefix $(obj),$(COBJS))  SOBJS	:= $(addprefix $(obj),$(SOBJS)) -$(LIB):	$(OBJS) $(SOBJS) -	$(call cmd_link_o_target, $(OBJS) $(SOBJS)) +all:	$(LIB) $(SOBJS) + +$(LIB):	$(OBJS) +	$(call cmd_link_o_target, $^)  clean:  	rm -f $(SOBJS) $(OBJS) diff --git a/board/korat/Makefile b/board/korat/Makefile index 83b4d61bc..6781596e7 100644 --- a/board/korat/Makefile +++ b/board/korat/Makefile @@ -32,8 +32,10 @@ SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)  OBJS	:= $(addprefix $(obj),$(COBJS))  SOBJS	:= $(addprefix $(obj),$(SOBJS)) -$(LIB):	$(OBJS) $(SOBJS) -	$(call cmd_link_o_target, $(OBJS) $(SOBJS)) +all:	$(LIB) $(SOBJS) + +$(LIB):	$(OBJS) +	$(call cmd_link_o_target, $^)  clean:  	rm -f $(SOBJS) $(OBJS) diff --git a/board/lwmon5/Makefile b/board/lwmon5/Makefile index ba9387d5d..f7fef96fb 100644 --- a/board/lwmon5/Makefile +++ b/board/lwmon5/Makefile @@ -32,8 +32,10 @@ SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)  OBJS	:= $(addprefix $(obj),$(COBJS))  SOBJS	:= $(addprefix $(obj),$(SOBJS)) -$(LIB):	$(OBJS) $(SOBJS) -	$(call cmd_link_o_target, $(OBJS) $(SOBJS)) +all:	$(LIB) $(SOBJS) + +$(LIB):	$(OBJS) +	$(call cmd_link_o_target, $^)  clean:  	rm -f $(SOBJS) $(OBJS) diff --git a/board/ml2/u-boot.lds b/board/ml2/u-boot.lds index 950f85797..b6c071571 100644 --- a/board/ml2/u-boot.lds +++ b/board/ml2/u-boot.lds @@ -22,68 +22,21 @@   */  OUTPUT_ARCH(powerpc) -/* Do we need any of these for elf? -   __DYNAMIC = 0;    */ +  SECTIONS  {    /* Read-only sections, merged into text segment: */    . = + SIZEOF_HEADERS; -  .interp : { *(.interp) } -  .hash          : { *(.hash)		} -  .dynsym        : { *(.dynsym)		} -  .dynstr        : { *(.dynstr)		} -  .rel.text      : { *(.rel.text)		} -  .rela.text     : { *(.rela.text)	} -  .rel.data      : { *(.rel.data)		} -  .rela.data     : { *(.rela.data)	} -  .rel.rodata    : { *(.rel.rodata)	} -  .rela.rodata   : { *(.rela.rodata)	} -  .rel.got       : { *(.rel.got)		} -  .rela.got      : { *(.rela.got)		} -  .rel.ctors     : { *(.rel.ctors)	} -  .rela.ctors    : { *(.rela.ctors)	} -  .rel.dtors     : { *(.rel.dtors)	} -  .rela.dtors    : { *(.rela.dtors)	} -  .rel.bss       : { *(.rel.bss)		} -  .rela.bss      : { *(.rela.bss)		} -  .rel.plt       : { *(.rel.plt)		} -  .rela.plt      : { *(.rela.plt)		} -  .init          : { *(.init)	} -  .plt : { *(.plt) }    .text      :    { -    /* WARNING - the following is hand-optimized to fit within	*/ -    /* the sector layout of our flash chips!	XXX FIXME XXX	*/ - -    arch/powerpc/cpu/ppc4xx/start.o	(.text) -    board/ml2/init.o	(.text) -    arch/powerpc/cpu/ppc4xx/kgdb.o	(.text) -    arch/powerpc/cpu/ppc4xx/traps.o	(.text) -    arch/powerpc/cpu/ppc4xx/interrupts.o	(.text) -    arch/powerpc/cpu/ppc4xx/4xx_uart.o	(.text) -    arch/powerpc/cpu/ppc4xx/cpu_init.o	(.text) -    arch/powerpc/cpu/ppc4xx/speed.o	(.text) -    common/dlmalloc.o	(.text) -    lib/crc32.o		(.text) -    arch/powerpc/lib/extable.o	(.text) -    lib/zlib.o		(.text) - -/*    . = env_offset;*/ -/*    common/env_embedded.o(.text)*/ - -    *(.text) -    *(.got1) +    *(.text*)    }    _etext = .;    PROVIDE (etext = .);    .rodata    :    { -    *(.eh_frame)      *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))    } -  .fini      : { *(.fini)    } =0 -  .ctors     : { *(.ctors)   } -  .dtors     : { *(.dtors)   }    /* Read-write section, merged into data segment: */    . = (. + 0x00FF) & 0xFFFFFF00; @@ -91,22 +44,19 @@ SECTIONS    PROVIDE (erotext = .);    .reloc   :    { -    *(.got) +    KEEP(*(.got))      _GOT2_TABLE_ = .; -    *(.got2) +    KEEP(*(.got2))      _FIXUP_TABLE_ = .; -    *(.fixup) +    KEEP(*(.fixup))    }    __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;    __fixup_entries = (. - _FIXUP_TABLE_)>>2;    .data    :    { -    *(.data) -    *(.data1) -    *(.sdata) -    *(.sdata2) -    *(.dynamic) +    *(.data*) +    *(.sdata*)      CONSTRUCTORS    }    _edata  =  .; @@ -133,9 +83,8 @@ SECTIONS    __bss_start = .;    .bss (NOLOAD)       :    { -   *(.sbss) *(.scommon) -   *(.dynbss) -   *(.bss) +   *(.bss*) +   *(.sbss*)     *(COMMON)     . = ALIGN(4);    } diff --git a/board/netstal/hcu5/Makefile b/board/netstal/hcu5/Makefile index 53487653b..280c2f668 100644 --- a/board/netstal/hcu5/Makefile +++ b/board/netstal/hcu5/Makefile @@ -34,7 +34,9 @@ SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)  OBJS	:= $(addprefix $(obj),$(COBJS))  SOBJS	:= $(addprefix $(obj),$(SOBJS)) -$(LIB):	$(OBJS) $(SOBJS) +all:	$(LIB) $(SOBJS) + +$(LIB):	$(OBJS)  	$(call cmd_link_o_target, $^)  clean: diff --git a/board/sbc405/sbc405.c b/board/sbc405/sbc405.c index 33b4d1105..4efc410da 100644 --- a/board/sbc405/sbc405.c +++ b/board/sbc405/sbc405.c @@ -96,13 +96,6 @@ int checkboard (void)  /* ------------------------------------------------------------------------- */ -phys_size_t initdram (int board_type) -{ -	return  spd_sdram (); -} - -/* ------------------------------------------------------------------------- */ -  int testdram (void)  {  	/* TODO: XXX XXX XXX */ diff --git a/board/t3corp/Makefile b/board/t3corp/Makefile index 682174f2a..4211b7b53 100644 --- a/board/t3corp/Makefile +++ b/board/t3corp/Makefile @@ -34,8 +34,10 @@ SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)  OBJS	:= $(addprefix $(obj),$(COBJS))  SOBJS	:= $(addprefix $(obj),$(SOBJS)) -$(LIB):	$(OBJS) $(SOBJS) -	$(call cmd_link_o_target, $(OBJS) $(SOBJS)) +all:	$(LIB) $(SOBJS) + +$(LIB):	$(OBJS) +	$(call cmd_link_o_target, $^)  clean:  	rm -f $(SOBJS) $(OBJS) diff --git a/include/configs/AP1000.h b/include/configs/AP1000.h index 9e5490d1d..ffaab7961 100644 --- a/include/configs/AP1000.h +++ b/include/configs/AP1000.h @@ -94,6 +94,14 @@  #define CONFIG_SPD_EEPROM	1	/* use SPD EEPROM for setup    */  /* + * I2C + */ +#define CONFIG_HARD_I2C			/* I2C with hardware support	*/ +#define CONFIG_PPC4XX_I2C		/* use PPC4xx driver		*/ +#define CONFIG_SYS_I2C_SLAVE	0x7F +#define CONFIG_SYS_I2C_SPEED	400000 + +/*   * Miscellaneous configurable options   */  #define CONFIG_SYS_LONGHELP			/* undef to save memory	    */ diff --git a/include/configs/CANBT.h b/include/configs/CANBT.h index b27ef64fb..be9238e52 100644 --- a/include/configs/CANBT.h +++ b/include/configs/CANBT.h @@ -77,7 +77,7 @@  #define CONFIG_CMD_EEPROM  #undef CONFIG_CMD_NET - +#undef CONFIG_CMD_NFS  #undef CONFIG_WATCHDOG			/* watchdog disabled		*/ diff --git a/include/configs/CPCI2DP.h b/include/configs/CPCI2DP.h index 99ace67a2..afe8d6ef2 100644 --- a/include/configs/CPCI2DP.h +++ b/include/configs/CPCI2DP.h @@ -78,7 +78,7 @@  #define CONFIG_CMD_EEPROM  #undef CONFIG_CMD_NET - +#undef CONFIG_CMD_NFS  #undef	CONFIG_WATCHDOG			/* watchdog disabled		*/ diff --git a/include/configs/DP405.h b/include/configs/DP405.h index ecdf93ffc..f6e265281 100644 --- a/include/configs/DP405.h +++ b/include/configs/DP405.h @@ -65,6 +65,7 @@  #define CONFIG_CMD_EEPROM  #undef CONFIG_CMD_NET +#undef CONFIG_CMD_NFS  #undef	CONFIG_WATCHDOG			/* watchdog disabled		*/ diff --git a/include/configs/ML2.h b/include/configs/ML2.h index ed783876e..1e96b9e10 100644 --- a/include/configs/ML2.h +++ b/include/configs/ML2.h @@ -88,6 +88,7 @@  #define CONFIG_CMD_JFFS2  #undef CONFIG_CMD_NET +#undef CONFIG_CMD_NFS  #undef CONFIG_CMD_RTC  #undef CONFIG_CMD_PCI  #undef CONFIG_CMD_I2C @@ -100,6 +101,14 @@  #define CONFIG_SPD_EEPROM      1       /* use SPD EEPROM for setup    */  /* + * I2C + */ +#define CONFIG_HARD_I2C			/* I2C with hardware support	*/ +#define CONFIG_PPC4XX_I2C		/* use PPC4xx driver		*/ +#define CONFIG_SYS_I2C_SLAVE	0x7F +#define CONFIG_SYS_I2C_SPEED	400000 + +/*   * Miscellaneous configurable options   */  #define CONFIG_SYS_LONGHELP			/* undef to save memory		*/ diff --git a/include/configs/sc3.h b/include/configs/sc3.h index 04511057e..873d3b4df 100644 --- a/include/configs/sc3.h +++ b/include/configs/sc3.h @@ -518,7 +518,7 @@  #define CONFIG_SYS_EBC_CFG    0xb84ef000 -#define CONFIG_SDRAM_BANK0	/* use the standard SDRAM initialization */ +#undef CONFIG_SDRAM_BANK0	/* use private SDRAM initialization */  #undef CONFIG_SPD_EEPROM  /* diff --git a/nand_spl/board/amcc/acadia/u-boot.lds b/nand_spl/board/amcc/acadia/u-boot.lds index b89cd809b..56954650a 100644 --- a/nand_spl/board/amcc/acadia/u-boot.lds +++ b/nand_spl/board/amcc/acadia/u-boot.lds @@ -26,7 +26,7 @@ SECTIONS  {    .resetvec 0xf8004ffc :    { -    *(.resetvec) +    KEEP(*(.resetvec))    } = 0xffff    .text      : diff --git a/nand_spl/board/amcc/bamboo/u-boot.lds b/nand_spl/board/amcc/bamboo/u-boot.lds index d171269c3..8a9e6e947 100644 --- a/nand_spl/board/amcc/bamboo/u-boot.lds +++ b/nand_spl/board/amcc/bamboo/u-boot.lds @@ -26,7 +26,7 @@ SECTIONS  {    .resetvec 0x00800FFC :    { -    *(.resetvec) +    KEEP(*(.resetvec))    } = 0xffff    .text      : diff --git a/nand_spl/board/amcc/canyonlands/u-boot.lds b/nand_spl/board/amcc/canyonlands/u-boot.lds index e676e0c7c..73190cd39 100644 --- a/nand_spl/board/amcc/canyonlands/u-boot.lds +++ b/nand_spl/board/amcc/canyonlands/u-boot.lds @@ -26,7 +26,7 @@ SECTIONS  {    .resetvec 0xE3003FFC :    { -    *(.resetvec) +    KEEP(*(.resetvec))    } = 0xffff    .text      : diff --git a/nand_spl/board/amcc/kilauea/u-boot.lds b/nand_spl/board/amcc/kilauea/u-boot.lds index 5a586fc7c..9894a1053 100644 --- a/nand_spl/board/amcc/kilauea/u-boot.lds +++ b/nand_spl/board/amcc/kilauea/u-boot.lds @@ -26,7 +26,7 @@ SECTIONS  {    .resetvec 0x00800FFC :    { -    *(.resetvec) +    KEEP(*(.resetvec))    } = 0xffff    .text      : diff --git a/nand_spl/board/amcc/sequoia/u-boot.lds b/nand_spl/board/amcc/sequoia/u-boot.lds index 1601c3689..c81ce68c8 100644 --- a/nand_spl/board/amcc/sequoia/u-boot.lds +++ b/nand_spl/board/amcc/sequoia/u-boot.lds @@ -1,5 +1,5 @@  /* - * (C) Copyright 2006 + * (C) Copyright 2006-2010   * Stefan Roese, DENX Software Engineering, sr@denx.de.   *   * See file CREDITS for list of people who contributed to this @@ -26,7 +26,7 @@ SECTIONS  {    .resetvec 0xE0013FFC :    { -    *(.resetvec) +    KEEP(*(.resetvec))    } = 0xffff    .text      : |