From fec30c8c80c9c01b8b37332beb8639b2806d9c1c Mon Sep 17 00:00:00 2001 From: Daniel Dickinson Date: Sun, 28 Nov 2010 22:04:26 +0000 Subject: [PATCH] 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 SVN-Revision: 24186 --- .../lib/preinit/05_failsafe_config_switch_brcm63xx | 6 +++--- .../lib/preinit/15_set_preinit_interface_brcm63xx | 14 +++++++------- 2 files changed, 10 insertions(+), 10 deletions(-) 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 b9be96eda6..43da8cc068 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 6c7a8a8581..9d366fa339 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 }