[meta-freescale] [PATCH 08/14] systemd-gpuconfig: Implement GPU init as systemd service
Fabio Berton
fabio.berton at ossystems.com.br
Tue Oct 31 06:42:42 PDT 2017
Hi Tom!
On Thu, Oct 19, 2017 at 4:36 PM, Tom Hochstein <tom.hochstein at nxp.com>
wrote:
> Signed-off-by: Tom Hochstein <tom.hochstein at nxp.com>
> ---
> recipes-core/systemd/systemd-gpuconfig/gpuconfig | 19 +++++++++++++
> .../systemd/systemd-gpuconfig/gpuconfig.service | 8 ++++++
> recipes-core/systemd/systemd-gpuconfig_1.0.bb | 32
> ++++++++++++++++++++++
> 3 files changed, 59 insertions(+)
> create mode 100644 recipes-core/systemd/systemd-gpuconfig/gpuconfig
> create mode 100644 recipes-core/systemd/systemd-
> gpuconfig/gpuconfig.service
> create mode 100644 recipes-core/systemd/systemd-gpuconfig_1.0.bb
>
> diff --git a/recipes-core/systemd/systemd-gpuconfig/gpuconfig
> b/recipes-core/systemd/systemd-gpuconfig/gpuconfig
> new file mode 100644
> index 0000000..792ab6c
> --- /dev/null
> +++ b/recipes-core/systemd/systemd-gpuconfig/gpuconfig
> @@ -0,0 +1,19 @@
> +#!/bin/sh
> +CPUREV=$(cat /sys/devices/soc0/soc_id)
> +FILEVG=/usr/lib/libOpenVG.so
> +FILEVG3D=/usr/lib/libOpenVG.3d.so
> +FILEVG355=/usr/lib/libOpenVG.2d.so
> +if [ -e $FILEVG3D ] && [ -e $FILEVG355 ]
> +then
> + if [ -e $FILEVG ]
> + then
> + rm -f $FILEVG
> + fi
> + if [ $CPUREV == "i.MX6QP" ] || [ $CPUREV == "i.MX6Q" ] || [ $CPUREV ==
> "i.MX6SL" ]
> + then
> + # Use GC355 VG
> + ln -s $FILEVG355 $FILEVG
> + else
> + ln -s $FILEVG3D $FILEVG
> + fi
> +fi
> diff --git a/recipes-core/systemd/systemd-gpuconfig/gpuconfig.service
> b/recipes-core/systemd/systemd-gpuconfig/gpuconfig.service
> new file mode 100644
> index 0000000..9881e7c
> --- /dev/null
> +++ b/recipes-core/systemd/systemd-gpuconfig/gpuconfig.service
> @@ -0,0 +1,8 @@
> +[Unit]
> +Description=Configuration for i.MX GPU (Former rc_gpu.S)
> +
> +[Service]
> +ExecStart=/etc/gpuconfig
> +
> +[Install]
> +WantedBy=multi-user.target
> diff --git a/recipes-core/systemd/systemd-gpuconfig_1.0.bb
> b/recipes-core/systemd/systemd-gpuconfig_1.0.bb
> new file mode 100644
> index 0000000..0a5a75e
> --- /dev/null
> +++ b/recipes-core/systemd/systemd-gpuconfig_1.0.bb
> @@ -0,0 +1,32 @@
> +SUMMARY = "i.MX GPU Configuration for systemd boot mode"
> +DESCRIPTION = "Use systemd service to implement the former script
> rc_gpu.S and other scripts"
> +LICENSE = "GPLv2+"
> +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/
> files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
> +
> +SRC_URI = " file://gpuconfig \
> + file://gpuconfig.service \
> +"
> +S = "${WORKDIR}"
> +
>
Why not use systemd class here?
+RDEPENDS_${PN} = "systemd"
> +
> +do_install () {
> + install -d ${D}${sysconfdir}
> + install -d ${D}${systemd_unitdir}/system/
> + install -d ${D}${sysconfdir}/systemd/system/multi-user.target.wants/
> +
> + install -m 0755 ${WORKDIR}/gpuconfig ${D}${sysconfdir}
> + install -m 0644 ${WORKDIR}/gpuconfig.service
> ${D}${systemd_unitdir}/system
> +
> + # Enable the gpuconfig.service
> + ln -sf ${systemd_unitdir}/system/gpuconfig.service \
> + ${D}${sysconfdir}/systemd/system/multi-user.target.
> wants/gpuconfig.service
> +}
> +
> +FILES_${PN} = "${systemd_unitdir}/system/*.service ${sysconfdir}"
> +
> +# As this package is tied to systemd, only build it when we're also
> building systemd.
> +python () {
> + if not bb.utils.contains ('DISTRO_FEATURES', 'systemd', True, False,
> d):
> + raise bb.parse.SkipPackage("'systemd' not in DISTRO_FEATURES")
> +}
> --
> 1.9.1
>
> --
> _______________________________________________
> meta-freescale mailing list
> meta-freescale at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-freescale
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-freescale/attachments/20171031/bae79db9/attachment.html>
More information about the meta-freescale
mailing list