Initial commit

This commit is contained in:
domenico
2025-06-24 15:51:28 +02:00
commit 22031d9dab
6862 changed files with 1462554 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,633 @@
#!/bin/sh
#
# Copyright (C) 2011-2015 OpenWrt.org
#
. /lib/functions/system.sh
. /lib/functions/uci-defaults.sh
ar71xx_setup_interfaces()
{
local board="$1"
case "$board" in
airgatewaypro)
ucidef_add_switch "switch0" \
"0@eth0" "4:lan" "5:wan"
;;
airrouter|\
ap121|\
ap121-mini|\
ap96|\
dir-600-a1|\
dir-615-c1|\
dir-615-e1|\
dir-615-e4|\
hiwifi-hc6361|\
ja76pf|\
mc-mac1200r|\
minibox-v1|\
mynet-n600|\
oolite-v1|\
oolite-v5.2|\
oolite-v5.2-dev|\
qihoo-c301|\
r602n|\
rb-750|\
rb-751|\
som9331|\
t830|\
tew-632brp|\
tew-712br|\
tew-732br|\
tl-mr3220|\
tl-mr3220-v2|\
tl-mr3420|\
tl-wdr3320-v2|\
tl-wdr3500|\
tl-wr740n-v6|\
tl-wr741nd-v4|\
tl-wr840n-v2|\
tl-wr840n-v3|\
tl-wr841n-v11|\
tl-wr841n-v9|\
tl-wr842n-v3|\
whr-g301n|\
whr-hp-g300n|\
whr-hp-gn|\
wzr-hp-ag300h|\
zbt-we1526)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
ucidef_add_switch "switch0" \
"0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
;;
alfa-ap120c|\
all0305|\
antminer-s1|\
antminer-s3|\
antrouter-r1|\
ap121f|\
ap91-5g|\
aw-nr580|\
bullet-m|\
c-55|\
cap4200ag|\
cf-e380ac-v1|\
cf-e380ac-v2|\
cpe210-v2|\
dr342|\
eap120|\
eap300v2|\
eap7660d|\
el-mini|\
fritz300e|\
fritz450e|\
gl-usb150|\
hiveap-121|\
koala|\
lbe-m5|\
loco-m-xw|\
mr12|\
mr16|\
mr1750|\
mr1750v2|\
mr18|\
mr600|\
mr600v2|\
mr900|\
mr900v2|\
mynet-rext|\
pqi-air-pen|\
rb-411|\
rb-411u|\
rb-911-2hn|\
rb-911-5hn|\
rb-911g-2hpnd|\
rb-911g-5hpacd|\
rb-911g-5hpnd|\
rb-912uag-2hpnd|\
rb-912uag-5hpnd|\
rb-921gs-5hpacd-r2|\
rb-lhg-5nd|\
rb-mapl-2nd|\
rb-sxt2n|\
rb-sxt5n|\
rb-wap-2nd|\
rb-wapg-5hact2hnd|\
re355|\
re450|\
rocket-m-xw|\
sc300m |\
tl-mr10u|\
tl-mr11u|\
tl-mr12u|\
tl-mr13u|\
tl-mr3020|\
tl-mr3040|\
tl-mr3040-v2|\
tl-wa701nd-v2|\
tl-wa7210n-v2|\
tl-wa750re|\
tl-wa801nd-v2|\
tl-wa830re-v2|\
tl-wa850re|\
tl-wa850re-v2|\
tl-wa855re-v1|\
tl-wa901nd|\
tl-wa901nd-v2|\
tl-wa901nd-v3|\
tl-wa901nd-v4|\
tl-wa901nd-v5|\
tl-wr703n|\
tl-wr802n-v1|\
tl-wr802n-v2|\
tl-wr902ac-v1|\
ts-d084|\
tube2h|\
unifi|\
unifiac-lite|\
wi2a-ac200i|\
wifi-pineapple-nano|\
wndap360|\
wp543)
ucidef_set_interface_lan "eth0"
;;
a40|\
a60|\
alfa-ap96|\
alfa-nx|\
dr344|\
gl-ar150|\
gl-ar300m|\
gl-domino|\
gl-inet|\
gl-mifi|\
jwap003|\
om2p-hsv4|\
om2pv4|\
pb42|\
pb44|\
rb-951ui-2hnd|\
rb-952ui-5ac2nd|\
routerstation|\
tl-wr710n|\
tl-wr720n-v3|\
tl-wr810n|\
tl-wr810n-v2|\
wpe72|\
wrtnode2q)
ucidef_set_interfaces_lan_wan "eth1" "eth0"
;;
all0258n|\
all0315n|\
dlan-hotspot|\
dlan-pro-500-wp|\
ens202ext|\
ja76pf2|\
rocket-m-ti|\
ubnt-unifi-outdoor)
ucidef_set_interface_lan "eth0 eth1"
;;
wzr-hp-g300nh2)
ucidef_add_switch "switch0" \
"0@eth0" "1:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "2:wan"
;;
ap132|\
ap136|\
ap152|\
rb-750gl|\
rb-751g|\
rb-951g-2hnd|\
rb-962uigs-5hact2hnt|\
wlr8100|\
wzr-hp-g450h)
ucidef_add_switch "switch0" \
"0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
;;
ap135-020|\
ap136-020|\
bhr-4grv2|\
tew-823dru|\
tl-wr1043nd-v2|\
wzr-450hp2)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0.2"
ucidef_add_switch "switch0" \
"0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
;;
ap136-010|\
ap147-010|\
nbg6616|\
nbg6716)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1.2"
ucidef_add_switch "switch0" \
"0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
;;
ap143|\
rb-433|\
rb-433u)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "5@eth1"
;;
archer-c5|\
archer-c7|\
tl-wdr4900-v2)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0.2"
ucidef_add_switch "switch0" \
"0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
;;
archer-c25-v1|\
archer-c60-v1|\
archer-c60-v2|\
rb-750-r2|\
rb-750p-pbr2|\
rb-750up-r2|\
rb-951ui-2nd)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
ucidef_add_switch "switch0" \
"0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
;;
archer-c58-v1|\
archer-c59-v1|\
fritz4020|\
rb-450g)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
ucidef_add_switch "switch0" \
"0@eth1" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
;;
arduino-yun|\
dir-505-a1|\
tl-wa801nd-v3)
ucidef_set_interface_lan "eth1"
;;
bsb)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
ucidef_add_switch "switch0" \
"0@eth1" "1:lan" "3:lan"
;;
c-60)
ucidef_add_switch "switch0" \
"0@eth0" "3:wan" "4:lan"
;;
cap324|\
rme-eg200)
ucidef_set_interface_lan "eth0" "dhcp"
;;
cf-e375ac|\
rb-map-2nd)
ucidef_add_switch "switch0" \
"0@eth0" "1:wan" "2:lan"
;;
cf-e385ac)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1.2"
ucidef_add_switch "switch0" \
"0@eth0" "2:lan" "1:wan" "6@eth1"
;;
cpe210|\
cpe510|\
wbs210|\
wbs510)
ucidef_add_switch "switch0" \
"0@eth0" "5:lan" "4:wan"
;;
cr3000)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
ucidef_add_switch "switch0" \
"0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
;;
cr5000|\
dgl-5500-a1|\
dhp-1565-a1|\
dir-825-c1|\
dir-835-a1|\
esr900|\
mynet-n750|\
sr3200|\
tl-wr1043n-v5)
ucidef_add_switch "switch0" \
"0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
;;
dap-2695-a1)
ucidef_add_switch "switch0" "0@eth0" "2:lan" "3:wan" "6@eth1"
;;
rb-941-2nd)
ucidef_add_switch "switch0" \
"0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:wan:1"
;;
db120|\
rb-2011il|\
rb-2011ils|\
rb-2011l|\
rb-2011uas|\
rb-2011uas-2hnd|\
rb-2011uias|\
rb-2011uias-2hnd)
case "$board" in
rb-2011ils|\
rb-2011uas*|\
rb-2011uias|\
rb-2011uias-2hnd)
ucidef_add_switch "switch0" \
"0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan" "6:sfp"
;;
*)
ucidef_add_switch "switch0" \
"0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
;;
esac
ucidef_add_switch "switch1" \
"0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
;;
dir-615-i1|\
omy-g1|\
r6100|\
smart-300|\
tl-wdr6500-v2|\
tl-wr940n-v4|\
tl-wr940n-v6|\
tl-wr941nd-v6|\
wnr1000-v2|\
wnr2000-v4|\
wnr2200|\
wnr612-v2|\
wpn824n)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
ucidef_add_switch "switch0" \
"0@eth1" "1:lan:1" "2:lan:2" "3:lan:3" "4:lan:4"
;;
tl-mr6400)
ucidef_set_interfaces_lan_wan "eth0.1 eth1" "usb0"
ucidef_add_switch "switch0" \
"0@eth0" "1:lan" "2:lan" "3:lan"
;;
dir-825-b1|\
nbg460n_550n_550nh|\
tew-673gru|\
wzr-hp-g300nh)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
;;
dlan-pro-1200-ac)
ucidef_set_interface_lan "eth0"
ucidef_add_switch "switch0" \
"0u@eth0" "2:lan" "3:lan" "4:lan"
ucidef_add_switch_attr "switch0" "enable" "false"
;;
e1700ac-v2|\
e750g-v8|\
unifiac-pro|\
xd3200)
ucidef_add_switch "switch0" \
"0@eth0" "2:lan" "3:wan"
;;
e558-v2)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0.2"
ucidef_add_switch "switch0" \
"0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
;;
ebr-2310-c1)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
ucidef_add_switch "switch0" \
"0@eth0" "1:lan:1" "2:lan:2" "3:lan:3" "4:lan:4"
;;
el-m150)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "3@eth1"
;;
dir-869-a1|\
epg5000|\
esr1750|\
tl-wr1043nd-v4|\
wndr3700v4|\
wndr4300)
ucidef_add_switch "switch0" \
"0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
;;
ew-balin)
ucidef_set_interface_raw "usb2" "usb0" "static"
ucidef_add_switch "switch0" \
"0@eth0" "5:lan:4" "4:lan:5" "3:wan"
;;
ew-dorin)
ucidef_add_switch "switch0" \
"0@eth0" "1:lan" "2:lan" "3:wan"
;;
ew-dorin-router)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
ucidef_add_switch "switch0" \
"0@eth0" "2:lan" "3:lan"
;;
dw33d|\
f9k1115v2)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0.2"
ucidef_add_switch "switch0" \
"2:lan" "3:lan" "4:lan" "5:lan" "6@eth1" "0@eth0" "1:wan"
;;
gl-ar300|\
wnr2000-v3)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
ucidef_add_switch "switch0" \
"0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
;;
gl-ar750|\
rb-435g)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
ucidef_add_switch "switch0" \
"0@eth1" "1:lan" "2:lan"
;;
jwap230)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1.2"
ucidef_add_switch "switch0" \
"0@eth0" "1:lan" "5:wan" "6@eth1"
;;
nanostation-m-xw)
ucidef_add_switch "switch0" \
"0@eth0" "5:lan" "1:wan"
;;
onion-omega)
ucidef_set_interface_lan "wlan0"
;;
rb-450)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
ucidef_add_switch "switch0" \
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5@eth1"
;;
routerstation-pro)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
ucidef_add_switch "switch0" \
"0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
;;
rb-493g)
ucidef_set_interfaces_lan_wan "eth0.1 eth1.1" "eth1.2"
ucidef_add_switch "switch0" \
"0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
ucidef_add_switch "switch1" \
"0@eth1" "1:lan:4" "2:lan:1" "3:lan:3" "4:lan:2" "5:wan"
;;
rut900)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
ucidef_add_switch "switch0" \
"0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
;;
tellstick-znet-lite)
ucidef_set_interface_wan "eth0"
ucidef_set_interface_raw "wlan" "wlan0" "dhcp"
;;
tl-mr3420-v2|\
tl-wr841n-v8|\
tl-wr842n-v2|\
tl-wr941nd-v5|\
tl-wr942n-v1)
ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
ucidef_add_switch "switch0" \
"0@eth1" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
;;
archer-c7-v4|\
archer-c7-v5|\
tl-wdr4300|\
tl-wr1041n-v2)
ucidef_add_switch "switch0" \
"0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
;;
tl-wpa8630)
ucidef_add_switch "switch0" \
"0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
;;
tl-wr1043nd)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
;;
tl-wr2543n)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
;;
tl-wr841n-v1|\
tl-wr941nd)
ucidef_set_interface_raw "eth" "eth0"
ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
;;
tl-wr741nd|\
tl-wr841n-v7)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
ucidef_add_switch "switch0" \
"0@eth0" "1:lan:1" "2:lan:2" "3:lan:3" "4:lan:4"
;;
uap-pro|\
wpj342)
ucidef_add_switch "switch0" \
"0@eth0" "1:lan" "2:wan"
;;
wndr3700|\
wndr3700v2|\
wndr3800|\
wndr3800ch)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
ucidef_add_switch "switch0" \
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5@eth0"
ucidef_add_switch_attr "switch0" "blinkrate" 2
ucidef_add_switch_port_attr "switch0" 1 led 6
ucidef_add_switch_port_attr "switch0" 2 led 9
ucidef_add_switch_port_attr "switch0" 5 led 2
;;
wpj344)
ucidef_add_switch "switch0" \
"0@eth0" "3:lan" "2:wan"
;;
wpj558)
ucidef_add_switch "switch0" \
"5:lan" "1:wan" "6@eth0"
;;
wpj563)
ucidef_add_switch "switch0" \
"0@eth0" "2:lan" "3:wan"
;;
wrt160nl)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
ucidef_add_switch "switch0" \
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4@eth0"
;;
wzr-hp-g450h)
ucidef_add_switch "switch0" \
"0@eth0" "2:lan:1 3:lan:2 4:lan:3 5:lan:4" "1:wan"
;;
z1)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
ucidef_add_switch "switch0" \
"0@eth0" "1:lan:1" "2:lan:2" "3:lan:3" "4:lan:4" "5:wan"
;;
*)
ucidef_set_interfaces_lan_wan "eth0" "eth1"
;;
esac
}
ar71xx_setup_macs()
{
local board="$1"
local lan_mac=""
local wan_mac=""
case $board in
archer-c7-v4)
base_mac=$(mtd_get_mac_binary config 8)
wan_mac=$(macaddr_add "$base_mac" 1)
;;
archer-c7-v5)
base_mac=$(mtd_get_mac_binary info 8)
wan_mac=$(macaddr_add "$base_mac" 1)
;;
dgl-5500-a1|\
dir-825-c1)
wan_mac=$(mtd_get_mac_ascii nvram "wan_mac")
;;
dhp-1565-a1|\
dir-835-a1|\
wndr3700v4|\
wndr4300)
lan_mac=$(mtd_get_mac_binary caldata 0)
wan_mac=$(mtd_get_mac_binary caldata 6)
;;
dir-869-a1|\
mynet-n750)
wan_mac=$(mtd_get_mac_ascii devdata "wanmac")
;;
esr900)
wan_mac=$(mtd_get_mac_ascii u-boot-env "wanaddr")
;;
fritz300e)
lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
;;
tl-wdr4300)
base_mac=$(mtd_get_mac_binary u-boot 0x1fc00)
wan_mac=$(macaddr_add "$base_mac" 1)
;;
tl-wr1043n-v5|\
tl-wr1043nd-v4)
lan_mac=$(mtd_get_mac_binary product-info 8)
wan_mac=$(macaddr_add "$lan_mac" 1)
;;
wlr8100)
lan_mac=$(mtd_get_mac_ascii u-boot-env "ethaddr")
wan_mac=$(mtd_get_mac_ascii u-boot-env "wanaddr")
;;
wpj344|\
wpj558)
wan_mac=$(mtd_get_mac_binary u-boot 0x2e018)
;;
esac
[ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
[ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
}
board_config_update
board=$(board_name)
ar71xx_setup_interfaces $board
ar71xx_setup_macs $board
board_config_flush
exit 0

View File

@@ -0,0 +1,42 @@
#!/bin/sh
#
# Copyright (C) 2015 OpenWrt.org
#
. /lib/functions/uci-defaults.sh
board_config_update
board=$(board_name)
case "$board" in
cpe210|\
cpe510|\
wbs210|\
wbs510)
ucidef_add_gpio_switch "poe_passthrough" "PoE Passthrough" "20"
;;
nanostation-m)
ucidef_add_gpio_switch "poe_passthrough" "PoE Passthrough" "8"
;;
nanostation-m-xw)
ucidef_add_gpio_switch "poe_passthrough" "PoE Passthrough" "2"
;;
rb-912uag-2hpnd|\
rb-912uag-5hpnd)
ucidef_add_gpio_switch "usb_power_switch" "USB Power Switch" "61" "1"
;;
rb-750up-r2|\
rb-951ui-2nd|\
rb-952ui-5ac2nd)
ucidef_add_gpio_switch "usb_power_switch" "USB Power Switch" "45" "1"
ucidef_add_gpio_switch "poe_passthrough" "PoE Passthrough" "14"
;;
rb-750p-pbr2)
ucidef_add_gpio_switch "poe_passthrough" "PoE Passthrough" "14"
;;
esac
board_config_flush
exit 0

View File

@@ -0,0 +1,589 @@
#!/bin/sh
# Copyright (C) 2009-2013 OpenWrt.org
. /lib/functions.sh
. /lib/functions/leds.sh
get_status_led() {
local board=$(board_name)
case $board in
a40)
status_led="a40:green:status"
;;
a60)
status_led="a60:green:status"
;;
alfa-nx)
status_led="alfa:green:led_8"
;;
all0305)
status_led="eap7660d:green:ds4"
;;
antminer-s1|\
antminer-s3|\
antminer-r1|\
e1700ac-v2|\
e558-v2|\
e600gac-v2|\
e750a-v4|\
e750g-v8|\
eap120|\
minibox-v1|\
packet-squirrel|\
som9331|\
sr3200|\
tl-wr802n-v2|\
xd3200)
status_led="$board:green:system"
;;
ap121f)
status_led="$board:green:vpn"
;;
ap132|\
ap531b0|\
cpe505n|\
db120|\
dr342|\
dr344|\
rut900|\
tew-632brp|\
tl-wr942n-v1|\
wpj344|\
zbt-we1526)
status_led="$board:green:status"
;;
ap136-010|\
ap136-020)
status_led="ap136:green:status"
;;
ap147-010)
status_led="ap147:green:status"
;;
ap135-020)
status_led="ap135:green:status"
;;
archer-c25-v1|\
archer-c58-v1|\
archer-c59-v1|\
archer-c60-v1|\
archer-c60-v2|\
archer-c7-v4|\
archer-c7-v5|\
fritz300e|\
fritz4020|\
fritz450e|\
gl-usb150|\
mr12|\
mr16|\
nbg6616|\
sc1750|\
sc450|\
tl-wpa8630|\
tl-wr902ac-v1)
status_led="$board:green:power"
;;
tl-mr10u|\
tl-mr12u|\
tl-mr13u|\
tl-wdr4300|\
tl-wdr4900-v2|\
tl-wr703n|\
tl-wr710n|\
tl-wr720n-v3|\
tl-wr802n-v1|\
tl-wr810n|\
tl-wr810n-v2|\
tl-wr940n-v4|\
tl-wr941nd-v6)
status_led="tp-link:blue:system"
;;
ap90q|\
cpe830|\
cpe870|\
gl-ar300m|\
gl-inet|\
gl-mifi)
status_led="$board:green:lan"
;;
ap91-5g|\
n5q)
status_led="$board:green:signal4"
;;
ap96)
status_led="$board:green:led2"
;;
aw-nr580)
status_led="$board:green:ready"
;;
bhr-4grv2|\
wzr-hp-ag300h|\
wzr-hp-g300nh2)
status_led="buffalo:red:diag"
;;
bsb)
status_led="$board:red:sys"
;;
bullet-m|\
loco-m-xw|\
nano-m|\
nanostation-m|\
nanostation-m-xw|\
rocket-m|\
rocket-m-xw)
status_led="ubnt:green:link4"
;;
bxu2000n-2-a1)
status_led="bhu:green:status"
;;
cap324)
status_led="pcs:green:power"
;;
c-55|\
c-60)
status_led="$board:green:pwr"
;;
cap4200ag)
status_led="senao:green:pwr"
;;
cf-e316n-v2|\
cf-e520n|\
cf-e530n)
status_led="$board:blue:wan"
;;
cf-e320n-v2)
status_led="$board:blue:wlan"
;;
cf-e375ac|\
cf-e380ac-v1|\
cf-e380ac-v2|\
cf-e385ac)
status_led="$board:blue:wlan2g"
;;
cpe510)
status_led="tp-link:green:link4"
;;
cr3000|\
cr5000)
status_led="pcs:amber:power"
;;
dap-1330-a1|\
dgl-5500-a1|\
dhp-1565-a1|\
dir-505-a1|\
dir-600-a1|\
dir-615-e1|\
dir-615-i1|\
dir-615-e4)
status_led="d-link:green:power"
;;
dir-615-c1)
status_led="d-link:green:status"
;;
dir-825-b1)
status_led="d-link:orange:power"
;;
dir-825-c1|\
dir-835-a1)
status_led="d-link:amber:power"
;;
dir-869-a1)
status_led="d-link:white:status"
;;
dlan-hotspot)
status_led="devolo:green:wifi"
;;
dlan-pro-500-wp)
status_led="devolo:green:wlan-2g"
;;
dlan-pro-1200-ac)
status_led="devolo:status:wlan"
;;
dr531)
status_led="$board:green:sig4"
;;
dragino2|\
oolite-v1)
status_led="$board:red:system"
;;
dw33d|\
r36a)
status_led="$board:blue:status"
;;
e600g-v2|\
oolite-v5.2-dev|\
ts-d084|\
wifi-pineapple-nano)
status_led="$board:blue:system"
;;
eap300v2)
status_led="engenius:blue:power"
;;
ens202ext|\
esr900)
status_led="engenius:amber:power"
;;
eap7660d)
status_led="$board:green:ds4"
;;
el-m150|\
el-mini)
status_led="easylink:green:system"
;;
ew-balin)
status_led="balin:green:status"
;;
ew-dorin|\
ew-dorin-router)
status_led="dorin:green:status"
;;
f9k1115v2)
status_led="belkin:blue:status"
;;
epg5000|\
esr1750)
status_led="$board:amber:power"
;;
gl-ar750|\
hiveap-121|\
nbg6716|\
wam250)
status_led="$board:white:power"
;;
hiwifi-hc6361)
status_led="hiwifi:blue:system"
;;
hornet-ub|\
hornet-ub-x2)
status_led="alfa:blue:wps"
;;
ja76pf|\
ja76pf2)
status_led="jjplus:green:led1"
;;
jwap230)
status_led="$board:green:led1"
;;
koala)
status_led="$board:blue:sys"
;;
lan-turtle)
status_led="$board:orange:system"
;;
lbe-m5)
status_led="ubnt:green:sys"
;;
ls-sr71)
status_led="ubnt:green:d22"
;;
mc-mac1200r)
status_led="mercury:green:system"
;;
mr18|\
z1)
status_led="$board:green:tricolor0"
;;
mr600)
status_led="$board:orange:power"
;;
mr600v2)
status_led="mr600:blue:power"
;;
mr1750|\
mr1750v2)
status_led="mr1750:blue:power"
;;
mr900|\
mr900v2)
status_led="mr900:blue:power"
;;
mynet-n600|\
mynet-n750|\
mynet-rext)
status_led="wd:blue:power"
;;
mzk-w04nu|\
mzk-w300nh)
status_led="planex:green:status"
;;
nbg460n_550n_550nh)
status_led="nbg460n:green:power"
;;
om2p|\
om2p-hs|\
om2p-hsv2|\
om2p-hsv3|\
om2p-hsv4|\
om2p-lc|\
om2pv2|\
om2pv4)
status_led="om2p:blue:power"
;;
om5p|\
om5p-an)
status_led="om5p:blue:power"
;;
om5p-ac|\
om5p-acv2)
status_led="om5pac:blue:power"
;;
omy-g1)
status_led="omy:green:wlan"
;;
omy-x1)
status_led="omy:green:power"
;;
onion-omega)
status_led="onion:amber:system"
;;
pb44)
status_led="$board:amber:jump1"
;;
r602n)
status_led="$board:green:wan"
;;
rb-2011il|\
rb-2011ils|\
rb-2011l|\
rb-2011uas|\
rb-2011uas-2hnd)
status_led="rb:green:usr"
;;
rb-411|\
rb-411u|\
rb-433|\
rb-433u|\
rb-450|\
rb-450g|\
rb-493)
status_led="rb4xx:yellow:user"
;;
rb-750)
status_led="rb750:green:act"
;;
rb-750-r2|\
rb-750p-pbr2|\
rb-750up-r2|\
rb-911-2hn|\
rb-911-5hn|\
rb-911g-2hpnd|\
rb-911g-5hpacd|\
rb-911g-5hpnd|\
rb-941-2nd|\
rb-951ui-2nd|\
rb-952ui-5ac2nd|\
rb-962uigs-5hact2hnt|\
rb-lhg-5nd|\
rb-map-2nd|\
rb-mapl-2nd|\
rb-wap-2nd)
status_led="rb:green:user"
;;
rb-951ui-2hnd)
status_led="rb:green:act"
;;
rb-912uag-2hpnd|\
rb-912uag-5hpnd|\
rb-sxt2n|\
rb-sxt5n|\
rb-wapg-5hact2hnd)
status_led="rb:green:power"
;;
re355|\
re450|\
sc300m)
status_led="$board:blue:power"
;;
rocket-m-ti)
status_led="ubnt:green:link6"
;;
routerstation|\
routerstation-pro)
status_led="ubnt:green:rf"
;;
rw2458n)
status_led="$board:green:d3"
;;
smart-300)
status_led="nc-link:green:system"
;;
qihoo-c301)
status_led="qihoo:green:status"
;;
t830)
status_led="$board:green:usb"
;;
tellstick-znet-lite)
status_led="tellstick:white:system"
;;
tew-673gru)
status_led="trendnet:blue:wps"
;;
tew-712br|\
tew-732br|\
tew-823dru)
status_led="trendnet:green:power"
;;
tl-mr3020|\
tl-wr2543n)
status_led="tp-link:green:wps"
;;
tl-wa750re)
status_led="tp-link:orange:re"
;;
tl-wa850re|\
tl-wa850re-v2)
status_led="tp-link:blue:re"
;;
tl-wa855re-v1|\
tl-wa860re)
status_led="tp-link:green:power"
;;
tl-mr6400)
status_led="tp-link:white:power"
;;
archer-c5|\
archer-c7|\
tl-mr3220|\
tl-mr3220-v2|\
tl-mr3420|\
tl-mr3420-v2|\
tl-wa701nd-v2|\
tl-wa801nd-v2|\
tl-wa801nd-v3|\
tl-wa830re-v2|\
tl-wa901nd|\
tl-wa901nd-v2|\
tl-wa901nd-v3|\
tl-wa901nd-v4|\
tl-wa901nd-v5|\
tl-wdr3320-v2|\
tl-wdr3500|\
tl-wr1041n-v2|\
tl-wr1043n-v5|\
tl-wr1043nd|\
tl-wr1043nd-v2|\
tl-wr1043nd-v4|\
tl-wr740n-v6|\
tl-wr741nd|\
tl-wr741nd-v4|\
tl-wr840n-v2|\
tl-wr840n-v3|\
tl-wr841n-v1|\
tl-wr841n-v7|\
tl-wr841n-v8|\
tl-wr841n-v11|\
tl-wr842n-v2|\
tl-wr842n-v3|\
tl-wr941nd|\
tl-wr941nd-v5)
status_led="tp-link:green:system"
;;
tl-wr841n-v9)
status_led="tp-link:green:qss"
;;
tl-wr940n-v6)
status_led="tp-link:orange:diag"
;;
tl-wdr6500-v2)
status_led="tp-link:white:system"
;;
tube2h)
status_led="alfa:green:signal4"
;;
unifi)
status_led="ubnt:green:dome"
;;
uap-pro|\
unifiac-lite|\
unifiac-pro)
status_led="ubnt:white:dome"
;;
unifi-outdoor-plus)
status_led="ubnt:white:front"
;;
airgateway|\
airgatewaypro)
status_led="ubnt:white:status"
;;
wi2a-ac200i)
status_led="nokia:green:ctrl"
;;
whr-g301n|\
whr-hp-g300n|\
whr-hp-gn|\
wzr-hp-g300nh)
status_led="buffalo:green:router"
;;
wlae-ag300n)
status_led="buffalo:green:status"
;;
r6100|\
wndap360|\
wndr3700|\
wndr3700v4|\
wndr4300|\
wnr2000|\
wnr2000-v3|\
wnr2200|\
wnr612-v2|\
wnr1000-v2|\
wpn824n)
status_led="netgear:green:power"
;;
wp543)
status_led="$board:green:diag"
;;
wpj342|\
wpj531|\
wpj558)
status_led="$board:green:sig3"
;;
wpj563)
status_led="$board:green:sig1"
;;
wrt160nl|\
wrt400n)
status_led="$board:blue:wps"
;;
zcn-1523h-2|\
zcn-1523h-5)
status_led="zcn-1523h:amber:init"
;;
wlr8100)
status_led="sitecom:amber:status"
;;
esac
}
set_state() {
get_status_led
case "$1" in
preinit)
status_led_blink_preinit
;;
failsafe)
status_led_blink_failsafe
;;
preinit_regular)
status_led_blink_preinit_regular
;;
done)
status_led_on
case $(board_name) in
gl-ar300m|\
gl-ar750)
fw_printenv lc >/dev/null 2>&1 && fw_setenv "bootcount" 0
;;
qihoo-c301)
local n=$(fw_printenv activeregion | cut -d = -f 2)
fw_setenv "image${n}trynum" 0
;;
wi2a-ac200i)
fw_setenv PKRstCnt 0
;;
esac
;;
esac
}

View File

@@ -0,0 +1,178 @@
#!/bin/sh
[ -e /lib/firmware/$FIRMWARE ] && exit 0
. /lib/functions.sh
. /lib/functions/system.sh
ath9k_eeprom_die() {
echo "ath9k eeprom: " "$*"
exit 1
}
ath9k_eeprom_extract() {
local part=$1
local offset=$2
local count=$3
local mtd
mtd=$(find_mtd_chardev $part)
[ -n "$mtd" ] || \
ath9k_eeprom_die "no mtd device found for partition $part"
dd if=$mtd of=/lib/firmware/$FIRMWARE bs=1 skip=$offset count=$count 2>/dev/null || \
ath9k_eeprom_die "failed to extract from $mtd"
}
ath9k_ubi_eeprom_extract() {
local part=$1
local offset=$2
local count=$3
local ubidev=$(nand_find_ubi $CI_UBIPART)
local ubi
ubi=$(nand_find_volume $ubidev $part)
[ -n "$ubi" ] || \
ath9k_eeprom_die "no UBI volume found for $part"
dd if=/dev/$ubi of=/lib/firmware/$FIRMWARE bs=1 skip=$offset count=$count 2>/dev/null || \
ath9k_eeprom_die "failed to extract from $ubi"
}
ath9k_eeprom_extract_reverse() {
local part=$1
local offset=$2
local count=$3
local mtd
local reversed
local caldata
mtd=$(find_mtd_chardev "$part")
reversed=$(hexdump -v -s $offset -n $count -e '/1 "%02x "' $mtd)
for byte in $reversed; do
caldata="\x${byte}${caldata}"
done
printf "%b" "$caldata" > /lib/firmware/$FIRMWARE
}
ath9k_patch_firmware_mac() {
local mac=$1
[ -z "$mac" ] && return
macaddr_2bin $mac | dd of=/lib/firmware/$FIRMWARE conv=notrunc bs=1 seek=2 count=6
}
board=$(board_name)
case "$FIRMWARE" in
"soc_wmac.eeprom")
case $board in
c-55|\
c-60)
ath9k_eeprom_extract "art" 4096 2048
ath9k_patch_firmware_mac $(macaddr_add $(mtd_get_mac_binary art 0) +1)
;;
fritz4020|\
fritz450e)
ath9k_eeprom_extract_reverse "urlader" 5441 1088
;;
mr18)
. /lib/upgrade/nand.sh
if [ -n "$(nand_find_volume ubi0 caldata)" ]; then
ath9k_ubi_eeprom_extract "caldata" 4096 2048
else
ath9k_eeprom_extract "odm-caldata" 4096 2048
fi
ath9k_patch_firmware_mac $(macaddr_add $(mtd_get_mac_binary_ubi board-config 102) +1)
;;
r6100 | \
wndr3700v4 | \
wndr4300)
ath9k_eeprom_extract "caldata" 4096 2048
ath9k_patch_firmware_mac $(mtd_get_mac_binary caldata 0)
;;
rambutan)
ath9k_eeprom_extract "art" 4096 2048
;;
wlr8100)
ath9k_eeprom_extract "art" 4096 2048
ath9k_patch_firmware_mac $(mtd_get_mac_ascii u-boot-env "ethaddr")
;;
z1)
. /lib/upgrade/nand.sh
if [ -n "$(nand_find_volume ubi0 caldata)" ]; then
ath9k_ubi_eeprom_extract "caldata" 4096 2048
else
ath9k_eeprom_extract "origcaldata" 4096 2048
fi
ath9k_patch_firmware_mac $(macaddr_add $(mtd_get_mac_binary_ubi board-config 102) +2)
;;
*)
ath9k_eeprom_die "board $board is not supported yet"
;;
esac
;;
"pci_wmac0.eeprom")
case $board in
c-55)
ath9k_eeprom_extract "art" 20480 2048
ath9k_patch_firmware_mac $(macaddr_add $(mtd_get_mac_binary art 0) +2)
;;
fritz300e)
ath9k_eeprom_extract_reverse "urloader" 5441 1088
;;
mr18)
. /lib/upgrade/nand.sh
if [ -n "$(nand_find_volume ubi0 caldata)" ]; then
ath9k_ubi_eeprom_extract "caldata" 20480 2048
else
ath9k_eeprom_extract "odm-caldata" 20480 2048
fi
ath9k_patch_firmware_mac $(macaddr_add $(mtd_get_mac_binary_ubi board-config 102) +2)
;;
wndr3700v4 | \
wndr4300)
ath9k_eeprom_extract "caldata" 20480 2048
ath9k_patch_firmware_mac $(mtd_get_mac_binary caldata 12)
;;
z1)
. /lib/upgrade/nand.sh
if [ -n "$(nand_find_volume ubi0 caldata)" ]; then
ath9k_ubi_eeprom_extract "caldata" 86016 4096
else
ath9k_eeprom_extract "origcaldata" 86016 4096
fi
ath9k_patch_firmware_mac $(macaddr_add $(mtd_get_mac_binary_ubi board-config 102) +3)
;;
*)
ath9k_eeprom_die "board $board is not supported yet"
;;
esac
;;
"pci_wmac1.eeprom")
case $board in
mr18)
. /lib/upgrade/nand.sh
if [ -n "$(nand_find_volume ubi0 caldata)" ]; then
ath9k_ubi_eeprom_extract "caldata" 36864 2048
else
ath9k_eeprom_extract "odm-caldata" 36864 2048
fi
ath9k_patch_firmware_mac $(macaddr_add $(mtd_get_mac_binary_ubi board-config 102) +3)
;;
*)
ath9k_eeprom_die "board $board is not supported yet"
;;
esac
;;
esac

View File

@@ -0,0 +1,191 @@
#!/bin/sh
ath10kcal_die() {
echo "ath10cal: " "$*"
exit 1
}
ath10kcal_from_file() {
local source=$1
local offset=$2
local count=$3
dd if=$source of=/lib/firmware/$FIRMWARE bs=1 skip=$offset count=$count 2>/dev/null || \
ath10kcal_die "failed to extract calibration data from $source"
}
ath10kcal_extract() {
local part=$1
local offset=$2
local count=$3
local mtd cal_size
mtd=$(find_mtd_chardev $part)
[ -n "$mtd" ] || \
ath10kcal_die "no mtd device found for partition $part"
# Check that the calibration data size in header equals the desired size
cal_size=$(dd if=$mtd bs=2 count=1 skip=$(( $offset / 2 )) conv=swab 2>/dev/null | hexdump -ve '1/2 "%d"')
[ "$count" = "$cal_size" ] || \
ath10kcal_die "no calibration data found in $part"
dd if=$mtd of=/lib/firmware/$FIRMWARE bs=1 skip=$offset count=$count 2>/dev/null || \
ath10kcal_die "failed to extract calibration data from $mtd"
}
ath10kcal_patch_mac() {
local mac=$1
[ -z "$mac" ] && return
macaddr_2bin $mac | dd of=/lib/firmware/$FIRMWARE conv=notrunc bs=1 seek=6 count=6
}
[ -e /lib/firmware/$FIRMWARE ] && exit 0
. /lib/functions.sh
. /lib/functions/system.sh
board=$(board_name)
case "$FIRMWARE" in
"ath10k/cal-pci-0000:00:00.0.bin")
case $board in
a40|\
a60|\
mr1750|\
mr1750v2|\
om5p-acv2)
ath10kcal_extract "ART" 20480 2116
ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) +16)
;;
archer-c25-v1|\
tl-wdr6500-v2)
ath10kcal_extract "art" 20480 2116
ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth1/address) -2)
;;
archer-c7-v4|\
archer-c7-v5)
ath10kcal_extract "art" 20480 2116
ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) -1)
;;
cf-e355ac-v1|\
cf-e380ac-v1|\
cf-e380ac-v2|\
dlan-pro-1200-ac|\
e1700ac-v2|\
e600gac-v2|\
oolite-v5.2|\
oolite-v5.2-dev|\
sr3200|\
xd3200)
ath10kcal_extract "art" 20480 2116
;;
dap-2695-a1)
ath10kcal_extract "radiocfg" 20480 2116
ath10kcal_patch_mac $(mtd_get_mac_ascii bdcfg wlanmac_a)
;;
dir-869-a1|\
qihoo-c301)
ath10kcal_extract "radiocfg" 20480 2116
ath10kcal_patch_mac $(mtd_get_mac_ascii devdata wlan5mac)
;;
dw33d)
ath10kcal_extract "art" 20480 2116
ath10kcal_patch_mac $(mtd_get_mac_binary art 18)
;;
epg5000|\
esr1750)
ath10kcal_extract "caldata" 20480 2116
ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) +1)
;;
gl-ar750|\
tl-wpa8630)
ath10kcal_extract "art" 20480 2116
ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) +1)
;;
koala)
ath10kcal_extract "art" 20480 2116
ath10kcal_patch_mac $(macaddr_add $(mtd_get_mac_binary art 12) +0)
;;
mc-mac1200r)
ath10kcal_extract "art" 20480 2116
ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth1/address) -1)
;;
r6100)
ath10kcal_extract "caldata" 20480 2116
ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth1/address) +2)
;;
rb-952ui-5ac2nd|\
rb-wapg-5hact2hnd)
ath10kcal_from_file "/sys/firmware/routerboot/ext_wlan_data" 20480 2116
;;
re355|\
re450|\
tl-wr902ac-v1)
ath10kcal_extract "art" 20480 2116
ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) -2)
;;
unifiac-lite|\
unifiac-pro)
ath10kcal_extract "EEPROM" 20480 2116
;;
wi2a-ac200i)
ath10kcal_extract "ART" 20480 2116
;;
esac
;;
"ath10k/cal-pci-0000:01:00.0.bin")
case $board in
archer-c5|\
archer-c7)
ath10kcal_extract "art" 20480 2116
ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth1/address) -1)
;;
nbg6616|\
nbg6716)
ath10kcal_extract "RFdata" 20480 2116
ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth1/address) -2)
;;
om5p-ac)
ath10kcal_extract "ART" 20480 2116
ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) +16)
;;
rb-911g-5hpacd|\
rb-921gs-5hpacd-r2|\
rb-962uigs-5hact2hnt)
ath10kcal_from_file "/sys/firmware/routerboot/ext_wlan_data" 20480 2116
;;
wlr8100)
ath10kcal_extract "art" 20480 2116
ath10kcal_patch_mac $(macaddr_add $(mtd_get_mac_ascii u-boot-env ethaddr) +1)
;;
esac
;;
"ath10k/pre-cal-pci-0000:00:00.0.bin")
case $board in
archer-c58-v1|\
archer-c59-v1|\
archer-c60-v1|\
cf-e355ac-v2|\
cf-e375ac)
ath10kcal_extract "art" 20480 12064
ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
/lib/firmware/ath10k/QCA9888/hw2.0/board.bin
;;
archer-c60-v2)
ath10kcal_extract "art" 20480 12064
ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
/lib/firmware/ath10k/QCA9888/hw2.0/board.bin
ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth1/address) -1)
;;
cf-e385ac)
ath10kcal_extract "art" 20480 12064
;;
esac
;;
*)
exit 1
;;
esac

View File

@@ -0,0 +1,23 @@
#!/bin/ash
[ "$ACTION" == "add" ] || exit 0
PHYNBR=${DEVPATH##*/phy}
[ -n $PHYNBR ] || exit 0
. /lib/functions.sh
. /lib/functions/system.sh
board=$(board_name)
case "$board" in
archer-c58-v1|\
archer-c59-v1|\
archer-c60-v1)
echo $(macaddr_add $(mtd_get_mac_binary mac 8) $(($PHYNBR - 1)) ) > /sys${DEVPATH}/macaddress
;;
*)
;;
esac

View File

@@ -0,0 +1,49 @@
#!/bin/sh
# For AR9220 and AR9223, GPIO JTAG must explicit be disabled
# before LEDs start working. Do this when wifi device is
# detected.
#
# $DEVPATH is not valid for some boards (including WZR-HP-AG300H).
# Manipulate the $DEVPATH to reach the corresponding phyN.
#
devdir=$(dirname $DEVPATH)
devdir=$(dirname $devdir)
phydir=/sys$devdir/ieee80211
phyname=$(cat $phydir/phy*/name)
[ -z $phyname -o $ACTION != "add" ] && exit 0
#
# ar922x_disable_gpio_jtag():
#
# Emulate
# REG_SET_BIT(ah, AR_GPIO_INPUT_EN_VAL, AR_GPIO_JTAG_DISABLE);
# for AR9220 and AR9223.
#
ar922x_disable_gpio_jtag() {
local regidx=0x4054
[ -f /sys/kernel/debug/ieee80211/$1/ath9k/regidx ] || return
echo $regidx > /sys/kernel/debug/ieee80211/$1/ath9k/regidx
regval=$(cat /sys/kernel/debug/ieee80211/$1/ath9k/regval)
regval=$((regval | 0x20000))
echo regval $regval
echo $regval > /sys/kernel/debug/ieee80211/$1/ath9k/regval
}
[ $phyname -a $ACTION = "add" ] && {
. /lib/functions.sh
case $(board_name) in
wzr-hp-ag300h)
ar922x_disable_gpio_jtag $phyname
;;
esac;
}
exit 0

View File

@@ -0,0 +1,3 @@
::sysinit:/etc/init.d/rcS S boot
::shutdown:/etc/init.d/rcS K shutdown
::askconsole:/usr/libexec/login.sh

View File

@@ -0,0 +1,108 @@
#!/bin/sh
#
# Copyright (C) 2013 OpenWrt.org
#
SWITCH_NAME_CHANGED=
. /lib/functions.sh
do_change_switch_name() {
local config="$1"
local option=$2
local oldname=$3
local newname=$4
local val
config_get val "$config" $option
[ "$val" != "$oldname" ] && return 0
uci_set network "$config" $option $newname
SWITCH_NAME_CHANGED=1
return 0
}
migrate_switch_name() {
local oldname=$1
local newname=$2
config_load network
logger -t migrate-switchX "Updating switch names in network configuration"
config_foreach do_change_switch_name switch name $oldname $newname
config_foreach do_change_switch_name switch_vlan device $oldname $newname
[ "$SWITCH_NAME_CHANGED" = "1" ] && {
logger -t migrate-switchX "Switch names updated, saving network configuration"
uci commit network
}
}
board=$(board_name)
case "$board" in
airrouter|\
ap121|\
ap121-mini|\
ap96|\
dir-600-a1|\
dir-615-c1|\
dir-615-e1|\
dir-615-e4|\
dir-825-c1|\
ebr-2310-c1|\
ew-dorin|\
ew-dorin-router|\
ja76pf|\
rb-750|\
rb-751|\
tew-632brp|\
tew-712br|\
tl-mr3220|\
tl-mr3220-v2 |\
tl-mr3420|\
tl-wdr4300|\
tl-wr741nd|\
tl-wr741nd-v4|\
tl-wr841n-v7|\
tl-wr1041n-v2|\
whr-g301n|\
whr-hp-g300n|\
whr-hp-gn|\
wrt160nl|\
wzr-hp-ag300h|\
wzr-hp-g300nh2|\
wzr-hp-g450h|\
z1)
migrate_switch_name "eth0" "switch0"
;;
el-m150|\
rb-450)
migrate_switch_name "eth1" "switch0"
;;
db120|\
rb-2011il|\
rb-2011ils|\
rb-2011l|\
rb-2011uas-2hnd)
migrate_switch_name "eth0" "switch0"
migrate_switch_name "eth1" "switch1"
;;
dir-825-b1|\
nbg460n_550n_550nh|\
tew-673gru)
migrate_switch_name "rtl8366s" "switch0"
;;
tl-wr1043nd)
migrate_switch_name "rtl8366rb" "switch0"
;;
esac
exit 0

View File

@@ -0,0 +1,13 @@
#!/bin/sh
#
# Copyright (C) 2010 OpenWrt.org
#
dev="$(uci -q get network.@switch_vlan[0].device)"
vlan="$(uci -q get network.@switch_vlan[0].vlan)"
if [ "$dev" = "rtl8366s" ] && [ "$vlan" = 0 ]; then
logger -t vlan-migration "VLAN 0 is invalid for RTL8366s, changing to 1"
uci set network.@switch_vlan[0].vlan=1
uci commit network
fi

View File

@@ -0,0 +1,81 @@
#!/bin/sh
#
# Copyright (C) 2013 OpenWrt.org
#
LED_OPTIONS_CHANGED=0
. /lib/functions.sh
do_led_update_sysfs()
{
local cfg=$1; shift
local tuples="$@"
local sysfs
local name
config_get sysfs $cfg sysfs
config_get name $cfg name
[ -z "$sysfs" ] && return
for tuple in $tuples; do
local old=${tuple%=*}
local new=${tuple#*=}
local new_sysfs
new_sysfs=$(echo ${sysfs} | sed "s/${old}/${new}/")
[ "$new_sysfs" = "$sysfs" ] && continue
uci set system.${cfg}.sysfs="${new_sysfs}"
LED_OPTIONS_CHANGED=1
logger -t led-migration "sysfs option of LED \"${name}\" updated to ${new_sysfs}"
done;
}
migrate_leds()
{
config_load system
config_foreach do_led_update_sysfs led "$@"
}
board=$(board_name)
case "$board" in
dhp-1565-a1|\
dir-825-c1|\
dir-835-a1)
migrate_leds ":orange:=:amber:" ":wifi_bgn=:wlan2g"
;;
dr344)
migrate_leds ":red:=:green:" ":yellow:=:green:"
;;
gl-ar150)
migrate_leds "gl-ar150:wlan=gl-ar150:orange:wlan" "gl-ar150:lan=gl-ar150:green:lan" "gl-ar150:wan=gl-ar150:green:wan"
;;
oolite-v1)
migrate_leds "oolite:=${board}"
;;
wndap360|\
wndr3700|\
wnr2000|\
wnr2200)
migrate_leds "${board}:=netgear:"
;;
wndr3700v4|\
wndr4300)
migrate_leds ":orange:=:amber:"
;;
wnr1000-v2)
migrate_leds "wnr1000v2:=netgear:"
;;
wnr612-v2)
migrate_leds "wnr612v2:=netgear:"
;;
esac
[ "$LED_OPTIONS_CHANGED" = "1" ] && uci commit system
exit 0

View File

@@ -0,0 +1,28 @@
#!/bin/sh
#
# Copyright (C) 2010 OpenWrt.org
#
. /lib/functions.sh
board=$(board_name)
fixtrx() {
mtd -o 32 fixtrx firmware
}
fixwrgg() {
local kernel_size=$(sed -n 's/mtd[0-9]*: \([0-9a-f]*\).*"kernel".*/\1/p' /proc/mtd)
[ "$kernel_size" ] && mtd -c 0x$kernel_size fixwrgg firmware
}
case "$board" in
mynet-rext |\
wrt160nl)
fixtrx
;;
dap-2695-a1)
fixwrgg
;;
esac

View File

@@ -0,0 +1,17 @@
#!/bin/sh
. /lib/functions.sh
fix_seama_header() {
local kernel_size=$(sed -n 's/mtd[0-9]*: \([0-9a-f]*\).*"kernel".*/\1/p' /proc/mtd)
[ "$kernel_size" ] && mtd -c 0x$kernel_size fixseama firmware
}
board=$(board_name)
case "$board" in
dir-869-a1)
fix_seama_header
;;
esac