27 Mar, 2012

1 commit


16 Oct, 2011

1 commit

  • The top level Makefile does not do any recursion into subdirs when
    cleaning, so these clean/distclean targets in random arch/board dirs
    never get used. Punt them all.

    MAKEALL didn't report any errors related to this that I could see.

    Signed-off-by: Mike Frysinger

    Mike Frysinger
     

23 Jun, 2011

1 commit


13 May, 2011

1 commit

  • A large number of boards incorrectly used getenv() in their board init
    code running before relocation. In some cases this caused U-Boot to
    hang when certain environment variables grew too long.
    Fix the code to use getenv_r().

    Signed-off-by: Wolfgang Denk
    Cc: Stefan Roese
    Cc: The LEOX team
    Cc: Michael Schwingen
    Cc: Georg Schardt
    Cc: Werner Pfister
    Cc: Dirk Eibach
    Cc: Peter De Schrijver
    Cc: John Zhan
    Cc: Rishi Bhattacharya
    Cc: Peter Tyser

    Wolfgang Denk
     

30 Apr, 2011

1 commit

  • Currently, some linker scripts are found by common code in config.mk.
    Some are found using CONFIG_SYS_LDSCRIPT, but the code for that is
    sometimes in arch config.mk and sometimes in board config.mk. Some
    are found using an arch-specific rule for looking in CPUDIR, etc.

    Further, the powerpc config.mk rule relied on CONFIG_NAND_SPL
    when it really wanted CONFIG_NAND_U_BOOT -- which covered up the fact
    that not all NAND_U_BOOT builds actually wanted CPUDIR/u-boot-nand.lds.

    Replace all of this -- except for a handful of boards that are actually
    selecting a linker script in a unique way -- with centralized ldscript
    finding.

    If board code specifies LDSCRIPT, that will be used.
    Otherwise, if CONFIG_SYS_LDSCRIPT is specified, that will be used.

    If neither of these are specified, then the central config.mk will
    check for the existence of the following, in order:

    $(TOPDIR)/board/$(BOARDDIR)/u-boot-nand.lds (only if CONFIG_NAND_U_BOOT)
    $(TOPDIR)/$(CPUDIR)/u-boot-nand.lds (only if CONFIG_NAND_U_BOOT)
    $(TOPDIR)/board/$(BOARDDIR)/u-boot.lds
    $(TOPDIR)/$(CPUDIR)/u-boot.lds

    Some boards (sc3, cm5200, munices) provided their own u-boot.lds that
    were dead code, because they were overridden by a CPUDIR u-boot.lds under
    the old powerpc rules. These boards' own u-boot.lds have bitrotted and
    no longer work -- these lds files have been removed.

    Signed-off-by: Scott Wood
    Tested-by: Graeme Russ

    Scott Wood
     

28 Mar, 2011

1 commit


10 Jan, 2011

1 commit

  • The include/miiphy.h header duplicates a lot of things from linux/mii.h.
    So punt all the things that overlap to keep the API simple and to make
    merging between U-Boot and Linux simpler.

    Signed-off-by: Mike Frysinger

    Mike Frysinger
     

18 Nov, 2010

1 commit

  • Before this commit, weak symbols were not overridden by non-weak symbols
    found in archive libraries when linking with recent versions of
    binutils. As stated in the System V ABI, "the link editor does not
    extract archive members to resolve undefined weak symbols".

    This commit changes all Makefiles to use partial linking (ld -r) instead
    of creating library archives, which forces all symbols to participate in
    linking, allowing non-weak symbols to override weak symbols as intended.
    This approach is also used by Linux, from which the gmake function
    cmd_link_o_target (defined in config.mk and used in all Makefiles) is
    inspired.

    The name of each former library archive is preserved except for
    extensions which change from ".a" to ".o". This commit updates
    references accordingly where needed, in particular in some linker
    scripts.

    This commit reveals board configurations that exclude some features but
    include source files that depend these disabled features in the build,
    resulting in undefined symbols. Known such cases include:
    - disabling CMD_NET but not CMD_NFS;
    - enabling CONFIG_OF_LIBFDT but not CONFIG_QE.

    Signed-off-by: Sebastien Carlier

    Sebastien Carlier
     

19 Oct, 2010

1 commit

  • The change is currently needed to be able to remove the board
    configuration scripting from the top level Makefile and replace it by
    a simple, table driven script.

    Moving this configuration setting into the "CONFIG_*" name space is
    also desirable because it is needed if we ever should move forward to
    a Kconfig driven configuration system.

    Signed-off-by: Wolfgang Denk

    Wolfgang Denk
     

13 Apr, 2010

3 commits


13 Jun, 2009

1 commit


21 Mar, 2009

1 commit

  • A recent gcc added a new unaligned rodata section called '.rodata.str1.1',
    which needs to be added the the linker script. Instead of just adding this
    one section, we use a wildcard ".rodata*" to get all rodata linker section
    gcc has now and might add in the future.

    However, '*(.rodata*)' by itself will result in sub-optimal section
    ordering. The sections will be sorted by object file, which causes extra
    padding between the unaligned rodata.str.1.1 of one object file and the
    aligned rodata of the next object file. This is easy to fix by using the
    SORT_BY_ALIGNMENT command.

    This patch has not be tested one most of the boards modified. Some boards
    have a linker script that looks something like this:

    *(.text)
    . = ALIGN(16);
    *(.rodata)
    *(.rodata.str1.4)
    *(.eh_frame)

    I change this to:

    *(.text)
    . = ALIGN(16);
    *(.eh_frame)
    *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))

    This means the start of rodata will no longer be 16 bytes aligned.
    However, the boundary between text and rodata/eh_frame is still aligned to
    16 bytes, which is what I think the real purpose of the ALIGN call is.

    Signed-off-by: Trent Piepho

    Trent Piepho
     

19 Nov, 2008

1 commit

  • Most of the bss initialization loop increments 4 bytes
    at a time. And the loop end is checked for an 'equal'
    condition. Make the bss end address aligned by 4, so
    that the loop will end as expected.

    Signed-off-by: Selvamuthukumar
    Signed-off-by: Wolfgang Denk

    Selvamuthukumar
     

19 Oct, 2008

1 commit


11 Sep, 2008

1 commit


03 Jul, 2008

1 commit


03 Mar, 2008

1 commit

  • - actua1:
    actux1.c: In function 'checkboard':
    actux1.c:92: warning: unused variable 'revision'

    - actua2:
    actux2.c: In function 'checkboard':
    actux2.c:100: warning: unused variable 's'
    actux2.c:99: warning: unused variable 'revision'
    actux2.c: In function 'reset_phy':
    actux2.c:130: warning: unused variable 'i'

    - actua3:
    actux3.c: In function 'checkboard':
    actux3.c:114: warning: unused variable 'revision'

    Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD

    Jean-Christophe PLAGNIOL-VILLARD
     

18 Jan, 2008

1 commit