summaryrefslogtreecommitdiffstats
path: root/target/linux/brcm63xx/base-files/etc
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/brcm63xx/base-files/etc')
-rwxr-xr-xtarget/linux/brcm63xx/base-files/etc/diag.sh51
-rw-r--r--target/linux/brcm63xx/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom42
-rwxr-xr-xtarget/linux/brcm63xx/base-files/etc/init.d/defconfig18
-rwxr-xr-xtarget/linux/brcm63xx/base-files/etc/uci-defaults/02_network108
-rwxr-xr-xtarget/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc (renamed from target/linux/brcm63xx/base-files/etc/uci-defaults/brcm63xx_fixcrc.sh)6
-rwxr-xr-xtarget/linux/brcm63xx/base-files/etc/uci-defaults/network54
6 files changed, 158 insertions, 121 deletions
diff --git a/target/linux/brcm63xx/base-files/etc/diag.sh b/target/linux/brcm63xx/base-files/etc/diag.sh
index d492cd553..a03f89dc3 100755
--- a/target/linux/brcm63xx/base-files/etc/diag.sh
+++ b/target/linux/brcm63xx/base-files/etc/diag.sh
@@ -1,60 +1,13 @@
#!/bin/sh
-#
-# Copyright (C) 2007 OpenWrt.org
-#
-#
+# Copyright (C) 2007-2013 OpenWrt.org
+. /lib/functions/leds.sh
. /lib/brcm63xx.sh
-led_set_attr() {
- [ -f "/sys/class/leds/$1/$2" ] && echo "$3" > "/sys/class/leds/$1/$2"
-}
-
-status_led_set_timer() {
- led_set_attr $status_led "trigger" "timer"
- led_set_attr $status_led "delay_on" "$1"
- led_set_attr $status_led "delay_off" "$2"
- [ -n "$status_led2" ] && {
- led_set_attr $status_led2 "trigger" "timer"
- led_set_attr $status_led2 "delay_on" "$1"
- led_set_attr $status_led2 "delay_off" "$2"
- }
-}
-
-status_led_set_morse() {
- led_set_attr $status_led "trigger" "morse"
- led_set_attr $status_led "delay" "$1"
- led_set_attr $status_led "message" "$2"
- [ -n "$status_led2" ] && {
- led_set_attr $status_led2 "trigger" "morse"
- led_set_attr $status_led2 "delay" "$1"
- led_set_attr $status_led2 "message" "$2"
- }
-}
-
-status_led_on() {
- led_set_attr $status_led "trigger" "none"
- led_set_attr $status_led "brightness" 255
- [ -n "$status_led2" ] && {
- led_set_attr $status_led2 "trigger" "none"
- led_set_attr $status_led2 "brightness" 255
- }
-}
-
-status_led_off() {
- led_set_attr $status_led "trigger" "none"
- led_set_attr $status_led "brightness" 0
- [ -n "$status_led2" ] && {
- led_set_attr $status_led2 "trigger" "none"
- led_set_attr $status_led2 "brightness" 0
- }
-}
-
set_state() {
case "$1" in
preinit)
insmod leds-gpio
- status_led_on
status_led_set_timer 200 200
;;
failsafe)
diff --git a/target/linux/brcm63xx/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom b/target/linux/brcm63xx/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom
new file mode 100644
index 000000000..eeb66e0d1
--- /dev/null
+++ b/target/linux/brcm63xx/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom
@@ -0,0 +1,42 @@
+#!/bin/sh
+# Based on gabors ralink wisoc implementation.
+
+rt2x00_eeprom_die() {
+ echo "rt2x00 eeprom: " "$*"
+ exit 1
+}
+
+rt2x00_eeprom_extract() {
+ local part=$1
+ local offset=$2
+ local count=$3
+ local mtd
+
+ . /lib/functions.sh
+
+ mtd=$(find_mtd_part $part)
+ [ -n "$mtd" ] || \
+ rt2x00_eeprom_die "no mtd device found for partition $part"
+
+ dd if=$mtd of=/lib/firmware/$FIRMWARE bs=1 skip=$offset count=$count || \
+ rt2x00_eeprom_die "failed to extract from $mtd"
+}
+
+[ -e /lib/firmware/$FIRMWARE ] && exit 0
+
+. /lib/brcm63xx.sh
+
+board=$board_name
+
+case "$FIRMWARE" in
+"rt2x00.eeprom" )
+ case $board in
+ HW556_A)
+ rt2x00_eeprom_extract "cal_data" 130560 272
+ ;;
+ *)
+ rt2x00_eeprom_die "board $board is not supported yet"
+ ;;
+ esac
+ ;;
+esac
diff --git a/target/linux/brcm63xx/base-files/etc/init.d/defconfig b/target/linux/brcm63xx/base-files/etc/init.d/defconfig
deleted file mode 100755
index a49c32785..000000000
--- a/target/linux/brcm63xx/base-files/etc/init.d/defconfig
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/sh /etc/rc.common
-#
-# Copyright (C) 2009 OpenWrt.org
-#
-
-START=05
-
-start() {
- . /lib/brcm63xx.sh
-
- [ ! -d /etc/defconfig/$board_name ] && board_name="generic"
-
- for f in $( ls /etc/defconfig/$board_name ); do
- if [ ! -e /etc/config/$f ]; then
- cp /etc/defconfig/$board_name/$f /etc/config/
- fi
- done
-}
diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network b/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network
new file mode 100755
index 000000000..f59fed678
--- /dev/null
+++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network
@@ -0,0 +1,108 @@
+#!/bin/sh
+#
+# Copyright (C) 2012 OpenWrt.org
+#
+
+[ -e /etc/config/network ] && exit 0
+
+touch /etc/config/network
+
+. /lib/functions/uci-defaults.sh
+. /lib/brcm63xx.sh
+
+ucidef_set_interface_loopback
+
+case "$board_name" in
+
+RTA770BW |\
+RTA770W |\
+96348W3 |\
+96358-502V |\
+SPW500V)
+ ucidef_set_interface_lan "eth0"
+ ;;
+
+96338GW |\
+96338W |\
+96338W2_E7T |\
+96348A-122 |\
+96348W3 |\
+CPVA642 |\
+CT536_CT5621 |\
+CT6373-1 |\
+D-4P-W |\
+"F@ST2604" |\
+RTA1320_16M |\
+V2110)
+ ucidef_set_interface_lan "eth0"
+ ucidef_add_switch "eth0" "1" "1"
+ ucidef_add_switch_vlan "eth0" "1" "0 1 2 3 4 5"
+ ;;
+
+96348GW |\
+96348GW-10 |\
+96348GW-11 |\
+96348GW-A |\
+96358VW |\
+96358VW2 |\
+AGPF-S0 |\
+"CPVA502+" |\
+DV201AMR |\
+DWV-S0 |\
+"F@ST2404" |\
+HW553 |\
+MAGIC |\
+RTA1025W_16 |\
+V2500V_BB)
+ ucidef_set_interfaces_lan_wan "eth1" "eth0"
+ ucidef_add_switch "eth1" "1" "1"
+ ucidef_add_switch_vlan "eth1" "1" "0 1 2 3 4 5"
+ ;;
+
+AW4139 |\
+HW556*)
+ ucidef_set_interface_lan "eth0.1"
+ ucidef_add_switch "eth0" "1" "1"
+ ucidef_add_switch_vlan "eth0" "1" "0 1 2 3 4 5t"
+ ;;
+
+NB4-* |\
+DVG3810BN)
+ ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
+ ucidef_add_switch "eth1" "1" "1"
+ ucidef_add_switch_vlan "eth1" "1" "0 1 2 3 4 5t"
+ ;;
+
+96328avng |\
+96328A-1241N |\
+96328A-1441N1 |\
+963281TAN |\
+963281T_TEF |\
+96368MVNgr)
+ ucidef_set_interface_lan "eth0.1"
+ ucidef_add_switch "eth0" "1" "1"
+ ucidef_add_switch_vlan "eth0" "1" "0 1 2 3 8t"
+ ;;
+
+96368MVWG)
+ ucidef_set_interface_lan "eth0.1"
+ ucidef_add_switch "eth0" "1" "1"
+ ucidef_add_switch_vlan "eth0" "1" "1 2 4 5 8t"
+ ;;
+
+NB6)
+ ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
+ ucidef_add_switch "switch0" "1" "1"
+ ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 9t"
+ ucidef_add_switch_vlan "switch0" "2" "0 9t"
+ ;;
+
+*)
+ ucidef_set_interfaces_lan_wan "eth1" "eth0"
+ ;;
+
+esac
+
+uci commit network
+
+exit 0
diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/brcm63xx_fixcrc.sh b/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc
index f5b6d440e..2bb79cc09 100755
--- a/target/linux/brcm63xx/base-files/etc/uci-defaults/brcm63xx_fixcrc.sh
+++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc
@@ -14,13 +14,19 @@ brcm63xx_detect
case "$board_name" in
96328avng |\
+ 96328A-1241N |\
+ 96328A-1441N1 |\
963281TAN |\
+ 963281T_TEF |\
+ 96358-502V |\
"CPVA502+" |\
AW4339U |\
CPVA642 |\
CT6373-1 |\
MAGIC |\
V2110 |\
+ RTA770BW |\
+ RTA770W |\
V2500V_BB)
do_fixcrc
;;
diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/network b/target/linux/brcm63xx/base-files/etc/uci-defaults/network
deleted file mode 100755
index 53c29ac5a..000000000
--- a/target/linux/brcm63xx/base-files/etc/uci-defaults/network
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/bin/sh
-#
-# Copyright (C) 2012 OpenWrt.org
-#
-
-[ -e /etc/config/network ] && exit 0
-
-touch /etc/config/network
-
-. /lib/functions/uci-defaults.sh
-. /lib/brcm63xx.sh
-
-ucidef_set_interface_loopback
-
-case "$board_name" in
-
-96328avng |\
-963281TAN |\
-96348A-122 |\
-96358-502V |\
-CT6373-1 |\
-AW4339U |\
-CPVA642 |\
-CT536_CT5621 |\
-D-4P-W |\
-NB6 |\
-SPW303V |\
-SPW500V |\
-V2110 |\
-96348W3)
- ucidef_set_interface_lan "eth0"
- ;;
-
-AW4139)
- ucidef_set_interface_lan "eth0.1"
- ucidef_add_switch "eth0" "1" "1"
- ucidef_add_switch_vlan "eth0" "1" "0 1 2 3 4 5t"
- ;;
-
-DVG3810BN)
- ucidef_set_interfaces_lan_wan "eth1.1" "eth0"
- ucidef_add_switch "eth1" "1" "1"
- ucidef_add_switch_vlan "eth1" "1" "0 1 2 3 4 5t"
- ;;
-
-*)
- ucidef_set_interfaces_lan_wan "eth1" "eth0"
- ;;
-
-esac
-
-uci commit network
-
-exit 0