parent
3660c51c40
commit
2cff80f015
@ -0,0 +1,39 @@ |
|||||||
|
#!/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 |
||||||
|
|
||||||
|
. /etc/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 |
||||||
|
|
||||||
|
case "$FIRMWARE" in |
||||||
|
"RT2860.eeprom" ) |
||||||
|
local board=$(grep ^machine /proc/cpuinfo | sed "s/machine.*: \(.*\) - .*/\1/g") |
||||||
|
case $board in |
||||||
|
ARV7525PW) |
||||||
|
rt2x00_eeprom_extract "board_config" 1040 272 |
||||||
|
;; |
||||||
|
*) |
||||||
|
rt2x00_eeprom_die "board $board is not supported yet" |
||||||
|
;; |
||||||
|
esac |
||||||
|
;; |
||||||
|
esac |
Loading…
Reference in new issue