script to load device tree overlay
authorDobrica Pavlinusic <dpavlin@rot13.org>
Wed, 26 Aug 2020 06:06:00 +0000 (08:06 +0200)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Wed, 26 Aug 2020 06:06:00 +0000 (08:06 +0200)
overlay-load.sh [new file with mode: 0755]

diff --git a/overlay-load.sh b/overlay-load.sh
new file mode 100755 (executable)
index 0000000..ab13335
--- /dev/null
@@ -0,0 +1,33 @@
+#!/bin/sh -e
+
+dtb=$1
+test -f "$dtb" || ( echo "Usage: $0 overlay.dtb" ; exit 1 )
+
+if echo $dtb | grep '\.dts$' ; then
+       echo "Compile overlay $dtb"
+       dtc -I dts -O dtb -o $dtb.dtb $dtb
+       dtb=$dtb.dtb
+       echo "Created $dtb"
+fi
+
+
+#mount none /sys/kernel/config/ -t configfs
+
+config=`mount -t configfs | awk '{ print $3 }'`
+if [ -z "$config" ] ; then
+       config=/sys/kernel/config
+       mount -t configfs none $config
+fi
+name=`basename $1`
+
+
+dir=$config/device-tree/overlays/$name
+
+# remote overlay to reaload it
+test -d $dir && rmdir $dir
+
+mkdir $dir
+cat $dtb > $dir/dtbo
+cat $dir/status
+
+echo "Remove with: rmdir $dir"