diff options
Diffstat (limited to 'target/linux/at91/base-files/lib/at91.sh')
-rwxr-xr-x | target/linux/at91/base-files/lib/at91.sh | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/target/linux/at91/base-files/lib/at91.sh b/target/linux/at91/base-files/lib/at91.sh new file mode 100755 index 0000000000..e395646cbc --- /dev/null +++ b/target/linux/at91/base-files/lib/at91.sh @@ -0,0 +1,90 @@ +#!/bin/sh +# +# Copyright (C) 2014 OpenWrt.org +# + +AT91_BOARD_NAME= +AT91_MODEL= + +at91_board_detect() { + local machine + local name + + machine=$(cat /proc/device-tree/model) + + case "$machine" in + *"Atmel at91sam9263ek") + name="at91sam9263ek" + ;; + *"Atmel AT91SAM9G15-EK") + name="at91sam9g15ek" + ;; + *"Atmel at91sam9g20ek") + name="at91sam9g20ek" + ;; + *"Atmel at91sam9g20ek 2 mmc") + name="at91sam9g20ek_2mmc" + ;; + *"Atmel AT91SAM9G25-EK") + name="at91sam9g25ek" + ;; + *"Atmel AT91SAM9G35-EK") + name="at91sam9g35ek" + ;; + *"Atmel AT91SAM9M10G45-EK") + name="at91sam9m10g45ek" + ;; + *"Atmel AT91SAM9X25-EK") + name="at91sam9x25ek" + ;; + *"Atmel AT91SAM9X35-EK") + name="at91sam9x35ek" + ;; + *"SAMA5D3 Xplained") + name="sama5d3_xplained" + ;; + *"CalAmp LMU5000") + name="lmu5000" + ;; + *"Calao TNY A9260") + name="tny_a9260" + ;; + *"Calao TNY A9263") + name="tny_a9263" + ;; + *"Calao TNY A9G20") + name="tny_a9g20" + ;; + *"Calao USB A9260") + name="usb_a9260" + ;; + *"Calao USB A9263") + name="usb_a9263" + ;; + *"Calao USB A9G20") + name="usb_a9g20" + ;; + *"Ethernut 5") + name="ethernut5" + ;; + esac + + [ -z "$name" ] && name="unknown" + + [ -z "$AT91_BOARD_NAME" ] && AT91_BOARD_NAME="$name" + [ -z "$AT91_MODEL" ] && AT91_MODEL="$machine" + + [ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/" + + echo "$AT91_BOARD_NAME" > /tmp/sysinfo/board_name + echo "$AT91_MODEL" > /tmp/sysinfo/model +} + +at91_board_name() { + local name + + [ -f /tmp/sysinfo/board_name ] && name=$(cat /tmp/sysinfo/board_name) + [ -n "$name" ] || name="unknown" + + echo "$name" +} |