summaryrefslogtreecommitdiff
path: root/board/spear/spear600
diff options
context:
space:
mode:
authorVipin Kumar <vipin.kumar@st.com>2012-05-07 07:36:44 (GMT)
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2012-07-07 12:07:40 (GMT)
commit9afc1af01f2d4b033e0da5df105b399949976a12 (patch)
treef0df7ec6f543b2c6f2d0baad645cec5f96c2c289 /board/spear/spear600
parent8eb0ee6a649d09a41155bf6c9dbd4d531ed41f9e (diff)
downloadu-boot-fsl-qoriq-9afc1af01f2d4b033e0da5df105b399949976a12.tar.xz
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')
-rw-r--r--board/spear/spear600/spear600.c14
1 files changed, 11 insertions, 3 deletions
diff --git a/board/spear/spear600/spear600.c b/board/spear/spear600/spear600.c
index d18d313..814f9cc 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;
}