diff --git a/packages/sysutils/imx6-soc-fan/bin/imx6-soc-fan-control b/packages/sysutils/imx6-soc-fan/bin/imx6-soc-fan-control
index 88d051794d..92d07ec0ad 100755
--- a/packages/sysutils/imx6-soc-fan/bin/imx6-soc-fan-control
+++ b/packages/sysutils/imx6-soc-fan/bin/imx6-soc-fan-control
@@ -18,11 +18,11 @@
# along with OpenELEC. If not, see .
################################################################################
-. /etc/profile
+. /usr/lib/openelec/imx6-system-type
if [ "$SYSTEM_TYPE" != "matrix" ]; then
echo "Only for TBS Matrix system."
- exit 1
+ exit 12
fi
fan_on() {
diff --git a/packages/sysutils/imx6-soc-fan/package.mk b/packages/sysutils/imx6-soc-fan/package.mk
index f7a2797720..6b9f440957 100644
--- a/packages/sysutils/imx6-soc-fan/package.mk
+++ b/packages/sysutils/imx6-soc-fan/package.mk
@@ -23,7 +23,7 @@ PKG_ARCH="arm"
PKG_LICENSE="GPL"
PKG_SITE="http://www.openelec.tv/"
PKG_URL=""
-PKG_DEPENDS_TARGET=""
+PKG_DEPENDS_TARGET="imx6-status-led"
PKG_PRIORITY="optional"
PKG_SECTION="system"
PKG_SHORTDESC="i.MX6 SoC fan monitor"
@@ -37,9 +37,13 @@ make_target() {
makeinstall_target() {
mkdir -p $INSTALL/usr/config
- cp -PR $PKG_DIR/config/* $INSTALL/usr/config
+ cp $PKG_DIR/config/* $INSTALL/usr/config
+
mkdir -p $INSTALL/usr/bin
- cp -PR $PKG_DIR/bin/* $INSTALL/usr/bin
+ cp $PKG_DIR/bin/* $INSTALL/usr/bin
+
+ mkdir -p $INSTALL/usr/lib/openelec
+ cp $PKG_DIR/scripts/* $INSTALL/usr/lib/openelec
}
post_install() {
diff --git a/packages/sysutils/imx6-soc-fan/bin/imx6-soc-fan-monitor b/packages/sysutils/imx6-soc-fan/scripts/imx6-soc-fan-monitor
similarity index 97%
rename from packages/sysutils/imx6-soc-fan/bin/imx6-soc-fan-monitor
rename to packages/sysutils/imx6-soc-fan/scripts/imx6-soc-fan-monitor
index ee7e7e8088..c27fa246a2 100755
--- a/packages/sysutils/imx6-soc-fan/bin/imx6-soc-fan-monitor
+++ b/packages/sysutils/imx6-soc-fan/scripts/imx6-soc-fan-monitor
@@ -18,11 +18,11 @@
# along with OpenELEC. If not, see .
################################################################################
-. /etc/profile
+. /usr/lib/openelec/imx6-system-type
if [ "$SYSTEM_TYPE" != "matrix" ]; then
echo "Only for TBS Matrix system."
- exit 1
+ exit 12
fi
debug_echo() {
diff --git a/packages/sysutils/imx6-soc-fan/system.d/imx6-soc-fan-monitor.service b/packages/sysutils/imx6-soc-fan/system.d/imx6-soc-fan-monitor.service
index c88407a688..5311b9ab5f 100644
--- a/packages/sysutils/imx6-soc-fan/system.d/imx6-soc-fan-monitor.service
+++ b/packages/sysutils/imx6-soc-fan/system.d/imx6-soc-fan-monitor.service
@@ -2,7 +2,12 @@
Description=i.MX6 SoC fan monitor service
[Service]
-ExecStart=/usr/bin/imx6-soc-fan-monitor
+ExecStart=/bin/sh -c "exec /bin/sh /usr/lib/openelec/imx6-soc-fan-monitor"
+RestartPreventExitStatus=12
+TimeoutStopSec=5
+Restart=always
+RestartSec=60
+StartLimitInterval=0
[Install]
WantedBy=multi-user.target
diff --git a/packages/sysutils/imx6-status-led/package.mk b/packages/sysutils/imx6-status-led/package.mk
index 1eb9424486..7b89e4c5ee 100644
--- a/packages/sysutils/imx6-status-led/package.mk
+++ b/packages/sysutils/imx6-status-led/package.mk
@@ -36,8 +36,8 @@ make_target() {
}
makeinstall_target() {
- mkdir -p $INSTALL/usr/bin
- cp -PR $PKG_DIR/bin/* $INSTALL/usr/bin
+ mkdir -p $INSTALL/usr/lib/openelec
+ cp $PKG_DIR/scripts/* $INSTALL/usr/lib/openelec
}
post_install() {
diff --git a/packages/sysutils/imx6-status-led/bin/imx6-status-led b/packages/sysutils/imx6-status-led/scripts/imx6-status-led
similarity index 85%
rename from packages/sysutils/imx6-status-led/bin/imx6-status-led
rename to packages/sysutils/imx6-status-led/scripts/imx6-status-led
index fb1af9f557..46e08d58cb 100755
--- a/packages/sysutils/imx6-status-led/bin/imx6-status-led
+++ b/packages/sysutils/imx6-status-led/scripts/imx6-status-led
@@ -18,7 +18,7 @@
# along with OpenELEC. If not, see .
################################################################################
-. /etc/profile
+. /usr/lib/openelec/imx6-system-type
case "$1" in
"on")
@@ -28,22 +28,21 @@ case "$1" in
TRIGGER=heartbeat
;;
*)
- TRIGGER=""
+ exit 0
;;
esac
case "$SYSTEM_TYPE" in
"matrix")
- LED=/sys/class/leds/red/trigger
+ LED="/sys/class/leds/red/trigger"
;;
"cuboxi")
- LED=/sys/class/leds/imx6\:red\:front/trigger
+ LED="/sys/class/leds/imx6:red:front/trigger"
;;
*)
- LED=""
+ exit 0
;;
esac
-if [ -n "$TRIGGER" -a -n "$LED" ]; then
- echo $TRIGGER > $LED
-fi
+echo "$TRIGGER" > "$LED"
+
diff --git a/packages/sysutils/imx6-status-led/profile.d/01-system_type.conf b/packages/sysutils/imx6-status-led/scripts/imx6-system-type
old mode 100644
new mode 100755
similarity index 91%
rename from packages/sysutils/imx6-status-led/profile.d/01-system_type.conf
rename to packages/sysutils/imx6-status-led/scripts/imx6-system-type
index c7ffb66634..9da8729e8a
--- a/packages/sysutils/imx6-status-led/profile.d/01-system_type.conf
+++ b/packages/sysutils/imx6-status-led/scripts/imx6-system-type
@@ -42,9 +42,3 @@ case "$SYSTEM_TYPE" in
export SYSTEM_TYPE="undef"
;;
esac
-
-# don't make from initramfs (no touch there)
-if [ -e /bin/touch ]; then
- mkdir -p /var/run
- touch /var/run/system_type_$SYSTEM_TYPE
-fi
diff --git a/packages/sysutils/imx6-status-led/system.d/imx6-status-led.service b/packages/sysutils/imx6-status-led/system.d/imx6-status-led.service
index ab51a5e49c..f04bd3eafe 100644
--- a/packages/sysutils/imx6-status-led/system.d/imx6-status-led.service
+++ b/packages/sysutils/imx6-status-led/system.d/imx6-status-led.service
@@ -1,11 +1,11 @@
[Unit]
-Description=i.MX6 status LED service
+Description=i.MX6 status led
After=kodi.service
[Service]
Type=oneshot
-ExecStart=-/bin/sh -c "/usr/bin/imx6-status-led on"
-ExecStop=-/bin/sh -c "/usr/bin/imx6-status-led heartbeat"
+ExecStart=-/bin/sh -c "/usr/lib/openelec/imx6-status-led on"
+ExecStop=-/bin/sh -c "/usr/lib/openelec/imx6-status-led heartbeat"
RemainAfterExit=yes
[Install]
diff --git a/packages/tools/u-boot/scripts/update.sh b/packages/tools/u-boot/scripts/update.sh
index c9ac4c4436..71a5582a94 100755
--- a/packages/tools/u-boot/scripts/update.sh
+++ b/packages/tools/u-boot/scripts/update.sh
@@ -32,11 +32,9 @@ if [ -z "$BOOT_DISK" ]; then
esac
fi
-# we don't have mounted /etc in initramfs so just load system type
-if [ -f $SYSTEM_ROOT/etc/profile.d/01-system_type.conf ]; then
- . $SYSTEM_ROOT/etc/profile.d/01-system_type.conf
-else
- SYSTEM_TYPE=""
+SYSTEM_TYPE=""
+if [ -f $SYSTEM_ROOT/usr/lib/openelec/imx6-system-type ]; then
+ . $SYSTEM_ROOT/usr/lib/openelec/imx6-system-type
fi
# mount $BOOT_ROOT r/w