[meta-ti] [rocko-next][PATCH v2] ti-ipc: Add systemd startup script

Sam Nelson sam.nelson at ti.com
Mon Sep 10 14:10:53 PDT 2018


With systemd enabled, it is better to add the proper systemd
script instead of legacy init.d script.

Signed-off-by: Sam Nelson <sam.nelson at ti.com>

---
Changes from previous version of patch
Remove PIDFile entries
---
---
 recipes-ti/ipc/ti-ipc/tiipclad-daemon.service |  9 +++++++++
 recipes-ti/ipc/ti-ipc_git.bb                  | 21 +++++++++++++++++----
 2 files changed, 26 insertions(+), 4 deletions(-)
 create mode 100644 recipes-ti/ipc/ti-ipc/tiipclad-daemon.service

diff --git a/recipes-ti/ipc/ti-ipc/tiipclad-daemon.service b/recipes-ti/ipc/ti-ipc/tiipclad-daemon.service
new file mode 100644
index 0000000..ea26845
--- /dev/null
+++ b/recipes-ti/ipc/ti-ipc/tiipclad-daemon.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=TI IPC Daemon
+
+[Service]
+Type=forking
+ExecStart=/usr/bin/__LAD_DAEMON__ -g -l lad.txt
+
+[Install]
+WantedBy=basic.target
diff --git a/recipes-ti/ipc/ti-ipc_git.bb b/recipes-ti/ipc/ti-ipc_git.bb
index 23b8d94..8b3ac91 100644
--- a/recipes-ti/ipc/ti-ipc_git.bb
+++ b/recipes-ti/ipc/ti-ipc_git.bb
@@ -4,12 +4,13 @@ HOMEPAGE="http://processors.wiki.ti.com/index.php/Category:IPC"
 require ti-ipc.inc
 require ti-ipc-common.inc
 
-PR = "${INC_PR}.1"
+PR = "${INC_PR}.2"
 
 DEPENDS += "virtual/kernel"
 
 SRC_URI += "file://tiipclad-daemon.sh \
             file://omap_remoteproc.conf \
+            file://tiipclad-daemon.service \
             file://0001-Add-kernel-build-dir.patch \
            "
 
@@ -23,11 +24,13 @@ DAEMON_k2g = "lad_66ak2g"
 DAEMON_omapl138 = "lad_omapl138"
 DAEMON_k3 = "lad_am65xx"
 
-inherit autotools-brokensep pkgconfig update-rc.d
+inherit autotools-brokensep pkgconfig update-rc.d systemd
 
 INITSCRIPT_NAME = "tiipclad-daemon.sh"
 INITSCRIPT_PARAMS = "defaults 10"
 
+SYSTEMD_SERVICE_${PN} = "tiipclad-daemon.service"
+
 EXTRA_OECONF += "PLATFORM=${PLATFORM} KERNEL_INSTALL_DIR=${STAGING_KERNEL_DIR} KERNEL_BUILD_DIR=${STAGING_KERNEL_BUILDDIR}"
 
 do_compile[depends] += "virtual/kernel:do_shared_workdir"
@@ -40,10 +43,20 @@ do_configure() {
 do_install_append() {
     install -d ${D}${sysconfdir}/init.d/
 
-    # Modify the tiipclad-daemon.sh script to point to the right
+    # Modify the startup scripts to point to the right
     # lad daemon executable.
     sed -i -e "s/__LAD_DAEMON__/${DAEMON}/" ${WORKDIR}/tiipclad-daemon.sh
-    install -c -m 755 ${WORKDIR}/tiipclad-daemon.sh ${D}${sysconfdir}/init.d/${INITSCRIPT_NAME}
+    sed -i -e "s/__LAD_DAEMON__/${DAEMON}/" ${WORKDIR}/tiipclad-daemon.service
+
+    systemd_enabled=${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '1', '0', d)}
+    if [ ${systemd_enabled} -eq 1 ]
+    then
+        install -d ${D}${systemd_system_unitdir}
+        install -m 0644 ${WORKDIR}/tiipclad-daemon.service ${D}${systemd_system_unitdir}
+    else
+        install -d ${D}${sysconfdir}/init.d/
+        install -c -m 755 ${S}/scripts/tiipclad-daemon.sh ${D}${sysconfdir}/init.d/${INITSCRIPT_NAME}
+    fi
 }
 
 do_install_append_dra7xx() {
-- 
1.9.1



More information about the meta-ti mailing list