1#!/bin/sh
2#
3# Copyright (C) 2013 OpenWrt.org
4#
5
6SWITCH_NAME_CHANGED=
7
8do_change_switch_name() {
9	local config="$1"
10	local option=$2
11	local oldname=$3
12	local newname=$4
13	local val
14
15	config_get val "$config" $option
16	[ "$val" != "$oldname" ] && return 0
17
18	uci_set network "$config" $option $newname
19	SWITCH_NAME_CHANGED=1
20
21	return 0
22}
23
24migrate_switch_name() {
25	local oldname=$1
26	local newname=$2
27
28	. /lib/functions.sh
29
30	config_load network
31
32	logger -t migrate-switchX "Updating switch names in network configuration"
33
34	config_foreach do_change_switch_name switch name $oldname $newname
35	config_foreach do_change_switch_name switch_vlan device $oldname $newname
36
37	[ "$SWITCH_NAME_CHANGED" = "1" ] && {
38		logger -t migrate-switchX "Switch names updated, saving network configuration"
39		uci commit network
40	}
41}
42
43. /lib/ar71xx.sh
44
45board=$(ar71xx_board_name)
46
47case "$board" in
48dir-825-c1|\
49wzr-hp-g300nh2|\
50pb92|\
51ap113|\
52tl-wdr4300|\
53tl-wr1041n-v2|\
54wrt160nl|\
55ap121|\
56ap121-mini|\
57ap96|\
58airrouter|\
59dir-600-a1|\
60dir-615-c1|\
61dir-615-e1|\
62dir-615-e4|\
63ja76pf|\
64mr-12|\
65mr-16|\
66rb-750|\
67rb-751|\
68tew-632brp|\
69tew-712br|\
70tl-mr3220|\
71tl-mr3220-v2 |\
72tl-mr3420|\
73tl-wr741nd|\
74tl-wr741nd-v4|\
75tl-wr841n-v7|\
76whr-g301n|\
77whr-hp-g300n|\
78whr-hp-gn|\
79wzr-hp-ag300h|\
80wzr-hp-g450h|\
81ew-dorin|\
82ew-dorin-router)
83	migrate_switch_name "eth0" "switch0"
84	;;
85
86el-m150|\
87rb-450)
88	migrate_switch_name "eth1" "switch0"
89	;;
90
91db120 |\
92rb-2011l | \
93rb-2011uas-2hnd)
94	migrate_switch_name "eth0" "switch0"
95	migrate_switch_name "eth1" "switch1"
96	;;
97
98dir-825-b1|\
99tew-673gru|\
100nbg460n_550n_550nh)
101	migrate_switch_name "rtl8366s" "switch0"
102	;;
103
104tl-wr1043nd)
105	migrate_switch_name "rtl8366rb" "switch0"
106	;;
107
108esac
109
110exit 0
111