aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ramips
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2012-08-29 10:37:38 +0000
committerGabor Juhos <juhosg@openwrt.org>2012-08-29 10:37:38 +0000
commite06f1e9ec0bbb4a316b93f8249655d0fad9cc1bc (patch)
tree2a7b14d89d3b6fef5f5c4f91b2db7ea9d6267623 /target/linux/ramips
parentd7bf863ba7aa5ec3fb8ce8468422836af3d4304a (diff)
downloadupstream-e06f1e9ec0bbb4a316b93f8249655d0fad9cc1bc.tar.gz
upstream-e06f1e9ec0bbb4a316b93f8249655d0fad9cc1bc.tar.bz2
upstream-e06f1e9ec0bbb4a316b93f8249655d0fad9cc1bc.zip
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 <ranma+openwrt@tdiedrich.de> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33300 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/ramips')
-rwxr-xr-xtarget/linux/ramips/base-files/etc/uci-defaults/network27
1 files changed, 26 insertions, 1 deletions
diff --git a/target/linux/ramips/base-files/etc/uci-defaults/network b/target/linux/ramips/base-files/etc/uci-defaults/network
index 106a61352c..6542d021ee 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