Skip to content
Snippets Groups Projects
Commit 54e3316f authored by Chris Packham's avatar Chris Packham Committed by Stefan Roese
Browse files

ARM: kirkwood: SBx81LIFKW: Enable network hardware


The SBx81LIFKW boards connect to the internal chassis management network
via a Marvell 88e6097 L2 switch. The chassis connections are direct
serdes on ports 8 and 9 with a RGMII interface on port 10 connected to
the CPU MAC.

For debugging purposes ports 0 and 1 are also taken out to headers on
the board. Because the debug interfaces are sometimes connected to with
straight ribbon cables we need to run them at 10Mbps.

Signed-off-by: default avatarChris Packham <judge.packham@gmail.com>
Reviewed-by: default avatarStefan Roese <sr@denx.de>
Signed-off-by: default avatarStefan Roese <sr@denx.de>
parent 87a62bce
No related branches found
No related tags found
No related merge requests found
...@@ -164,9 +164,15 @@ int board_init(void) ...@@ -164,9 +164,15 @@ int board_init(void)
return 0; return 0;
} }
#ifdef CONFIG_MV88E61XX_SWITCH #ifdef CONFIG_RESET_PHY_R
/* Configure and enable Switch and PHY */ /* automatically defined by kirkwood config.h */
void reset_phy(void) void reset_phy(void)
{
}
#endif
#ifdef CONFIG_MV88E61XX_SWITCH
int mv88e61xx_hw_reset(struct phy_device *phydev)
{ {
/* Ensure the 88e6097 gets at least 10ms Reset /* Ensure the 88e6097 gets at least 10ms Reset
*/ */
...@@ -174,6 +180,10 @@ void reset_phy(void) ...@@ -174,6 +180,10 @@ void reset_phy(void)
mdelay(20); mdelay(20);
kw_gpio_set_value(MV88E6097_RESET, 1); kw_gpio_set_value(MV88E6097_RESET, 1);
mdelay(20); mdelay(20);
phydev->advertising = ADVERTISED_10baseT_Half | ADVERTISED_10baseT_Full;
return 0;
} }
#endif #endif
......
...@@ -14,6 +14,7 @@ CONFIG_CMD_I2C=y ...@@ -14,6 +14,7 @@ CONFIG_CMD_I2C=y
CONFIG_CMD_SF=y CONFIG_CMD_SF=y
CONFIG_CMD_DHCP=y CONFIG_CMD_DHCP=y
CONFIG_BOOTP_NTPSERVER=y CONFIG_BOOTP_NTPSERVER=y
CONFIG_CMD_MII=y
CONFIG_CMD_PING=y CONFIG_CMD_PING=y
CONFIG_CMD_SNTP=y CONFIG_CMD_SNTP=y
CONFIG_OF_CONTROL=y CONFIG_OF_CONTROL=y
...@@ -29,5 +30,10 @@ CONFIG_I2C_MUX_PCA954x=y ...@@ -29,5 +30,10 @@ CONFIG_I2C_MUX_PCA954x=y
CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH=y
CONFIG_SPI_FLASH_STMICRO=y CONFIG_SPI_FLASH_STMICRO=y
# CONFIG_SPI_FLASH_USE_4K_SECTORS is not set # CONFIG_SPI_FLASH_USE_4K_SECTORS is not set
CONFIG_PHYLIB=y
CONFIG_MV88E61XX_SWITCH=y
CONFIG_MV88E61XX_CPU_PORT=10
CONFIG_MV88E61XX_PHY_PORTS=0x003
CONFIG_MV88E61XX_FIXED_PORTS=0x300
CONFIG_SPI=y CONFIG_SPI=y
CONFIG_KIRKWOOD_SPI=y CONFIG_KIRKWOOD_SPI=y
...@@ -103,15 +103,10 @@ ...@@ -103,15 +103,10 @@
#define CONFIG_NETCONSOLE /* include NetConsole support */ #define CONFIG_NETCONSOLE /* include NetConsole support */
#define CONFIG_NET_MULTI /* specify more that one ports available */ #define CONFIG_NET_MULTI /* specify more that one ports available */
#define CONFIG_MII /* expose smi over miiphy interface */ #define CONFIG_MII /* expose smi over miiphy interface */
#define CONFIG_PHYLIB
#define CONFIG_MVGBE /* Enable kirkwood Gbe Controller Driver */ #define CONFIG_MVGBE /* Enable kirkwood Gbe Controller Driver */
#define CONFIG_MVGBE_PORTS {1, 0} /* enable a single port */ #define CONFIG_MVGBE_PORTS {1, 0} /* enable a single port */
#define CONFIG_PHY_BASE_ADR 0x01 #define CONFIG_PHY_BASE_ADR 0x01
#define CONFIG_ENV_OVERWRITE /* ethaddr can be reprogrammed */ #define CONFIG_ENV_OVERWRITE /* ethaddr can be reprogrammed */
#define CONFIG_RESET_PHY_R /* use reset_phy() to init switch */
#define CONFIG_MV88E61XX_SWITCH /* Enable MV88E61XX switch driver */
#define CONFIG_MV88E61XX_PHY_PORTS 0x303 /* Pt0,1,8,9 */
#define CONFIG_MV88E61XX_CPU_PORT 10 /* 10(CPU) */
#endif /* CONFIG_CMD_NET */ #endif /* CONFIG_CMD_NET */
/* /*
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment