diff options
author | Vipin Kumar <vipin.kumar@st.com> | 2012-05-07 13:06:44 +0530 |
---|---|---|
committer | Albert ARIBAUD <albert.u.boot@aribaud.net> | 2012-07-07 14:07:40 +0200 |
commit | 9afc1af01f2d4b033e0da5df105b399949976a12 (patch) | |
tree | f0df7ec6f543b2c6f2d0baad645cec5f96c2c289 /board/spear/spear600/spear600.c | |
parent | 8eb0ee6a649d09a41155bf6c9dbd4d531ed41f9e (diff) |
SPEAr: Add interface information in initialization
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 <vipin.kumar@st.com>
Signed-off-by: Amit Virdi <amit.virdi@st.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Diffstat (limited to 'board/spear/spear600/spear600.c')
-rw-r--r-- | board/spear/spear600/spear600.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/board/spear/spear600/spear600.c b/board/spear/spear600/spear600.c index d18d313b29..814f9ccb6b 100644 --- a/board/spear/spear600/spear600.c +++ b/board/spear/spear600/spear600.c @@ -22,6 +22,7 @@ */ #include <common.h> +#include <miiphy.h> #include <netdev.h> #include <nand.h> #include <asm/io.h> @@ -59,9 +60,16 @@ void board_nand_init() int board_eth_init(bd_t *bis) { + int ret = 0; + #if defined(CONFIG_DESIGNWARE_ETH) - return designware_initialize(0, CONFIG_SPEAR_ETHBASE, CONFIG_DW0_PHY); -#else - return -1; + u32 interface = PHY_INTERFACE_MODE_MII; +#if defined(CONFIG_DW_AUTONEG) + interface = PHY_INTERFACE_MODE_GMII; +#endif + if (designware_initialize(0, CONFIG_SPEAR_ETHBASE, CONFIG_DW0_PHY, + interface) >= 0) + ret++; #endif + return ret; } |