aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/omap24xx/base-files/lib
diff options
context:
space:
mode:
authorMichael Büsch <mb@bu3sch.de>2011-01-29 18:45:28 +0000
committerMichael Büsch <mb@bu3sch.de>2011-01-29 18:45:28 +0000
commitc9ac9c1a64cb5a3b3e21c37753e525f7088535a7 (patch)
treee33a76266356223f95d9612f6f5e40a449e896da /target/linux/omap24xx/base-files/lib
parent0e7c1dd7d1f7e067dcf5e4e117d1c13c415df234 (diff)
downloadupstream-c9ac9c1a64cb5a3b3e21c37753e525f7088535a7.tar.gz
upstream-c9ac9c1a64cb5a3b3e21c37753e525f7088535a7.tar.bz2
upstream-c9ac9c1a64cb5a3b3e21c37753e525f7088535a7.zip
omap24xx: Move p54 eeprom init to preinit
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25242 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/omap24xx/base-files/lib')
-rw-r--r--target/linux/omap24xx/base-files/lib/preinit/99_p54spi_eeprom26
1 files changed, 26 insertions, 0 deletions
diff --git a/target/linux/omap24xx/base-files/lib/preinit/99_p54spi_eeprom b/target/linux/omap24xx/base-files/lib/preinit/99_p54spi_eeprom
new file mode 100644
index 0000000000..cd406f42d2
--- /dev/null
+++ b/target/linux/omap24xx/base-files/lib/preinit/99_p54spi_eeprom
@@ -0,0 +1,26 @@
+#!/bin/sh
+
+do_generate_p54spi_eeprom() {
+ [ -e /lib/firmware/3826.eeprom ] && return 0
+
+ [ -x /usr/bin/calvaria ] || { echo "p54spi EEPROM: calvaria not found"; return 1; }
+ [ -x /usr/bin/cal2p54 ] || { echo "p54spi EEPROM: cal2p54 not found"; return 1; }
+
+ /usr/bin/calvaria -p -n wlan-iq-align -i last /dev/mtdblock1 >/tmp/wlan-iq-align || {
+ echo "p54spi EEPROM: Failed to extract wlan-iq-align"
+ return 1
+ }
+ /usr/bin/calvaria -p -n wlan-tx-gen2 -i last /dev/mtdblock1 >/tmp/txgen_file || {
+ echo "p54spi EEPROM: Failed to extract wlan-tx-gen2"
+ return 1
+ }
+
+ /usr/bin/cal2p54 /tmp/txgen_file /tmp/wlan-iq-align >/lib/firmware/3826.eeprom || {
+ echo "p54spi EEPROM: Failed to generate EEPROM"
+ return 1
+ }
+
+ rm -f /tmp/wlan-iq-align /tmp/txgen_file
+}
+
+boot_hook_add preinit_mount_root do_generate_p54spi_eeprom