
Vipin KUMAR wrote:
Signed-off-by: Vipin Kumar vipin.kumar@st.com
arch/arm/include/asm/arch-spear/hardware.h | 1 + board/spear/spear300/spear300.c | 6 ++++++ board/spear/spear310/spear310.c | 6 ++++++ board/spear/spear320/spear320.c | 6 ++++++ board/spear/spear600/spear600.c | 6 ++++++ include/configs/spear-common.h | 10 ++++++++-- include/configs/spear3xx.h | 3 +++ 7 files changed, 36 insertions(+), 2 deletions(-)
diff --git a/arch/arm/include/asm/arch-spear/hardware.h b/arch/arm/include/asm/arch-spear/hardware.h index 818f36c..39d64b6 100644 --- a/arch/arm/include/asm/arch-spear/hardware.h +++ b/arch/arm/include/asm/arch-spear/hardware.h @@ -31,6 +31,7 @@ #define CONFIG_SPEAR_SYSCNTLBASE (0xFCA00000) #define CONFIG_SPEAR_TIMERBASE (0xFC800000) #define CONFIG_SPEAR_MISCBASE (0xFCA80000) +#define CONFIG_SPEAR_ETHBASE (0xE0800000)
#define CONFIG_SYS_NAND_CLE (1 << 16) #define CONFIG_SYS_NAND_ALE (1 << 17) diff --git a/board/spear/spear300/spear300.c b/board/spear/spear300/spear300.c index 60ee544..cd24247 100644 --- a/board/spear/spear300/spear300.c +++ b/board/spear/spear300/spear300.c @@ -22,6 +22,7 @@ */
#include <common.h> +#include <netdev.h> #include <nand.h> #include <asm/io.h> #include <asm/arch/hardware.h> @@ -56,3 +57,8 @@ int board_nand_init(struct nand_chip *nand)
return -1; }
+int board_eth_init(bd_t *bis) +{
- return designware_initialize(0, CONFIG_SPEAR_ETHBASE);
+}
The function can be conditionally compiled in based on CONFIG_DESIGNWARE_ETH
board_eth_init may be able to go in the spear/common
Tom
diff --git a/board/spear/spear310/spear310.c b/board/spear/spear310/spear310.c index 03dfe16..e8a6552 100644 --- a/board/spear/spear310/spear310.c +++ b/board/spear/spear310/spear310.c @@ -23,6 +23,7 @@ */
#include <common.h> +#include <netdev.h> #include <nand.h> #include <asm/io.h> #include <asm/arch/hardware.h> @@ -57,3 +58,8 @@ int board_nand_init(struct nand_chip *nand)
return -1; }
+int board_eth_init(bd_t *bis) +{
- return dw_mii_initialize(0, CONFIG_SPEAR_ETHBASE);
+} diff --git a/board/spear/spear320/spear320.c b/board/spear/spear320/spear320.c index 2ba2dbb..72bc9a5 100644 --- a/board/spear/spear320/spear320.c +++ b/board/spear/spear320/spear320.c @@ -23,6 +23,7 @@ */
#include <common.h> +#include <netdev.h> #include <nand.h> #include <asm/io.h> #include <asm/arch/hardware.h> @@ -57,3 +58,8 @@ int board_nand_init(struct nand_chip *nand)
return -1; }
+int board_eth_init(bd_t *bis) +{
- return dw_mii_initialize(0, CONFIG_SPEAR_ETHBASE);
+} diff --git a/board/spear/spear600/spear600.c b/board/spear/spear600/spear600.c index eef9a37..6d921bd 100644 --- a/board/spear/spear600/spear600.c +++ b/board/spear/spear600/spear600.c @@ -22,6 +22,7 @@ */
#include <common.h> +#include <netdev.h> #include <nand.h> #include <asm/io.h> #include <asm/arch/hardware.h> @@ -51,3 +52,8 @@ int board_nand_init(struct nand_chip *nand)
return -1; }
+int board_eth_init(bd_t *bis) +{
- return designware_initialize(0, CONFIG_SPEAR_ETHBASE);
+} diff --git a/include/configs/spear-common.h b/include/configs/spear-common.h index 68ba293..ecb1fd1 100644 --- a/include/configs/spear-common.h +++ b/include/configs/spear-common.h @@ -27,6 +27,11 @@
- Common configurations used for both spear3xx as well as spear6xx
*/
+/* Ethernet driver configuration */ +#define CONFIG_DESIGNWARE_ETH +#define CONFIG_NET_MULTI +#define CONFIG_PHY_RESET_DELAY (10000) /* in usec */
/* USBD driver configuration */ #define CONFIG_SPEARUDC #define CONFIG_USB_DEVICE @@ -98,11 +103,12 @@ #define CONFIG_CMD_MEMORY #define CONFIG_CMD_RUN #define CONFIG_CMD_SAVES +#define CONFIG_CMD_NET +#define CONFIG_CMD_PING +#define CONFIG_CMD_DHCP
/* This must be included AFTER the definition of CONFIG_COMMANDS (if any) */ #include <config_cmd_default.h> -#undef CONFIG_CMD_NET -#undef CONFIG_CMD_NFS
/*
- Default Environment Varible definitions
diff --git a/include/configs/spear3xx.h b/include/configs/spear3xx.h index 0248aba..502c50f 100644 --- a/include/configs/spear3xx.h +++ b/include/configs/spear3xx.h @@ -41,6 +41,9 @@
#include <configs/spear-common.h>
+/* Ethernet driver configuration */ +#define CONFIG_DW_ALTDESCRIPTOR 1
/* Serial Configuration (PL011) */ #define CONFIG_SYS_SERIAL0 0xD0000000