07 Feb, 2014

1 commit

  • With this change driver will benefit from existing phylib and thus
    custom phy functionality implemented in the driver will go away:
    * Instantiation of the driver is now much shorter - 2 parameters
    instead of 4.
    * Simplified phy management/functoinality in driver is replaced with
    rich functionality of phylib.
    * Support of custom phy initialization is now done with existing
    "board_phy_config".

    Note that after this change some previously used config options
    (driver-specific PHY configuration) will be obsolete and they are simply
    substituted with similar options of phylib.

    For example:
    * CONFIG_DW_AUTONEG - no need in this one. Autonegotiation is enabled
    by default.
    * CONFIG_DW_SEARCH_PHY - if one wants to specify attached phy
    explicitly CONFIG_PHY_ADDR board config option has to be used, otherwise
    automatically the first discovered on MDIO bus phy will be used

    I believe there's no need now in "doc/README.designware_eth" because
    user only needs to instantiate the driver with "designware_initialize"
    whose prototype exists in "include/netdev.h".

    Cc: Joe Hershberger
    Cc: Vipin Kumar
    Cc: Stefan Roese
    Cc: Mischa Jonker
    Cc: Shiraz Hashim
    Cc: Albert ARIBAUD
    Cc: Amit Virdi
    Cc: Sonic Zhang
    Signed-off-by: Alexey Brodkin

    Alexey Brodkin
     

01 Nov, 2013

1 commit


24 Jul, 2013

1 commit


02 Apr, 2013

1 commit

  • 'bool' is defined in random places. This patch consolidates them into a
    single header file include/linux/types.h, using stdbool.h introduced in C99.

    All other #define, typedef and enum are removed. They are all consistent with
    true = 1, false = 0.

    Replace FALSE, False with false. Replace TRUE, True with true.
    Skip *.py, *.php, lib/* files.

    Signed-off-by: York Sun

    York Sun
     

04 Oct, 2012

1 commit

  • This patch adds support for the X600 SPEAr600 based board. Its also
    the first SPEAr600 board that uses the newly introduced SPEAr600
    SPL support. Xloader is not necessary any more. By using the new
    "u-boot.spr" make target, one image will generated containing both,
    U-Boot SPL (with mkimage header as needed by the SPEAr BootROM, and
    the main U-Boot with mkimage header.

    Signed-off-by: Stefan Roese
    Cc: Amit Virdi
    Cc: Vipin Kumar

    Stefan Roese
     

07 Jul, 2012

11 commits

  • Signed-off-by: Stefan Roese
    Cc: Amit Virdi
    Cc: Vipin Kumar

    Stefan Roese
     
  • Enable data cache with 1:1 mapping of DDR to enable fast file
    transfer over tty which was doing lot of copy.

    This feature is enabled only for flashing operation i.e. when
    CONFIG_SPEAR_USBTTY is enabled.

    This has been tested on SPEAr320, SPEAr600 and SPEAr900 evaluation
    boards.

    Following figures show an estimate on the performance improvements. The
    test setup was a Linux host (not Windows) and involved measurement of
    only binary transfer time, through kermit. The flash erase and flash
    copy time would be unaffected by these patches.

    Another thing is this that the timings remained more or less same across
    ARM9 and Cortex based devices, hence reporting only one of the cases.

    Before Enhancements
    ===================

    $ time ukermit.small -p /dev/ttyACM0 -f spear320_uImage.img
    Downloading file: 100.00% completed(2014080/2014080 bytes)
    real 0m41.228s
    user 0m0.002s
    sys 0m0.064s

    After Enhancements
    ==================

    $ time ukermit.large -p /dev/ttyACM0 -f spear320_uImage.img
    Downloading file: 100.00% completed(2014080/2014080 bytes)
    real 0m5.441s
    user 0m0.001s
    sys 0m0.001s

    Signed-off-by: Shiraz Hashim
    Signed-off-by: Amit Virdi
    Signed-off-by: Stefan Roese

    Shiraz Hashim
     
  • flash reading is required earlier than flash_init is called since the env_init
    is called before flash_init. This makes the smi_init necessary before env_init
    being called.

    Signed-off-by: Amit Virdi
    Acked-by: Stefan Roese
    Signed-off-by: Stefan Roese

    Amit Virdi
     
  • This patch adds options for all the below mentioned configurations and
    subsequently renames the include/configs/spearxxx.h files to spear3xx_evb.h,
    spear6xx_evb.h etc to depict evaluation board configuration.

    SPEAr3xx and SPEAr6xx boards can be compiled in following configurations
    1. Environment placed in NAND
    2. Console on usb device
    3. Console on usb device with environment placed in NAND
    4. SPEAr310 and SPEAr320 support environment variables in parallel
    NOR flash.

    Signed-off-by: Vipin Kumar
    Signed-off-by: Amit Virdi
    Signed-off-by: Stefan Roese

    Vipin KUMAR
     
  • Few Designware peripheral registers need to be modified based on the
    ethernet interface selected by the board. This patch supports interface
    information in ethernet driver

    Signed-off-by: Vipin Kumar
    Signed-off-by: Amit Virdi
    Signed-off-by: Stefan Roese

    Vipin Kumar
     
  • SPEAr310 and SPEAr320 SoCs have an extra ethernet controller. The
    driver for this device is already supported by u-boot, so configuring
    board configuration file and defining base addresses etc to make use
    of the common driver

    Signed-off-by: Vipin Kumar
    Signed-off-by: Amit Virdi
    Signed-off-by: Stefan Roese

    Vipin KUMAR
     
  • Signed-off-by: Vipin Kumar
    Signed-off-by: Amit Virdi
    Signed-off-by: Stefan Roese

    Vipin KUMAR
     
  • ethaddr can be optionally read from i2c memory. So, chip_config command supports
    reading/writing hw mac id into i2c memory. Placing this code within
    CONFIG_CMD_NET as this would only be needed when network interface is configured

    Signed-off-by: Vipin Kumar
    Signed-off-by: Amit Virdi
    Signed-off-by: Stefan Roese

    Vipin KUMAR
     
  • Xloader table was used primarily to inform u-boot about the DDR size. However,
    now the ddr size is calculated at runtime which eliminates any need for the
    Xloader table. So removing this unnecessary code.

    Signed-off-by: Amit Virdi
    Acked-by: Stefan Roese
    Signed-off-by: Stefan Roese

    Amit Virdi
     
  • While the u-boot code is running from the flash, it is essential that no access
    is made to the bss segment. This is due to the fact that .rel.dyn and .bss areas
    overlap and former contains information used in relocation. In SPEAr, this was
    not taken into consideration. As a result, while the relocation wasn't complete,
    dram_init populated an uninitialized global variable resulting in corruption of
    .rel.dyn area, which resulted in u-boot crash.

    This commit fixes this problem by removing code that accesses bss segment

    Signed-off-by: Amit Virdi
    Acked-by: Stefan Roese
    Signed-off-by: Stefan Roese

    Amit Virdi
     
  • Since FSMC is a standard IP and it supports different memory interfaces, it
    is supported independent of spear platform and spear is configured to use that
    driver for interfacing with the NAND device

    Signed-off-by: Vipin Kumar
    Signed-off-by: Amit Virdi
    Signed-off-by: Stefan Roese
    Acked-by: Scott Wood

    Vipin KUMAR
     

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
     

04 Aug, 2011

1 commit


26 Jul, 2011

1 commit


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
     

25 Jul, 2010

1 commit

  • Lots of code use this construct:

    cmd_usage(cmdtp);
    return 1;

    Change cmd_usage() let it return 1 - then we can replace all these
    ocurrances by

    return cmd_usage(cmdtp);

    This fixes a few places with incorrect return code handling, too.

    Signed-off-by: Wolfgang Denk

    Wolfgang Denk
     

05 Jul, 2010

1 commit

  • The hush shell dynamically allocates (and re-allocates) memory for the
    argument strings in the "char *argv[]" argument vector passed to
    commands. Any code that modifies these pointers will cause serious
    corruption of the malloc data structures and crash U-Boot, so make
    sure the compiler can check that no such modifications are being done
    by changing the code into "char * const argv[]".

    This modification is the result of debugging a strange crash caused
    after adding a new command, which used the following argument
    processing code which has been working perfectly fine in all Unix
    systems since version 6 - but not so in U-Boot:

    int main (int argc, char **argv)
    {
    while (--argc > 0 && **++argv == '-') {
    /* ====> */ while (*++*argv) {
    switch (**argv) {
    case 'd':
    debug++;
    break;
    ...
    default:
    usage ();
    }
    }
    }
    ...
    }

    The line marked "====>" will corrupt the malloc data structures and
    usually cause U-Boot to crash when the next command gets executed by
    the shell. With the modification, the compiler will prevent this with
    an
    error: increment of read-only location '*argv'

    N.B.: The code above can be trivially rewritten like this:

    while (--argc > 0 && **++argv == '-') {
    char *arg = *argv;
    while (*++arg) {
    switch (*arg) {
    ...

    Signed-off-by: Wolfgang Denk
    Acked-by: Mike Frysinger

    Wolfgang Denk
     

22 Mar, 2010

1 commit


08 Mar, 2010

1 commit


23 Jan, 2010

6 commits