Răsfoiți Sursa

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 <[email protected]>

SVN-Revision: 24186
Daniel Dickinson 15 ani în urmă
părinte
comite
fec30c8c80

+ 3 - 3
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 && {

+ 7 - 7
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
 }