summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Hatch <jhatch@multitech.com>2021-12-23 08:15:33 -0600
committerJeff Hatch <jhatch@multitech.com>2021-12-23 08:15:33 -0600
commit74cd6f60661574c0d09ada7419860950114bec00 (patch)
tree6c65a264e8f9c3f9596c9feea1e2d93653908008
parent2298ff803a6fa5d2b47f85b2e3025910ba205f7e (diff)
parentc16c15c3a03a6435457cfc305326eaf244710ed1 (diff)
downloadmeta-mlinux-atmel-74cd6f60661574c0d09ada7419860950114bec00.tar.gz
meta-mlinux-atmel-74cd6f60661574c0d09ada7419860950114bec00.tar.bz2
meta-mlinux-atmel-74cd6f60661574c0d09ada7419860950114bec00.zip
Merge branch 'ap/MTX-4274' into '6'
Merge all changes from 5.3.6 and 5.3.7 to mPower R.6.0 See merge request !15
-rw-r--r--recipes-core/images/mlinux-minimal-image.bb2
-rwxr-xr-xrecipes-core/mlinux-scripts/mlinux-scripts/mlinux-firmware-upgrade66
-rw-r--r--recipes-core/mlinux-scripts/mlinux-scripts_%.bbappend2
-rw-r--r--recipes-core/udev/eudev/mtcdt/mtcdt-atmel-serial.rules13
-rw-r--r--recipes-core/udev/eudev/mtcdt/mtcdt.rules4
-rw-r--r--recipes-core/udev/eudev_%.bbappend2
6 files changed, 82 insertions, 7 deletions
diff --git a/recipes-core/images/mlinux-minimal-image.bb b/recipes-core/images/mlinux-minimal-image.bb
index 5427a68..3337b89 100644
--- a/recipes-core/images/mlinux-minimal-image.bb
+++ b/recipes-core/images/mlinux-minimal-image.bb
@@ -30,7 +30,9 @@ CORE_FEATURES_append = " \
CORE_FEATURES_append = " mtd-utils mtd-utils-jffs2 fstab-jffs2"
+# All except old MTR
CORE_FEATURES_append_mtcap = " mt-dt-overlay "
+CORE_FEATURES_append_mtrv1 = " mt-dt-overlay "
CORE_FEATURES_append_mtcdt = " mt-dt-overlay "
NETWORKING_FEATURES = "ppp ppp-waitforresetfunc curl iproute2 \
diff --git a/recipes-core/mlinux-scripts/mlinux-scripts/mlinux-firmware-upgrade b/recipes-core/mlinux-scripts/mlinux-scripts/mlinux-firmware-upgrade
index a377309..a6e6d68 100755
--- a/recipes-core/mlinux-scripts/mlinux-scripts/mlinux-firmware-upgrade
+++ b/recipes-core/mlinux-scripts/mlinux-scripts/mlinux-firmware-upgrade
@@ -1,9 +1,41 @@
#!/bin/bash
dofile=/var/volatile/do_flash_upgrade
+dofactoryreset=0
+id=$(id -u)
+function usage {
+ echo "Usage: $0 -f upgrade.bin"
+ echo " \"-f\" factory reset"
+ echo " \"-h\" help"
+ exit 1
+}
+if (($(id -u) != 0)) ; then
+ echo "You must be root to do a flash upgrade"
+ exit 1
+fi
+while getopts "hf" arg; do
+ case $arg in
+ h)
+ usage
+ exit 1
+ ;;
+ f)
+ mtd=$(cat /proc/mtd)
+ if ! [[ $mtd =~ at91bootstrap ]] ; then
+ echo Factory reset option is only supported on Atmel devices
+ exit 1
+ fi
+ dofactoryreset=1
+ ;;
+ *)
+ usage
+ ;;
+ esac
+done
+shift $((OPTIND-1))
+
if [ $# != 1 ]; then
- echo "Usage: $0 upgrade.bin"
- exit 1
+ usage
fi
set -e
@@ -45,6 +77,23 @@ for (( i = 0; i < ${#files[@]}; i++ )); do
done
if (( $tobeflashed )); then
+ if ((dofactoryreset == 1)) ; then
+ for name in "u-Boot Config" "u-Boot Redundant Config" ; do
+ part=$(echo "$mtd" | grep "$name" | sed 's/:.*//')
+ if [[ $part =~ ^mtd[0-9] ]] ; then
+ flash_erase /dev/${part} 0 0
+ fi
+ done
+ fuser -mk /var/config || true
+ for name in "User data" "Config" ; do
+ part=$(echo "$mtd" | grep "\"$name\"" | sed 's/:.*//')
+ num=$(echo "$part" | sed 's/mtd//')
+ if [[ $part =~ ^mtd[0-9] ]] ; then
+ umount -l /dev/mtdblock${num} || true
+ flash_erase -j /dev/${part} 0 0
+ fi
+ done
+ fi
mkdir -p /var/volatile/flash-upgrade
mv -f $upgrade /var/volatile/flash-upgrade/upgrade.bin
touch "${dofile}"
@@ -59,9 +108,16 @@ if (( $tobeflashed )); then
logger -s -t firmware_upgrade "Cannot set ownership of ${dofile} to root"
exit 1
fi
- logger -s -t firmware_upgrade "Rebooting"
- sleep 1
- reboot
+ if ((dofactoryreset == 1)) ; then
+ logger -s -t firmware_upgrade "Power Off"
+ sleep 1
+ poweroff
+ else
+ logger -s -t firmware_upgrade "Rebooting"
+ sleep 1
+ reboot
+ fi
+ # NOTREACHED
exit 0
else
logger -s -t firmware_upgrade "Nothing to be flashed!"
diff --git a/recipes-core/mlinux-scripts/mlinux-scripts_%.bbappend b/recipes-core/mlinux-scripts/mlinux-scripts_%.bbappend
index ecda287..39c0807 100644
--- a/recipes-core/mlinux-scripts/mlinux-scripts_%.bbappend
+++ b/recipes-core/mlinux-scripts/mlinux-scripts_%.bbappend
@@ -1,6 +1,6 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
-PR .= ".mlinux0"
+PR .= ".mlinux1"
SRC_URI += " \
file://mlinux-firmware-upgrade \
diff --git a/recipes-core/udev/eudev/mtcdt/mtcdt-atmel-serial.rules b/recipes-core/udev/eudev/mtcdt/mtcdt-atmel-serial.rules
new file mode 100644
index 0000000..edf6626
--- /dev/null
+++ b/recipes-core/udev/eudev/mtcdt/mtcdt-atmel-serial.rules
@@ -0,0 +1,13 @@
+# Rules for Atmel Serial on MTCDT-0.2
+# These devices will not be present without
+# loading an overlay.
+ACTION=="remove", GOTO="mlinux_end"
+SUBSYSTEM!="tty", GOTO="mlinux_end"
+
+# Accessory Ports
+
+ATTRS{iomem_base}=="0xF8040000", SYMLINK+="gps0"
+ATTRS{iomem_base}=="0xF8020000", SYMLINK+="ttyAP1"
+ATTRS{iomem_base}=="0xF8028000", SYMLINK+="ttyAP2"
+
+LABEL="mlinux_end"
diff --git a/recipes-core/udev/eudev/mtcdt/mtcdt.rules b/recipes-core/udev/eudev/mtcdt/mtcdt.rules
index 5d528e6..7436669 100644
--- a/recipes-core/udev/eudev/mtcdt/mtcdt.rules
+++ b/recipes-core/udev/eudev/mtcdt/mtcdt.rules
@@ -1,6 +1,5 @@
ACTION=="remove", GOTO="mlinux_end"
SUBSYSTEM!="tty", GOTO="mlinux_end"
-KERNEL!="ttyXRUSB[0-9]*", GOTO="mlinux_end"
SUBSYSTEMS=="usb", ENV{ID_IFACE}="$attr{bInterfaceNumber}"
ENV{ID_IFACE}=="", GOTO="mlinux_end"
@@ -10,5 +9,8 @@ ATTRS{idVendor}=="04e2", ATTRS{idProduct}=="1412", ENV{ID_IFACE}=="00", SYMLINK+
ATTRS{idVendor}=="04e2", ATTRS{idProduct}=="1414", ENV{ID_IFACE}=="00", SYMLINK+="ttyAP1"
ATTRS{idVendor}=="04e2", ATTRS{idProduct}=="1412", ENV{ID_IFACE}=="02", SYMLINK+="ttyAP2"
ATTRS{idVendor}=="04e2", ATTRS{idProduct}=="1414", ENV{ID_IFACE}=="02", SYMLINK+="ttyAP2"
+ATTRS{idVendor}=="04e2", ATTRS{idProduct}=="1412", ENV{ID_IFACE}=="04", SYMLINK+="gps0"
+ATTRS{idVendor}=="04e2", ATTRS{idProduct}=="1414", ENV{ID_IFACE}=="04", SYMLINK+="gps0"
+ATTRS{idVendor}=="1546", ATTRS{idProduct}=="01a8", ENV{ID_IFACE}=="00", SYMLINK+="gps0"
LABEL="mlinux_end"
diff --git a/recipes-core/udev/eudev_%.bbappend b/recipes-core/udev/eudev_%.bbappend
index 1a3bb30..e431ab0 100644
--- a/recipes-core/udev/eudev_%.bbappend
+++ b/recipes-core/udev/eudev_%.bbappend
@@ -4,8 +4,10 @@ PR .= ".mlinux8"
SRC_URI_append_mtcdt = " \
file://accessory_ethernet.rules \
+ file://mtcdt-atmel-serial.rules \
"
do_install_append_mtcdt() {
install -m 644 ${WORKDIR}/accessory_ethernet.rules ${D}${sysconfdir}/udev/rules.d/
+ install -m 644 ${WORKDIR}/mtcdt-atmel-serial.rules ${D}${sysconfdir}/udev/rules.d/
}