bcm63xx: switch to b53 and swconfig
Switch to using the B53 switch driver where appropriate. Use a non-tagged default config where it isn't confirmed to be working. Remove the switch configuration in preinit as the switch will now be configured by the driver to use port isolation to prevent leakage between lan and wan. While at it, also provide a switch config for Neufbox 6. Signed-off-by: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 35307
This commit is contained in:
parent
17d51121a6
commit
8411e5c06e
26 changed files with 265 additions and 63 deletions
|
@ -15,7 +15,7 @@ include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
define KernelPackage/switch
|
define KernelPackage/switch
|
||||||
SUBMENU:=Other modules
|
SUBMENU:=Other modules
|
||||||
DEPENDS:=@TARGET_brcm47xx||TARGET_brcm63xx
|
DEPENDS:=@TARGET_brcm47xx
|
||||||
TITLE:=Switch drivers
|
TITLE:=Switch drivers
|
||||||
FILES:= \
|
FILES:= \
|
||||||
$(PKG_BUILD_DIR)/switch-core.ko \
|
$(PKG_BUILD_DIR)/switch-core.ko \
|
||||||
|
|
|
@ -14,40 +14,88 @@ ucidef_set_interface_loopback
|
||||||
|
|
||||||
case "$board_name" in
|
case "$board_name" in
|
||||||
|
|
||||||
96328avng |\
|
96348W3 |\
|
||||||
96328A-1241N |\
|
|
||||||
96328A-1441N1 |\
|
|
||||||
963281TAN |\
|
|
||||||
963281T_TEF |\
|
|
||||||
96348A-122 |\
|
|
||||||
96358-502V |\
|
96358-502V |\
|
||||||
CT6373-1 |\
|
SPW500V)
|
||||||
AW4339U |\
|
|
||||||
CPVA642 |\
|
|
||||||
CT536_CT5621 |\
|
|
||||||
D-4P-W |\
|
|
||||||
"F@ST2604" |\
|
|
||||||
HW556* |\
|
|
||||||
NB6 |\
|
|
||||||
SPW303V |\
|
|
||||||
SPW500V |\
|
|
||||||
V2110 |\
|
|
||||||
96348W3)
|
|
||||||
ucidef_set_interface_lan "eth0"
|
ucidef_set_interface_lan "eth0"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
AW4139)
|
96338GW |\
|
||||||
|
96338W |\
|
||||||
|
96338W2_E7T |\
|
||||||
|
96348A-122 |\
|
||||||
|
96348W3 |\
|
||||||
|
CPVA642 |\
|
||||||
|
CT536_CT5621 |\
|
||||||
|
CT6373-1 |\
|
||||||
|
D-4P-W |\
|
||||||
|
"F@ST2604" |\
|
||||||
|
RTA1320_16M |\
|
||||||
|
RTA770BW |\
|
||||||
|
V2110)
|
||||||
|
ucidef_set_interface_lan "eth0"
|
||||||
|
ucidef_add_switch "eth0" "1" "1"
|
||||||
|
ucidef_add_switch_vlan "eth0" "1" "0 1 2 3 4 5"
|
||||||
|
;;
|
||||||
|
|
||||||
|
96348GW |\
|
||||||
|
96348GW-10 |\
|
||||||
|
96348GW-11 |\
|
||||||
|
96348GW-A |\
|
||||||
|
96358VW |\
|
||||||
|
96358VW2 |\
|
||||||
|
AGPF-S0 |\
|
||||||
|
"CPVA502+" |\
|
||||||
|
DV201AMR |\
|
||||||
|
DWV-S0 |\
|
||||||
|
"F@ST2404" |\
|
||||||
|
HW553 |\
|
||||||
|
MAGIC |\
|
||||||
|
RTA1025W_16 |\
|
||||||
|
V2500V_BB)
|
||||||
|
ucidef_set_interfaces_lan_wan "eth1" "eth0"
|
||||||
|
ucidef_add_switch "eth1" "1" "1"
|
||||||
|
ucidef_add_switch_vlan "eth1" "1" "0 1 2 3 4 5"
|
||||||
|
;;
|
||||||
|
|
||||||
|
AW4139 |\
|
||||||
|
HW556*)
|
||||||
ucidef_set_interface_lan "eth0.1"
|
ucidef_set_interface_lan "eth0.1"
|
||||||
ucidef_add_switch "eth0" "1" "1"
|
ucidef_add_switch "eth0" "1" "1"
|
||||||
ucidef_add_switch_vlan "eth0" "1" "0 1 2 3 4 5t"
|
ucidef_add_switch_vlan "eth0" "1" "0 1 2 3 4 5t"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
NB4-* |\
|
||||||
DVG3810BN)
|
DVG3810BN)
|
||||||
ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
|
ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
|
||||||
ucidef_add_switch "eth1" "1" "1"
|
ucidef_add_switch "eth1" "1" "1"
|
||||||
ucidef_add_switch_vlan "eth1" "1" "0 1 2 3 4 5t"
|
ucidef_add_switch_vlan "eth1" "1" "0 1 2 3 4 5t"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
96328avng |\
|
||||||
|
96328A-1241N |\
|
||||||
|
96328A-1441N1 |\
|
||||||
|
963281TAN |\
|
||||||
|
963281T_TEF |\
|
||||||
|
96368MVNgr)
|
||||||
|
ucidef_set_interface_lan "eth0.1"
|
||||||
|
ucidef_add_switch "eth0" "1" "1"
|
||||||
|
ucidef_add_switch_vlan "eth0" "1" "0 1 2 3 8t"
|
||||||
|
;;
|
||||||
|
|
||||||
|
96368MVWG)
|
||||||
|
ucidef_set_interface_lan "eth0.1"
|
||||||
|
ucidef_add_switch "eth0" "1" "1"
|
||||||
|
ucidef_add_switch_vlan "eth0" "1" "1 2 4 5 8t"
|
||||||
|
;;
|
||||||
|
|
||||||
|
NB6)
|
||||||
|
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
|
||||||
|
ucidef_add_switch "switch0" "1" "1"
|
||||||
|
ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 9t"
|
||||||
|
ucidef_add_switch_vlan "switch0" "2" "0 9t"
|
||||||
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
ucidef_set_interfaces_lan_wan "eth1" "eth0"
|
ucidef_set_interfaces_lan_wan "eth1" "eth0"
|
||||||
;;
|
;;
|
||||||
|
|
|
@ -13,7 +13,7 @@ brcm63xx_has_reset_button=""
|
||||||
brcm63xx_detect() {
|
brcm63xx_detect() {
|
||||||
board_name=$(awk 'BEGIN{FS="[ \t:/]+"} /system type/ {print $4}' /proc/cpuinfo)
|
board_name=$(awk 'BEGIN{FS="[ \t:/]+"} /system type/ {print $4}' /proc/cpuinfo)
|
||||||
|
|
||||||
if [ "$board_name" = "96358VW" ] && [ -e /proc/switch/eth1/enable ]; then
|
if [ "$board_name" = "96358VW" ] && [ -n "$(swconfig dev eth1 help 2>/dev/null)" ]; then
|
||||||
board_name="DVAG3810BN"
|
board_name="DVAG3810BN"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,6 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
failsafe_ip() {
|
failsafe_ip() {
|
||||||
[ -d "/proc/switch/$ifname" ] && {
|
|
||||||
ifconfig "$ifname" 0.0.0.0 down
|
|
||||||
echo "0 1 2 3 4 ${cpu_port:-5u*}" > "/proc/switch/$ifname/vlan/0/ports"
|
|
||||||
}
|
|
||||||
|
|
||||||
[ -n "$pi_ifname" ] && grep -q "$pi_ifname" /proc/net/dev && {
|
[ -n "$pi_ifname" ] && grep -q "$pi_ifname" /proc/net/dev && {
|
||||||
ifconfig $pi_ifname $pi_ip netmask $pi_netmask broadcast $pi_broadcast up
|
ifconfig $pi_ifname $pi_ip netmask $pi_netmask broadcast $pi_broadcast up
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,29 +16,12 @@ preinit_ip_deconfig() {
|
||||||
ifconfig $pi_ifname 0.0.0.0 down
|
ifconfig $pi_ifname 0.0.0.0 down
|
||||||
}
|
}
|
||||||
fi
|
fi
|
||||||
[ -d "/proc/switch/$ifname" ] && {
|
|
||||||
echo 1 > "/proc/switch/$ifname/reset"
|
|
||||||
echo "0 1 2 3 4 ${cpu_port:-5u*}" > "/proc/switch/$ifname/vlan/0/ports"
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
preinit_net_echo() {
|
preinit_net_echo() {
|
||||||
preinit_ip
|
preinit_ip
|
||||||
|
|
||||||
[ -d "/proc/switch/$ifname" ] && {
|
port_net_echo $1
|
||||||
echo 1 > "/proc/switch/$ifname/reset"
|
|
||||||
|
|
||||||
# this would be easier if we blasted the message across all ports
|
|
||||||
# but we don't want packets leaking across interfaces
|
|
||||||
for port in $(seq 0 4); do {
|
|
||||||
echo "$port ${cpu_port:-5u*}" > "/proc/switch/$ifname/vlan/0/ports"
|
|
||||||
port_net_echo $1
|
|
||||||
}; done
|
|
||||||
|
|
||||||
echo "0 ${cpu_port:-5u*}" > "/proc/switch/$ifname/vlan/0/ports"
|
|
||||||
|
|
||||||
} || port_net_echo $1
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,11 @@ CONFIG_ARCH_SUSPEND_POSSIBLE=y
|
||||||
CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
|
CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
|
||||||
CONFIG_AUDIT=y
|
CONFIG_AUDIT=y
|
||||||
CONFIG_AUDIT_GENERIC=y
|
CONFIG_AUDIT_GENERIC=y
|
||||||
|
CONFIG_B53=y
|
||||||
|
CONFIG_B53_MMAP_DRIVER=y
|
||||||
|
CONFIG_B53_PHY_DRIVER=y
|
||||||
|
CONFIG_B53_PHY_FIXUP=y
|
||||||
|
CONFIG_B53_SPI_DRIVER=y
|
||||||
CONFIG_BCM63XX=y
|
CONFIG_BCM63XX=y
|
||||||
CONFIG_BCM63XX_CPU_6328=y
|
CONFIG_BCM63XX_CPU_6328=y
|
||||||
CONFIG_BCM63XX_CPU_6338=y
|
CONFIG_BCM63XX_CPU_6338=y
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -512,6 +512,54 @@ static struct board_info __initdata boar
|
@@ -512,6 +512,56 @@ static struct board_info __initdata boar
|
||||||
|
|
||||||
.has_ohci0 = 1,
|
.has_ohci0 = 1,
|
||||||
};
|
};
|
||||||
|
@ -14,6 +14,8 @@
|
||||||
+ .has_uart0 = 1,
|
+ .has_uart0 = 1,
|
||||||
+
|
+
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
static struct board_info board;
|
static struct board_info board;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -709,6 +717,586 @@ static struct board_info __initdata boar
|
@@ -709,6 +717,596 @@ static struct board_info __initdata boar
|
||||||
|
|
||||||
.has_ohci0 = 1,
|
.has_ohci0 = 1,
|
||||||
};
|
};
|
||||||
|
@ -77,6 +77,8 @@
|
||||||
+ },
|
+ },
|
||||||
+
|
+
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
@ -188,6 +190,8 @@
|
||||||
+ },
|
+ },
|
||||||
+
|
+
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
@ -299,6 +303,8 @@
|
||||||
+ },
|
+ },
|
||||||
+
|
+
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
@ -410,6 +416,8 @@
|
||||||
+ },
|
+ },
|
||||||
+
|
+
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
@ -516,6 +524,8 @@
|
||||||
+ },
|
+ },
|
||||||
+
|
+
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -183,6 +183,38 @@ static struct board_info __initdata boar
|
@@ -183,6 +183,40 @@ static struct board_info __initdata boar
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
@ -12,6 +12,8 @@
|
||||||
+ .has_enet0 = 1,
|
+ .has_enet0 = 1,
|
||||||
+
|
+
|
||||||
+ .enet0 = {
|
+ .enet0 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -706,6 +706,96 @@ static struct board_info __initdata boar
|
@@ -706,6 +706,98 @@ static struct board_info __initdata boar
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -13,6 +13,8 @@
|
||||||
+ .has_pci = 1,
|
+ .has_pci = 1,
|
||||||
+
|
+
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -840,6 +840,59 @@ static struct board_info __initdata boar
|
@@ -840,6 +840,61 @@ static struct board_info __initdata boar
|
||||||
.has_ohci0 = 1,
|
.has_ohci0 = 1,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -14,6 +14,8 @@
|
||||||
+ .has_pci = 1,
|
+ .has_pci = 1,
|
||||||
+
|
+
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -767,6 +767,76 @@ static struct board_info __initdata boar
|
@@ -767,6 +767,78 @@ static struct board_info __initdata boar
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
@ -20,6 +20,8 @@
|
||||||
+ },
|
+ },
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
+ /* it has BP_ENET_EXTERNAL_PHY */
|
+ /* it has BP_ENET_EXTERNAL_PHY */
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -1709,6 +1709,80 @@ static struct board_info __initdata boar
|
@@ -1709,6 +1709,82 @@ static struct board_info __initdata boar
|
||||||
.spis = nb4_spi_devices,
|
.spis = nb4_spi_devices,
|
||||||
.num_spis = ARRAY_SIZE(nb4_spi_devices),
|
.num_spis = ARRAY_SIZE(nb4_spi_devices),
|
||||||
};
|
};
|
||||||
|
@ -21,6 +21,8 @@
|
||||||
+ },
|
+ },
|
||||||
+
|
+
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -215,6 +215,43 @@ static struct board_info __initdata boar
|
@@ -215,6 +215,45 @@ static struct board_info __initdata boar
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
@ -13,6 +13,8 @@
|
||||||
+ .has_enet0 = 1,
|
+ .has_enet0 = 1,
|
||||||
+
|
+
|
||||||
+ .enet0 = {
|
+ .enet0 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -874,6 +874,63 @@ static struct board_info __initdata boar
|
@@ -874,6 +874,65 @@ static struct board_info __initdata boar
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
@ -19,6 +19,8 @@
|
||||||
+ .use_internal_phy = 1,
|
+ .use_internal_phy = 1,
|
||||||
+ },
|
+ },
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -438,6 +438,62 @@ static struct board_info __initdata boar
|
@@ -438,6 +438,64 @@ static struct board_info __initdata boar
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -15,6 +15,8 @@
|
||||||
+ .has_pci = 1,
|
+ .has_pci = 1,
|
||||||
+
|
+
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -494,6 +494,49 @@ static struct board_info __initdata boar
|
@@ -494,6 +494,51 @@ static struct board_info __initdata boar
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -14,6 +14,8 @@
|
||||||
+ .has_pci = 1,
|
+ .has_pci = 1,
|
||||||
+
|
+
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -537,6 +537,67 @@ static struct board_info __initdata boar
|
@@ -537,6 +537,69 @@ static struct board_info __initdata boar
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -13,6 +13,8 @@
|
||||||
+ .has_pci = 1,
|
+ .has_pci = 1,
|
||||||
+
|
+
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -1092,6 +1092,44 @@ static struct board_info __initdata boar
|
@@ -1092,6 +1092,46 @@ static struct board_info __initdata boar
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
@ -19,6 +19,8 @@
|
||||||
+ .use_internal_phy = 1,
|
+ .use_internal_phy = 1,
|
||||||
+ },
|
+ },
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -1337,6 +1337,57 @@ static struct board_info __initdata boar
|
@@ -1337,6 +1337,59 @@ static struct board_info __initdata boar
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -14,6 +14,8 @@
|
||||||
+ .has_pci = 1,
|
+ .has_pci = 1,
|
||||||
+
|
+
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
static struct board_info board;
|
static struct board_info board;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -2264,6 +2271,111 @@ static struct board_info __initdata boar
|
@@ -2264,6 +2271,113 @@ static struct board_info __initdata boar
|
||||||
.num_spis = ARRAY_SIZE(nb4_spi_devices),
|
.num_spis = ARRAY_SIZE(nb4_spi_devices),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -64,6 +64,8 @@
|
||||||
+
|
+
|
||||||
+ .has_enet1 = 1,
|
+ .has_enet1 = 1,
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -2515,6 +2515,71 @@ static struct board_info __initdata boar
|
@@ -2515,6 +2515,73 @@ static struct board_info __initdata boar
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -23,6 +23,8 @@
|
||||||
+ },
|
+ },
|
||||||
+
|
+
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -1013,6 +1013,55 @@ static struct board_info __initdata boar
|
@@ -1013,6 +1013,57 @@ static struct board_info __initdata boar
|
||||||
.has_ehci0 = 1,
|
.has_ehci0 = 1,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -14,6 +14,8 @@
|
||||||
+
|
+
|
||||||
+ .has_enet1 = 1,
|
+ .has_enet1 = 1,
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -738,6 +738,53 @@ static struct board_info __initdata boar
|
@@ -738,6 +738,55 @@ static struct board_info __initdata boar
|
||||||
|
|
||||||
.has_uart0 = 1,
|
.has_uart0 = 1,
|
||||||
};
|
};
|
||||||
|
@ -14,6 +14,8 @@
|
||||||
+ .has_enet0 = 1,
|
+ .has_enet0 = 1,
|
||||||
+
|
+
|
||||||
+ .enet0 = {
|
+ .enet0 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||||
@@ -2923,6 +2923,366 @@ static struct board_info __initdata boar
|
@@ -2923,6 +2923,374 @@ static struct board_info __initdata boar
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -22,6 +22,8 @@
|
||||||
+
|
+
|
||||||
+ .has_enet1 = 1,
|
+ .has_enet1 = 1,
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
@ -112,6 +114,8 @@
|
||||||
+
|
+
|
||||||
+ .has_enet1 = 1,
|
+ .has_enet1 = 1,
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
@ -203,6 +207,8 @@
|
||||||
+
|
+
|
||||||
+ .has_enet1 = 1,
|
+ .has_enet1 = 1,
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
@ -294,6 +300,8 @@
|
||||||
+
|
+
|
||||||
+ .has_enet1 = 1,
|
+ .has_enet1 = 1,
|
||||||
+ .enet1 = {
|
+ .enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
+ .force_speed_100 = 1,
|
+ .force_speed_100 = 1,
|
||||||
+ .force_duplex_full = 1,
|
+ .force_duplex_full = 1,
|
||||||
+ },
|
+ },
|
||||||
|
|
119
target/linux/brcm63xx/patches-3.6/555-boards_probe_switch.patch
Normal file
119
target/linux/brcm63xx/patches-3.6/555-boards_probe_switch.patch
Normal file
|
@ -0,0 +1,119 @@
|
||||||
|
--- linux-3.6.11/arch/mips/bcm63xx/boards/board_bcm963xx.c.orig 2013-01-05 21:18:15.153079713 +0100
|
||||||
|
+++ linux-3.6.11/arch/mips/bcm63xx/boards/board_bcm963xx.c 2013-01-05 21:18:27.899285369 +0100
|
||||||
|
@@ -583,6 +583,8 @@
|
||||||
|
.has_uart0 = 1,
|
||||||
|
.has_enet0 = 1,
|
||||||
|
.enet0 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
|
.force_speed_100 = 1,
|
||||||
|
.force_duplex_full = 1,
|
||||||
|
},
|
||||||
|
@@ -626,6 +628,8 @@
|
||||||
|
.has_uart0 = 1,
|
||||||
|
.has_enet0 = 1,
|
||||||
|
.enet0 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
|
.force_speed_100 = 1,
|
||||||
|
.force_duplex_full = 1,
|
||||||
|
},
|
||||||
|
@@ -857,6 +861,8 @@
|
||||||
|
.use_internal_phy = 1,
|
||||||
|
},
|
||||||
|
.enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
|
.force_speed_100 = 1,
|
||||||
|
.force_duplex_full = 1,
|
||||||
|
},
|
||||||
|
@@ -929,6 +935,8 @@
|
||||||
|
},
|
||||||
|
|
||||||
|
.enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
|
.force_speed_100 = 1,
|
||||||
|
.force_duplex_full = 1,
|
||||||
|
},
|
||||||
|
@@ -1158,6 +1166,8 @@
|
||||||
|
.use_internal_phy = 1,
|
||||||
|
},
|
||||||
|
.enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
|
.force_speed_100 = 1,
|
||||||
|
.force_duplex_full = 1,
|
||||||
|
},
|
||||||
|
@@ -1333,6 +1343,8 @@
|
||||||
|
},
|
||||||
|
|
||||||
|
.enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
|
.force_speed_100 = 1,
|
||||||
|
.force_duplex_full = 1,
|
||||||
|
},
|
||||||
|
@@ -1407,6 +1419,8 @@
|
||||||
|
.use_internal_phy = 1,
|
||||||
|
},
|
||||||
|
.enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
|
.force_speed_100 = 1,
|
||||||
|
.force_duplex_full = 1,
|
||||||
|
},
|
||||||
|
@@ -1428,6 +1442,8 @@
|
||||||
|
.use_internal_phy = 1,
|
||||||
|
},
|
||||||
|
.enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
|
.force_speed_100 = 1,
|
||||||
|
.force_duplex_full = 1,
|
||||||
|
},
|
||||||
|
@@ -1447,6 +1463,8 @@
|
||||||
|
.use_internal_phy = 1,
|
||||||
|
},
|
||||||
|
.enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
|
.force_speed_100 = 1,
|
||||||
|
.force_duplex_full = 1,
|
||||||
|
},
|
||||||
|
@@ -1822,6 +1840,8 @@
|
||||||
|
},
|
||||||
|
|
||||||
|
.enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
|
.force_speed_100 = 1,
|
||||||
|
.force_duplex_full = 1,
|
||||||
|
},
|
||||||
|
@@ -1874,6 +1894,8 @@
|
||||||
|
},
|
||||||
|
|
||||||
|
.enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
|
.force_speed_100 = 1,
|
||||||
|
.force_duplex_full = 1,
|
||||||
|
},
|
||||||
|
@@ -2014,6 +2036,8 @@
|
||||||
|
},
|
||||||
|
|
||||||
|
.enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
|
.force_speed_100 = 1,
|
||||||
|
.force_duplex_full = 1,
|
||||||
|
},
|
||||||
|
@@ -2131,6 +2155,8 @@
|
||||||
|
},
|
||||||
|
|
||||||
|
.enet1 = {
|
||||||
|
+ .has_phy = 1,
|
||||||
|
+ .phy_id = 0,
|
||||||
|
.force_speed_100 = 1,
|
||||||
|
.force_duplex_full = 1,
|
||||||
|
},
|
Loading…
Reference in a new issue