local count=$3
local mtd
- . /etc/functions.sh
+ . /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 || \
+ dd if=$mtd of=/lib/firmware/$FIRMWARE bs=1 skip=$offset count=$count 2>/dev/null || \
rt2x00_eeprom_die "failed to extract from $mtd"
}
-[ -e /lib/firmware/$FIRMWARE ] && exit 0
+FW="/lib/firmware/$FIRMWARE"
+[ -e "$FW" ] && exit 0
-case "$FIRMWARE" in
-"RT288X.eeprom" | \
-"RT305X.eeprom")
- . /lib/ramips.sh
+. /lib/ramips.sh
- local board=$(ramips_board_name)
+board=$(ramips_board_name)
+case "$FIRMWARE" in
+"soc_wmac.eeprom")
case $board in
+ asl26555 | \
dir-300-b1 | \
dir-600-b1 | \
- dir-600-b2)
- rt2x00_eeprom_extract "devdata" 16384 272
+ dir-600-b2 | \
+ dir-610-a1 | \
+ dir-615-d)
+ rt2x00_eeprom_extract "devdata" 16384 512
+ ;;
+
+ dap-1350)
+ rt2x00_eeprom_extract "devdata" 0 512
;;
+ rt-n10-plus | \
rt-g32-b1)
- rt2x00_eeprom_extract "devconf" 0 272
+ rt2x00_eeprom_extract "devconf" 0 512
;;
+ f5d8235-v1 | \
f5d8235-v2)
- rt2x00_eeprom_extract "u-boot" 262144 272
+ rt2x00_eeprom_extract "u-boot" 262144 512
;;
+ 3g-6200n | \
+ 3g-6200nl | \
+ 3g300m | \
+ air3gii | \
+ all0239-3g | \
+ all0256n | \
+ all5002 | \
+ all5003 | \
argus-atp52b | \
+ awm002-evb | \
+ awapn2403 | \
+ bc2 | \
+ br6425 | \
+ br-6475nd | \
+ broadway | \
+ br6524n | \
+ carambola | \
+ cy-swr1100 | \
+ d105 | \
+ dcs-930 | \
+ dir-300-b7 | \
+ dir-320-b1 | \
+ dir-615-h1 | \
+ dir-620-a1 | \
+ dir-620-d1 | \
+ dir-645 | \
+ esr-9753 | \
+ f7c027 | \
fonera20n | \
+ rt-n13u | \
+ freestation5 | \
+ hlk-rm04 | \
hw550-3g | \
mofi3500-3gn | \
+ mpr-a1 | \
+ mpr-a2 | \
pwh2004 | \
+ nbg-419n | \
nw718 | \
+ omni-emb | \
+ omni-emb-hpm | \
+ psr-680w | \
+ px4885 | \
rt-n15 | \
+ rt-n56u | \
+ rut5xx | \
+ sl-r7205 | \
+ v11st-fe | \
v22rw-2x2 | \
- wcr150gn | \
+ w306r-v20 | \
+ w150m | \
+ w502u | \
+ wcr-150gn | \
whr-g300n | \
- wr512-3gn)
- rt2x00_eeprom_extract "factory" 0 272
+ whr-300hp2 | \
+ whr-600d | \
+ whr-1166d | \
+ wl-330n | \
+ wl-330n3g | \
+ wl-351 | \
+ wli-tx4-ag300n | \
+ wmr300 | \
+ wnce2001 | \
+ wr512-3gn | \
+ wr6202 | \
+ wrtnode | \
+ mzk-w300nh2 | \
+ ur-326n4g | \
+ ur-336un | \
+ xdxrn502j | \
+ hg255d)
+ rt2x00_eeprom_extract "factory" 0 512
+ ;;
+
+ wl341v3)
+ rt2x00_eeprom_extract "board-nvram" 64880 512
;;
*)
;;
esac
;;
+
+"rt2x00pci_1_0.eeprom")
+ case $board in
+ cy-swr1100)
+ rt2x00_eeprom_extract "factory" 8192 512
+ ;;
+ rt-n56u | whr-600d | whr-1166d)
+ rt2x00_eeprom_extract "factory" 32768 512
+ ;;
+ esac
+ ;;
esac