28 Jul, 2011

1 commit


02 Jun, 2011

1 commit

  • At least on ARM the ipaddr is only set in board_init_r function. The
    problem is if ipaddr is not defined in environment importing another
    environment defined don't update the ipaddr value.

    For example, suppose we've a default environment without net variables
    defined and we want to import an uEnv.txt environment from SD-card like
    this:

    ipaddr=192.168.2.240
    netmask=255.255.255.0
    gatewayip=192.168.2.1
    serverip=192.168.2.114

    Then if you try boot from NFS results in:

    Importing environment from mmc ...
    Running uenvcmd ...
    smc911x: detected LAN9221 controller
    smc911x: phy initialized
    smc911x: MAC ac:de:48:00:00:00
    *** ERROR: `ipaddr' not set

    The ipaddr at this point is NULL beacause is only set at board_init_r
    function. This patch updates the ipaddr value if the environment has
    changed.

    Signed-off-by: Enric Balletbo i Serra
    Acked-by: Mike Frysinger

    Enric Balletbo i Serra
     

20 May, 2011

13 commits


13 May, 2011

10 commits

  • This removes the following checkpatch issue:
    - ERROR: do not use assignment in if condition

    Signed-off-by: Luca Ceresoli
    Cc: Wolfgang Denk
    Cc: Ben Warren

    Luca Ceresoli
     
  • This removes the following checkpatch issues:
    - ERROR: switch and case should be at the same indent
    - WARNING: suspect code indent for conditional statements
    - WARNING: labels should not be indented

    Signed-off-by: Luca Ceresoli
    Cc: Wolfgang Denk
    Cc: Ben Warren

    Luca Ceresoli
     
  • This removes the following checkpatch issue:
    - ERROR: return is not a function, parentheses are not required

    Signed-off-by: Luca Ceresoli
    Cc: Wolfgang Denk
    Cc: Ben Warren

    Luca Ceresoli
     
  • This removes the following checkpatch issues:
    - ERROR: "foo * bar" should be "foo *bar"
    - ERROR: "(foo*)" should be "(foo *)"

    Signed-off-by: Luca Ceresoli
    Cc: Wolfgang Denk
    Cc: Ben Warren

    Luca Ceresoli
     
  • This removes the following checkpatch issues:
    - WARNING: braces {} are not necessary for single statement blocks
    - WARNING: braces {} are not necessary for any arm of this statement

    Signed-off-by: Luca Ceresoli
    Cc: Wolfgang Denk
    Cc: Ben Warren

    Luca Ceresoli
     
  • This removes the following checkpatch issues:
    - ERROR: space prohibited after that open parenthesis '('
    - ERROR: space prohibited before that close parenthesis ')'
    - ERROR: space prohibited after that open square bracket '['
    - ERROR: space prohibited after that '&' (ctx:WxW)
    - ERROR: spaces required around that '=' (ctx:VxW)
    - ERROR: space required before the open parenthesis '('
    - ERROR: space required after that ',' (ctx:VxV)
    - ERROR: need consistent spacing around '+' (ctx:WxV)
    - WARNING: unnecessary whitespace before a quoted newline
    - WARNING: please, no spaces at the start of a line
    - WARNING: space prohibited between function name and open
    parenthesis '('

    Signed-off-by: Luca Ceresoli
    Cc: Wolfgang Denk
    Cc: Ben Warren
    Cc: Mike Frysinger

    Luca Ceresoli
     
  • This removes the following checkpatch errors:
    - ERROR: do not initialise globals to 0 or NULL
    - ERROR: spaces required around that '=' (ctx:VxV)
    - ERROR: that open brace { should be on the previous line

    Signed-off-by: Luca Ceresoli
    Cc: Wolfgang Denk
    Cc: Ben Warren
    Cc: Mike Frysinger

    Luca Ceresoli
     
  • This removes the following checkpatch warning:
    - WARNING: line over 80 characters

    There are three such warnings left.

    The first is hard to fix with cosmetic-only changes without compromising code
    readability, so I'm leaving it as it is for now:
    WARNING: line over 80 characters
    #1537: FILE: net.c:1537:
    + [4 tabs] memcpy(((Ethernet_t *)NetArpWaitTxPacket)->et_dest, ...

    The other two cannot be fixed without splitting string literals, so it is
    preferred to keep them longer than 80 characters.

    Signed-off-by: Luca Ceresoli
    Cc: Wolfgang Denk
    Cc: Ben Warren
    Cc: Mike Frysinger

    Luca Ceresoli
     
  • This is needed for the upcoming TFTP server implementation.

    This also simplifies PingHandler() and fixes rxhand_f documentation.

    Signed-off-by: Luca Ceresoli
    Cc: Wolfgang Denk
    Acked-by: Detlev Zundel

    Luca Ceresoli
     
  • Netconsole use the environment variable `ncip' to configure the
    destination IP. `serverip' don't need to be defined.

    Signed-off-by: Simon Guinot

    Simon Guinot
     

28 Apr, 2011

1 commit


21 Apr, 2011

1 commit

  • Extends the mii_dev structure to participate in a full-blown MDIO and
    PHY driver scheme. The mii_dev structure and miiphy calls are modified
    in such a way to allow the original mii command and miiphy
    infrastructure to work as before, but also to support a new set of APIs
    which allow (among other things) sharing of PHY driver code and 10G support

    The mii command will continue to support normal PHY management functions
    (Clause 22 of 802.3), but will not be changed to support 10G
    (Clause 45).

    The basic design is similar to PHY Lib from Linux, but simplified for
    U-Boot's network and driver infrastructure.

    We now have MDIO drivers and PHY drivers

    An MDIO driver provides:
    read
    write
    reset

    A PHY driver provides:
    (optionally): probe
    config - initial setup, starting of auto-negotiation
    startup - waiting for AN, and reading link state
    shutdown - any cleanup needed

    The ethernet drivers interact with the PHY Lib using these functions:
    phy_connect()
    phy_config()
    phy_startup()
    phy_shutdown()

    Each PHY driver can be configured separately, or all at once using
    config_phylib_all_drivers.h (added in the patch which adds the drivers)

    We also provide generic drivers for Clause 22 (10/100/1000), and
    Clause 45 (10G) PHYs.

    We also implement phy_reset(), and call it in phy_connect(). Because
    phy_reset() is essentially the same as miiphy_reset, but:
    a) must support 10G PHYs, and
    b) should use the phylib primitives,

    we implement miiphy_reset, using phy_reset(), but only when
    CONFIG_PHYLIB is set. Otherwise, we just use the old version. In this
    way, we save on compile size, even if we don't manage to save code size.

    Pulled ethtool.h and mdio.h from:
    git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
    782d640afd15af7a1faf01cfe566ca4ac511319d
    With many, many deletions so as to enable compilation under u-boot

    Signed-off-by: Andy Fleming
    Signed-off-by: Kumar Gala
    Acked-by: Detlev Zundel

    Andy Fleming
     

14 Apr, 2011

1 commit


20 Feb, 2011

2 commits


29 Nov, 2010

2 commits


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
     

15 Nov, 2010

2 commits

  • This has always been confusing, and the idea of these functions returning the
    number of interfaces initialized was half-baked and ultimately pointless.
    Instead, act more like regular functions and return < 0 on failure, >= 0 on
    success.

    This change shouldn't break anything.

    Signed-off-by: Ben Warren

    Ben Warren
     
  • Can't get IP address with dhcp due to the dhcp server not
    allow the empty param list request under some network env

    This patch is based on Gray Remlin's initial patch.

    Signed-off-by: Jason Liu
    Signed-off-by: Gray Remlin

    Jason Liu
     

12 Oct, 2010

2 commits


10 Aug, 2010

1 commit

  • Commit 6e37b1a3a25004d3df5867de49fff6b3fc9c4f04 modifies several net calls
    to take a (const char *) parameter instead of (char *), but in some cases
    the modified functions call other functions taking (char *). The end result
    is warnings about discarding the const qualifier.

    This patch fixes these other function signatures.

    Signed-off-by: Ben Warren

    Ben Warren
     

12 Jul, 2010

1 commit

  • Some commands operate on eth device names (like 'mii'), but those cannot
    be passed on the command line as one argument. So detect devices like
    these and warn about them so someone will fix it.

    Signed-off-by: Mike Frysinger
    Signed-off-by: Ben Warren

    Mike Frysinger
     

21 Jun, 2010

1 commit