diff options
author | Scott Murray <scott.murray@konsulko.com> | 2019-11-06 16:14:57 -0500 |
---|---|---|
committer | Scott Murray <scott.murray@konsulko.com> | 2019-11-06 21:08:14 +0000 |
commit | 3fe7f283824a7afb6ffe22a904d57b28a9b69a72 (patch) | |
tree | 4d556ba9486bc6ca7af6ed0169ea2ab402075093 | |
parent | c4f32fa3c22b15a513c5ba0907b1927f6db53a61 (diff) |
Update LIN demo to use lin-config
Changes include:
- Add patch to fix lin-config recipe build QA error.
- Tweak lin-config recipe to install lin_config as executable.
- Rework sllin-demo systemd unit and start_lin_demo.sh script to use
lin_config with an appropriate configuration file that enables
polling of the steering wheel adapter instead of just using
ldattach.
Bug-AGL: SPEC-2918
Change-Id: I3258b7e34cecbbb1cfb93ea6f63a44f0bbb2c06f
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
-rw-r--r-- | recipes-kernel/sllin/files/lin_config.conf | 10 | ||||
-rw-r--r-- | recipes-kernel/sllin/files/sllin-demo.service | 6 | ||||
-rw-r--r--[-rwxr-xr-x] | recipes-kernel/sllin/files/start_lin_demo.sh | 7 | ||||
-rw-r--r-- | recipes-kernel/sllin/sllin.bb | 7 | ||||
-rw-r--r-- | recipes-support/lin-config/files/0002-Change-Makefile-to-use-LDFLAGS.patch | 20 | ||||
-rw-r--r-- | recipes-support/lin-config/lin-config_git.bb | 8 |
6 files changed, 47 insertions, 11 deletions
diff --git a/recipes-kernel/sllin/files/lin_config.conf b/recipes-kernel/sllin/files/lin_config.conf new file mode 100644 index 000000000..9775b8b39 --- /dev/null +++ b/recipes-kernel/sllin/files/lin_config.conf @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!--PCAN-LIN CT profile.--> +<PCLIN_PROFILE Version="1"> + <LIN Group="2"> + <Scheduler_Entries Count="1"> + <!-- Poll steering wheel adapter at address 0x21 every 100 ms --> + <Entry Time="100">33</Entry> + </Scheduler_Entries> + </LIN> +</PCLIN_PROFILE> diff --git a/recipes-kernel/sllin/files/sllin-demo.service b/recipes-kernel/sllin/files/sllin-demo.service index 7eb6cfac4..2f2f5ac23 100644 --- a/recipes-kernel/sllin/files/sllin-demo.service +++ b/recipes-kernel/sllin/files/sllin-demo.service @@ -1,13 +1,13 @@ [Unit] -Description = LIN DEMO startup +Description=LIN demo configuration +ConditionPathExists=/dev/ttyUSB0 After=afm-system-daemon.service [Service] Type=forking -PIDFile=/var/run/lin_ldattach +PIDFile=/var/run/lin_config.pid ExecStart=/usr/bin/start_lin_demo.sh RemainAfterExit=yes - [Install] WantedBy=multi-user.target diff --git a/recipes-kernel/sllin/files/start_lin_demo.sh b/recipes-kernel/sllin/files/start_lin_demo.sh index 741189fb7..4fcfcc6d2 100755..100644 --- a/recipes-kernel/sllin/files/start_lin_demo.sh +++ b/recipes-kernel/sllin/files/start_lin_demo.sh @@ -1,10 +1,13 @@ #!/bin/sh +# Attach serial LIN->CAN bridge and set up LIN polling sleep 1 -ldattach 25 /dev/ttySC3 -pidof ldattach > /var/run/lin_ldattach +/usr/bin/lin_config -c /etc/lin_config.conf -a sllin:/dev/ttyUSB0 +pidof lin_config > /var/run/lin_config.pid sleep 1 ip link set sllin0 up + +# Initialize HVAC controller usleep 100000 cansend sllin0 030# usleep 100000 diff --git a/recipes-kernel/sllin/sllin.bb b/recipes-kernel/sllin/sllin.bb index 6213fd967..0478b21a7 100644 --- a/recipes-kernel/sllin/sllin.bb +++ b/recipes-kernel/sllin/sllin.bb @@ -19,6 +19,7 @@ SRC_URI_append = " \ file://0001-Disable-sllin-driver-debug-log.patch;pnum=2 \ file://sllin-demo.service \ file://start_lin_demo.sh \ + file://lin_config.conf \ " KERNEL_MODULE_AUTOLOAD_append = " sllin" @@ -34,6 +35,10 @@ do_install_append () { install -m 755 ${WORKDIR}/start_lin_demo.sh ${D}/${bindir}/start_lin_demo.sh install -d ${D}${systemd_system_unitdir} install -m 0644 ${WORKDIR}/sllin-demo.service ${D}${systemd_system_unitdir}/ + install -d ${D}${sysconfdir} + install -m 0644 ${WORKDIR}/lin_config.conf ${D}${sysconfdir}/ } -FILES_${PN}_append = " ${bindir}/start_lin_demo.sh" +FILES_${PN} += "${bindir}/start_lin_demo.sh ${sysconfdir}/lin_config.conf" + +RDEPENDS_${PN} += "lin-config" diff --git a/recipes-support/lin-config/files/0002-Change-Makefile-to-use-LDFLAGS.patch b/recipes-support/lin-config/files/0002-Change-Makefile-to-use-LDFLAGS.patch new file mode 100644 index 000000000..26364455a --- /dev/null +++ b/recipes-support/lin-config/files/0002-Change-Makefile-to-use-LDFLAGS.patch @@ -0,0 +1,20 @@ +Use LDFLAGS when linking + +Use LDFLAGS when linking the output binary to quiet QA warnings due to +missing link flags. + +Upstream-Status: Pending + +Signed-off-by: Scott Murray <scott.murray@konsulko.com> + +--- a/Makefile 2019-11-05 11:08:11.060565285 +0000 ++++ b/Makefile 2019-11-05 11:09:38.663570084 +0000 +@@ -6,7 +6,7 @@ + objects = linc_parse_xml.o pcl_config.o sllin_config.o lin_config.o + + lin_config: $(objects) +- $(CC) $(objects) $(LIBS) -o lin_config ++ $(CC) $(LDFLAGS) $(objects) $(LIBS) -o lin_config + + %.o : %.c %.h + $(CC) $(CFLAGS) $(LIBS) -c $< -o $@ diff --git a/recipes-support/lin-config/lin-config_git.bb b/recipes-support/lin-config/lin-config_git.bb index 6c8db847d..e83f71606 100644 --- a/recipes-support/lin-config/lin-config_git.bb +++ b/recipes-support/lin-config/lin-config_git.bb @@ -2,7 +2,6 @@ DESCRIPTION = "lin-config tool for the sllin driver module" LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6" - DEPENDS += "libnl libxml2" SRC_URI = "git://github.com/trainman419/linux-lin.git;protocol=https" @@ -11,17 +10,16 @@ S = "${WORKDIR}/git/lin_config/src" SRC_URI_append = " \ file://0001-Change-Makefile-to-use-pkg-config-for-libxml-2.0.patch \ + file://0002-Change-Makefile-to-use-LDFLAGS.patch \ " inherit pkgconfig PV = "0.1+git${SRCPV}" - do_configure[noexec] = "1" do_install_append() { - install -d ${D}/${bindir} - install -m 644 ${S}/lin_config ${D}/${bindir} -}
\ No newline at end of file + install -m 755 ${S}/lin_config ${D}/${bindir} +} |