From: cshore Date: Sun, 28 Nov 2010 22:04:26 +0000 (+0000) Subject: bcm63xx: Don't hardcode the switch ethernet interface in preinit. X-Git-Url: https://git.rohieb.name/openwrt.git/commitdiff_plain/74fd46691ef1887156aefc6f0f07a79b249d24ad?hp=2ce35911df2b85275e9e6204365b51e3f4dfb75d bcm63xx: Don't hardcode the switch ethernet interface in preinit. Currently eth1 is hardcoded as the expected interface switches in diagmode. This patch replaces the eth1 with the ifname, and also directly tests if the interface specified by ifname has a switch attached. Signed-off-by: Jonas Gorski git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24186 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- 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 b9be96eda..43da8cc06 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,9 +1,9 @@ #!/bin/sh failsafe_ip() { - [ -d /proc/switch/eth1 ] && [ "$ifname" = "eth1" ] && { - ifconfig eth1 0.0.0.0 down - echo "0 1 2 3 4 ${cpu_port:-5u*}" > /proc/switch/eth1/vlan/0/ports + [ -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 && { 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 6c7a8a858..9d366fa33 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,9 +16,9 @@ preinit_ip_deconfig() { ifconfig $pi_ifname 0.0.0.0 down } fi - [ -d /proc/switch/eth1 ] && [ "$ifname" = "eth1" ] && { - echo 1 >/proc/switch/eth1/reset - echo "0 1 2 3 4 ${cpu_port:-5u*}" > /proc/switch/eth1/vlan/0/ports + [ -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" } } @@ -26,17 +26,17 @@ preinit_ip_deconfig() { preinit_net_echo() { preinit_ip - [ -d /proc/switch/eth1 ] && [ "$ifname" = "eth1" ] && { - echo 1 >/proc/switch/eth1/reset + [ -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/eth1/vlan/0/ports + echo "$port ${cpu_port:-5u*}" > "/proc/switch/$ifname/vlan/0/ports" port_net_echo $1 }; done - echo "0 ${cpu_port:-5u*}" > /proc/switch/eth1/vlan/0/ports + echo "0 ${cpu_port:-5u*}" > "/proc/switch/$ifname/vlan/0/ports" } || port_net_echo $1 }