From fac31ee898573026bd36e164c6f67a9014823a92 Mon Sep 17 00:00:00 2001 From: jogo Date: Wed, 23 Jan 2013 10:12:40 +0000 Subject: 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 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35307 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../base-files/etc/uci-defaults/02_network | 78 +++++++++++--- target/linux/brcm63xx/base-files/lib/brcm63xx.sh | 2 +- .../lib/preinit/05_failsafe_config_switch_brcm63xx | 5 - .../lib/preinit/15_set_preinit_interface_brcm63xx | 19 +--- target/linux/brcm63xx/config-3.6 | 5 + .../brcm63xx/patches-3.6/500-board-D4PW.patch | 4 +- .../linux/brcm63xx/patches-3.6/501-board-NB4.patch | 12 ++- .../patches-3.6/502-board-96338W2_E7T.patch | 4 +- .../brcm63xx/patches-3.6/503-board-CPVA642.patch | 4 +- .../patches-3.6/504-board_dsl_274xb_rev_c.patch | 4 +- .../brcm63xx/patches-3.6/507-board-MAGIC.patch | 4 +- .../brcm63xx/patches-3.6/508-board_hw553.patch | 4 +- .../patches-3.6/509-board_rta1320_16m.patch | 4 +- .../brcm63xx/patches-3.6/511-board_V2500V.patch | 4 +- .../brcm63xx/patches-3.6/512-board_BTV2110.patch | 4 +- .../patches-3.6/514-board_ct536_ct5621.patch | 4 +- .../patches-3.6/516-board_96348A-122.patch | 4 +- .../patches-3.6/519_board_CPVA502plus.patch | 4 +- .../brcm63xx/patches-3.6/525-board_96348w3.patch | 4 +- .../brcm63xx/patches-3.6/526-board_CT6373-1.patch | 4 +- .../patches-3.6/527-board_dva-g3810bn-tl-1.patch | 4 +- .../brcm63xx/patches-3.6/529-board_fast2604.patch | 4 +- .../brcm63xx/patches-3.6/553-board_rta770bw.patch | 4 +- .../brcm63xx/patches-3.6/554-board_hw556.patch | 10 +- .../patches-3.6/555-boards_probe_switch.patch | 119 +++++++++++++++++++++ 25 files changed, 260 insertions(+), 58 deletions(-) create mode 100644 target/linux/brcm63xx/patches-3.6/555-boards_probe_switch.patch (limited to 'target/linux/brcm63xx') diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network b/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network index 08b855800..106bf5f86 100755 --- a/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network +++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network @@ -14,40 +14,88 @@ ucidef_set_interface_loopback case "$board_name" in -96328avng |\ -96328A-1241N |\ -96328A-1441N1 |\ -963281TAN |\ -963281T_TEF |\ -96348A-122 |\ +96348W3 |\ 96358-502V |\ -CT6373-1 |\ -AW4339U |\ +SPW500V) + ucidef_set_interface_lan "eth0" + ;; + +96338GW |\ +96338W |\ +96338W2_E7T |\ +96348A-122 |\ +96348W3 |\ CPVA642 |\ CT536_CT5621 |\ +CT6373-1 |\ D-4P-W |\ "F@ST2604" |\ -HW556* |\ -NB6 |\ -SPW303V |\ -SPW500V |\ -V2110 |\ -96348W3) +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) +AW4139 |\ +HW556*) ucidef_set_interface_lan "eth0.1" ucidef_add_switch "eth0" "1" "1" ucidef_add_switch_vlan "eth0" "1" "0 1 2 3 4 5t" ;; +NB4-* |\ DVG3810BN) ucidef_set_interfaces_lan_wan "eth1.1" "eth0" ucidef_add_switch "eth1" "1" "1" 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" ;; diff --git a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh index 999f77517..8116e807d 100755 --- a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh +++ b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh @@ -13,7 +13,7 @@ brcm63xx_has_reset_button="" brcm63xx_detect() { 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" fi diff --git a/target/linux/brcm63xx/base-files/lib/preinit/05_failsafe_config_switch_brcm63xx b/target/linux/brcm63xx/base-files/lib/preinit/05_failsafe_config_switch_brcm63xx index 43da8cc06..e1653e393 100644 --- a/target/linux/brcm63xx/base-files/lib/preinit/05_failsafe_config_switch_brcm63xx +++ b/target/linux/brcm63xx/base-files/lib/preinit/05_failsafe_config_switch_brcm63xx @@ -1,11 +1,6 @@ #!/bin/sh 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 && { ifconfig $pi_ifname $pi_ip netmask $pi_netmask broadcast $pi_broadcast up } diff --git a/target/linux/brcm63xx/base-files/lib/preinit/15_set_preinit_interface_brcm63xx b/target/linux/brcm63xx/base-files/lib/preinit/15_set_preinit_interface_brcm63xx index 9d366fa33..7655fb7d5 100644 --- a/target/linux/brcm63xx/base-files/lib/preinit/15_set_preinit_interface_brcm63xx +++ b/target/linux/brcm63xx/base-files/lib/preinit/15_set_preinit_interface_brcm63xx @@ -16,29 +16,12 @@ preinit_ip_deconfig() { ifconfig $pi_ifname 0.0.0.0 down } 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_ip - - [ -d "/proc/switch/$ifname" ] && { - 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 + port_net_echo $1 } diff --git a/target/linux/brcm63xx/config-3.6 b/target/linux/brcm63xx/config-3.6 index 92e6e3d63..bccf2ae16 100644 --- a/target/linux/brcm63xx/config-3.6 +++ b/target/linux/brcm63xx/config-3.6 @@ -8,6 +8,11 @@ CONFIG_ARCH_SUSPEND_POSSIBLE=y CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y CONFIG_AUDIT=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_CPU_6328=y CONFIG_BCM63XX_CPU_6338=y diff --git a/target/linux/brcm63xx/patches-3.6/500-board-D4PW.patch b/target/linux/brcm63xx/patches-3.6/500-board-D4PW.patch index 18ba06c52..db5db637c 100644 --- a/target/linux/brcm63xx/patches-3.6/500-board-D4PW.patch +++ b/target/linux/brcm63xx/patches-3.6/500-board-D4PW.patch @@ -1,6 +1,6 @@ --- a/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, }; @@ -14,6 +14,8 @@ + .has_uart0 = 1, + + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/501-board-NB4.patch b/target/linux/brcm63xx/patches-3.6/501-board-NB4.patch index 21ed4422e..f59b71f56 100644 --- a/target/linux/brcm63xx/patches-3.6/501-board-NB4.patch +++ b/target/linux/brcm63xx/patches-3.6/501-board-NB4.patch @@ -22,7 +22,7 @@ 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, }; @@ -77,6 +77,8 @@ + }, + + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, @@ -188,6 +190,8 @@ + }, + + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, @@ -299,6 +303,8 @@ + }, + + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, @@ -410,6 +416,8 @@ + }, + + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, @@ -516,6 +524,8 @@ + }, + + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/502-board-96338W2_E7T.patch b/target/linux/brcm63xx/patches-3.6/502-board-96338W2_E7T.patch index cbeb31b16..a1c14f40b 100644 --- a/target/linux/brcm63xx/patches-3.6/502-board-96338W2_E7T.patch +++ b/target/linux/brcm63xx/patches-3.6/502-board-96338W2_E7T.patch @@ -1,6 +1,6 @@ --- a/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, + + .enet0 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/503-board-CPVA642.patch b/target/linux/brcm63xx/patches-3.6/503-board-CPVA642.patch index c20c5bcb5..ad7af8fa1 100644 --- a/target/linux/brcm63xx/patches-3.6/503-board-CPVA642.patch +++ b/target/linux/brcm63xx/patches-3.6/503-board-CPVA642.patch @@ -1,6 +1,6 @@ --- a/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, + + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/504-board_dsl_274xb_rev_c.patch b/target/linux/brcm63xx/patches-3.6/504-board_dsl_274xb_rev_c.patch index de504ec7a..d0c4b034d 100644 --- a/target/linux/brcm63xx/patches-3.6/504-board_dsl_274xb_rev_c.patch +++ b/target/linux/brcm63xx/patches-3.6/504-board_dsl_274xb_rev_c.patch @@ -1,6 +1,6 @@ --- a/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, }; @@ -14,6 +14,8 @@ + .has_pci = 1, + + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/507-board-MAGIC.patch b/target/linux/brcm63xx/patches-3.6/507-board-MAGIC.patch index bbb163cb3..a391b36c2 100644 --- a/target/linux/brcm63xx/patches-3.6/507-board-MAGIC.patch +++ b/target/linux/brcm63xx/patches-3.6/507-board-MAGIC.patch @@ -1,6 +1,6 @@ --- a/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 = { + /* it has BP_ENET_EXTERNAL_PHY */ ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/508-board_hw553.patch b/target/linux/brcm63xx/patches-3.6/508-board_hw553.patch index ff7d1c2c5..8d3b877b0 100644 --- a/target/linux/brcm63xx/patches-3.6/508-board_hw553.patch +++ b/target/linux/brcm63xx/patches-3.6/508-board_hw553.patch @@ -1,6 +1,6 @@ --- a/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, .num_spis = ARRAY_SIZE(nb4_spi_devices), }; @@ -21,6 +21,8 @@ + }, + + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/509-board_rta1320_16m.patch b/target/linux/brcm63xx/patches-3.6/509-board_rta1320_16m.patch index 7bc815e34..71e5d0ebe 100644 --- a/target/linux/brcm63xx/patches-3.6/509-board_rta1320_16m.patch +++ b/target/linux/brcm63xx/patches-3.6/509-board_rta1320_16m.patch @@ -1,6 +1,6 @@ --- a/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, + + .enet0 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/511-board_V2500V.patch b/target/linux/brcm63xx/patches-3.6/511-board_V2500V.patch index 873413801..c739392e7 100644 --- a/target/linux/brcm63xx/patches-3.6/511-board_V2500V.patch +++ b/target/linux/brcm63xx/patches-3.6/511-board_V2500V.patch @@ -1,6 +1,6 @@ --- a/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, + }, + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/512-board_BTV2110.patch b/target/linux/brcm63xx/patches-3.6/512-board_BTV2110.patch index f05385a64..24fa4a642 100644 --- a/target/linux/brcm63xx/patches-3.6/512-board_BTV2110.patch +++ b/target/linux/brcm63xx/patches-3.6/512-board_BTV2110.patch @@ -1,6 +1,6 @@ --- a/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, + + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/514-board_ct536_ct5621.patch b/target/linux/brcm63xx/patches-3.6/514-board_ct536_ct5621.patch index 446c9da4c..e91f2040a 100644 --- a/target/linux/brcm63xx/patches-3.6/514-board_ct536_ct5621.patch +++ b/target/linux/brcm63xx/patches-3.6/514-board_ct536_ct5621.patch @@ -1,6 +1,6 @@ --- a/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, + + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/516-board_96348A-122.patch b/target/linux/brcm63xx/patches-3.6/516-board_96348A-122.patch index fd8ac19c6..19ef500f4 100644 --- a/target/linux/brcm63xx/patches-3.6/516-board_96348A-122.patch +++ b/target/linux/brcm63xx/patches-3.6/516-board_96348A-122.patch @@ -1,6 +1,6 @@ --- a/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, + + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/519_board_CPVA502plus.patch b/target/linux/brcm63xx/patches-3.6/519_board_CPVA502plus.patch index c6237a6d5..e0f52a75c 100644 --- a/target/linux/brcm63xx/patches-3.6/519_board_CPVA502plus.patch +++ b/target/linux/brcm63xx/patches-3.6/519_board_CPVA502plus.patch @@ -1,6 +1,6 @@ --- a/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, + }, + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/525-board_96348w3.patch b/target/linux/brcm63xx/patches-3.6/525-board_96348w3.patch index 2e249f0f9..758045ceb 100644 --- a/target/linux/brcm63xx/patches-3.6/525-board_96348w3.patch +++ b/target/linux/brcm63xx/patches-3.6/525-board_96348w3.patch @@ -1,6 +1,6 @@ --- a/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, + + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/526-board_CT6373-1.patch b/target/linux/brcm63xx/patches-3.6/526-board_CT6373-1.patch index 20ef1e5be..295b80ba9 100644 --- a/target/linux/brcm63xx/patches-3.6/526-board_CT6373-1.patch +++ b/target/linux/brcm63xx/patches-3.6/526-board_CT6373-1.patch @@ -14,7 +14,7 @@ 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), }; @@ -64,6 +64,8 @@ + + .has_enet1 = 1, + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/527-board_dva-g3810bn-tl-1.patch b/target/linux/brcm63xx/patches-3.6/527-board_dva-g3810bn-tl-1.patch index 19ffc13ad..b3b881920 100644 --- a/target/linux/brcm63xx/patches-3.6/527-board_dva-g3810bn-tl-1.patch +++ b/target/linux/brcm63xx/patches-3.6/527-board_dva-g3810bn-tl-1.patch @@ -1,6 +1,6 @@ --- a/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 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/529-board_fast2604.patch b/target/linux/brcm63xx/patches-3.6/529-board_fast2604.patch index c09e07f0e..e04dcd1ef 100644 --- a/target/linux/brcm63xx/patches-3.6/529-board_fast2604.patch +++ b/target/linux/brcm63xx/patches-3.6/529-board_fast2604.patch @@ -1,6 +1,6 @@ --- a/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, }; @@ -14,6 +14,8 @@ + + .has_enet1 = 1, + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/553-board_rta770bw.patch b/target/linux/brcm63xx/patches-3.6/553-board_rta770bw.patch index 9de099767..cd1ee996c 100644 --- a/target/linux/brcm63xx/patches-3.6/553-board_rta770bw.patch +++ b/target/linux/brcm63xx/patches-3.6/553-board_rta770bw.patch @@ -1,6 +1,6 @@ --- a/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, }; @@ -14,6 +14,8 @@ + .has_enet0 = 1, + + .enet0 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/554-board_hw556.patch b/target/linux/brcm63xx/patches-3.6/554-board_hw556.patch index 3d07ca144..69f0539ce 100644 --- a/target/linux/brcm63xx/patches-3.6/554-board_hw556.patch +++ b/target/linux/brcm63xx/patches-3.6/554-board_hw556.patch @@ -1,6 +1,6 @@ --- a/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, + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, @@ -112,6 +114,8 @@ + + .has_enet1 = 1, + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, @@ -203,6 +207,8 @@ + + .has_enet1 = 1, + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, @@ -294,6 +300,8 @@ + + .has_enet1 = 1, + .enet1 = { ++ .has_phy = 1, ++ .phy_id = 0, + .force_speed_100 = 1, + .force_duplex_full = 1, + }, diff --git a/target/linux/brcm63xx/patches-3.6/555-boards_probe_switch.patch b/target/linux/brcm63xx/patches-3.6/555-boards_probe_switch.patch new file mode 100644 index 000000000..5dd1bf460 --- /dev/null +++ b/target/linux/brcm63xx/patches-3.6/555-boards_probe_switch.patch @@ -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, + }, -- cgit v1.2.3