From 09f7eea74acda1a71b74ae38eee6ec5774b41ec4 Mon Sep 17 00:00:00 2001 From: Dominik Sliwa Date: Thu, 22 Dec 2016 11:28:52 +0100 Subject: linux-driver-package: Migrate init to systemd Migrate Nvidia init scripts to systemd. Signed-off-by: Dominik Sliwa Acked-by: Max Krummenacher --- .../binary-drivers/linux-driver-package/nv.service | 18 ++++++++++ .../linux-driver-package/nvfb.service | 17 ++++++++++ .../linux-driver-package_21.%.bbappend | 38 +++++++++++++++------- 3 files changed, 62 insertions(+), 11 deletions(-) create mode 100644 jetson-tk1/recipes-bsp/binary-drivers/linux-driver-package/nv.service create mode 100644 jetson-tk1/recipes-bsp/binary-drivers/linux-driver-package/nvfb.service (limited to 'jetson-tk1') diff --git a/jetson-tk1/recipes-bsp/binary-drivers/linux-driver-package/nv.service b/jetson-tk1/recipes-bsp/binary-drivers/linux-driver-package/nv.service new file mode 100644 index 0000000..99c8c28 --- /dev/null +++ b/jetson-tk1/recipes-bsp/binary-drivers/linux-driver-package/nv.service @@ -0,0 +1,18 @@ +[Unit] +Description=Nvidia binary driver init script +After=nvfb.service + +[Install] +WantedBy=multi-user.target + +[Service] +Type=forking +Restart=no +TimeoutSec=5min +IgnoreSIGPIPE=no +KillMode=process +GuessMainPID=no +RemainAfterExit=yes +ExecStart=/usr/bin/nv start +ExecStop=/usr/bin/nv stop + diff --git a/jetson-tk1/recipes-bsp/binary-drivers/linux-driver-package/nvfb.service b/jetson-tk1/recipes-bsp/binary-drivers/linux-driver-package/nvfb.service new file mode 100644 index 0000000..deb8d97 --- /dev/null +++ b/jetson-tk1/recipes-bsp/binary-drivers/linux-driver-package/nvfb.service @@ -0,0 +1,17 @@ +[Unit] +Description=Nvidia binary driver first-boot script +Before=nv.service + +[Install] +WantedBy=multi-user.target + +[Service] +Type=forking +Restart=no +TimeoutSec=5min +IgnoreSIGPIPE=no +KillMode=process +GuessMainPID=no +RemainAfterExit=yes +ExecStart=/usr/bin/nvfb start +ExecStop=/usr/bin/nvfb stop diff --git a/jetson-tk1/recipes-bsp/binary-drivers/linux-driver-package_21.%.bbappend b/jetson-tk1/recipes-bsp/binary-drivers/linux-driver-package_21.%.bbappend index 9952398..acb2cae 100644 --- a/jetson-tk1/recipes-bsp/binary-drivers/linux-driver-package_21.%.bbappend +++ b/jetson-tk1/recipes-bsp/binary-drivers/linux-driver-package_21.%.bbappend @@ -1,9 +1,15 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/linux-driver-package:" -SRC_URI_append_apalis-tk1 = " file://xorg.conf" +SRC_URI_append_apalis-tk1 = " file://xorg.conf \ + file://nvfb.service \ + file://nv.service" +inherit systemd do_install_append_apalis-tk1 () { cp ${WORKDIR}/xorg.conf ${D}/etc/X11/ + install -d ${D}${systemd_unitdir}/system/ + install -m 0755 ${WORKDIR}/nvfb.service ${D}${systemd_unitdir}/system + install -m 0755 ${WORKDIR}/nv.service ${D}${systemd_unitdir}/system } # deploy additional binaries from the nv_gst_apps tarball @@ -15,15 +21,6 @@ RDEPENDS_${PN}-gst-gstnvvidconv = "libgstvideo-1.0" RDEPENDS_${PN}-nvgstjpeg = "libgstvideo-1.0" RDEPENDS_${PN}-nvgstapps = "libgstpbutils-1.0" -# create the sysv sysmlinks also if sysvinit is not in DISTRO_FEATURES -FILES_${PN}-boot += "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', '', ' ${sysconfdir}/rcS.d/*nv', d)}" -FILES_${PN}-firstboot += "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', '', ' ${sysconfdir}/rcS.d/*nvfb', d)}" -UPDATE_RC_CMD = "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', '', \ - ' update-rc.d -r ${D} ${INITSCRIPT_NAME_${PN}-boot} ${INITSCRIPT_PARAMS_${PN}-boot}; \ - update-rc.d -r ${D} ${INITSCRIPT_NAME_${PN}-firstboot} ${INITSCRIPT_PARAMS_${PN}-firstboot}; \ - ', d)}" - - FILES_${PN}-gstnvcamera = " \ ${libdir}/gstreamer-1.0/libgstnvcamera.so \ " @@ -38,6 +35,18 @@ FILES_${PN}-nvgstapps = " \ ${bindir}/nvgstplayer-1.0 \ ${docdir}/nvgst*README.txt \ " + +FILES_${PN}-boot = " \ + ${systemd_unitdir}/system/nv.service \ + ${bindir}/nv \ +" + +FILES_${PN}-firstboot = "\ + ${systemd_unitdir}/system/nvfb.service \ + ${bindir}/nvfb \ + ${sysconfdir}/nv/nvfirstboot \ +" + #no gnu_hash in NVIDIA binaries, skip QA dev-so for this package #we have symlinks ending in .so, skip QA ldflags for this package #inhibit warnings about files being stripped @@ -60,5 +69,12 @@ do_install_append () { install -m 0755 ${NV_SAMPLE}/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/libgstnvvidconv.so ${D}${libdir}/gstreamer-1.0 install -m 0755 ${NV_SAMPLE}/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/libnvgstjpeg.so ${D}${libdir}/gstreamer-1.0 - ${UPDATE_RC_CMD} + install -m 0755 ${WORKDIR}/nv ${D}${bindir} + install -m 0755 ${WORKDIR}/nvfb ${D}${bindir} + rm -rf ${D}${sysconfdir}/init.d/nvfb + rm -rf ${D}${sysconfdir}/init.d/nv } + +SYSTEMD_SERVICE_${PN} = "nvfb.service" +SYSTEMD_SERVICE_${PN} += " nv.service" + -- cgit v1.2.3