From 90dab951da0fd3d867eae32599f36d65bdaf5f6d Mon Sep 17 00:00:00 2001 From: juhosg Date: Wed, 29 Aug 2012 10:37:38 +0000 Subject: ramips: Add switch setup to uci network defaults Add switch setup to uci network defaults. The 'lan' attribute is used to decide into which vlan to put the port. Currently 'disable' is never set, but the intention is to use this for devices like the 8devices Carambola, which only has two ports hooked up to the SoC. Signed-off-by: Tobias Diedrich git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33300 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../ramips/base-files/etc/uci-defaults/network | 27 +++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) (limited to 'target/linux/ramips/base-files/etc/uci-defaults/network') diff --git a/target/linux/ramips/base-files/etc/uci-defaults/network b/target/linux/ramips/base-files/etc/uci-defaults/network index 106a61352..6542d021e 100755 --- a/target/linux/ramips/base-files/etc/uci-defaults/network +++ b/target/linux/ramips/base-files/etc/uci-defaults/network @@ -9,6 +9,31 @@ if [ ! -x /usr/sbin/maccalc ]; then return fi +ramips_setup_rt3x5x_vlans() +{ + if [ ! -x /sbin/swconfig ]; then + # legacy default + ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2" + return + fi + local wanports="" + local lanports="" + for port in 5 4 3 2 1 0; do + if [ `swconfig dev rt305x port $port get disable` = "1" ]; then + continue + fi + if [ `swconfig dev rt305x port $port get lan` = "0" ]; then + wanports="$port $wanports" + else + lanports="$port $lanports" + fi + done + ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2" + ucidef_add_switch "rt305x" "1" "1" + ucidef_add_switch_vlan "rt305x" "1" "$lanports 6t" + ucidef_add_switch_vlan "rt305x" "2" "$wanports 6t" +} + ramips_setup_interfaces() { local board="$1" @@ -74,7 +99,7 @@ ramips_setup_interfaces() *) RT3X5X=`cat /proc/cpuinfo | grep RT3.5` if [ -n "${RT3X5X}" ]; then - ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2" + ramips_setup_rt3x5x_vlans else ucidef_set_interfaces_lan_wan "eth0" "eth1" fi -- cgit v1.2.3