From 24ef989dac978c4d7867ee02ad3a941c58599bb4 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Tue, 5 Feb 2019 16:15:23 +0100 Subject: [PATCH] thud migration: update ModemManager recipe to use version 1.8.2 Remove git recipe to use the official 1.8.2 release and update udev rules file to blacklist the network interfaces that ModemManager must not manage. https://jira.digi.com/browse/DEL-6412 Signed-off-by: Arturo Buzarra --- .../ccimx6ul/80-mm-net-device-blacklist.rules | 17 +++++++ .../80-mm-net-device-blacklist.rules | 17 +++++++ .../modemmanager/modemmanager_%.bbappend | 4 ++ .../modemmanager/modemmanager_git.bb | 44 ------------------- 4 files changed, 38 insertions(+), 44 deletions(-) create mode 100755 meta-digi-dey/recipes-connectivity/modemmanager/modemmanager/ccimx6ul/80-mm-net-device-blacklist.rules create mode 100644 meta-digi-dey/recipes-connectivity/modemmanager/modemmanager/ccimx8x-sbc-pro/80-mm-net-device-blacklist.rules delete mode 100644 meta-digi-dey/recipes-connectivity/modemmanager/modemmanager_git.bb diff --git a/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager/ccimx6ul/80-mm-net-device-blacklist.rules b/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager/ccimx6ul/80-mm-net-device-blacklist.rules new file mode 100755 index 000000000..af2782e9c --- /dev/null +++ b/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager/ccimx6ul/80-mm-net-device-blacklist.rules @@ -0,0 +1,17 @@ +ACTION!="add|change|move|bind", GOTO="mm_net_device_blacklist_end" + +# ModemManager documentation states that the best practice is to use the DEVPATH +# this way rather than other rules such as KERNEL, so be careful when modifying + +# Remove CAN interfaces from ModemManager probing +SUBSYSTEM=="net", DEVPATH=="/devices/soc0/soc/2000000.aips-bus/2090000.flexcan*", ENV{ID_MM_CANDIDATE}="0", ENV{ID_MM_DEVICE_IGNORE}="1" +SUBSYSTEM=="net", DEVPATH=="/devices/soc0/soc/2000000.aips-bus/2094000.flexcan*", ENV{ID_MM_CANDIDATE}="0", ENV{ID_MM_DEVICE_IGNORE}="1" + +# Remove Ethernet interfaces from ModemManager probing +SUBSYSTEM=="net", DEVPATH=="/devices/soc0/soc/2000000.aips-bus/20b4000.ethernet*", ENV{ID_MM_CANDIDATE}="0", ENV{ID_MM_DEVICE_IGNORE}="1" +SUBSYSTEM=="net", DEVPATH=="/devices/soc0/soc/2100000.aips-bus/2188000.ethernet*", ENV{ID_MM_CANDIDATE}="0", ENV{ID_MM_DEVICE_IGNORE}="1" + +# Remove MMC interfaces from ModemManager probing +SUBSYSTEM=="net", DEVPATH=="/devices/soc0/soc/2100000.aips-bus/2190000.usdhc/mmc_host*", ENV{ID_MM_CANDIDATE}="0", ENV{ID_MM_DEVICE_IGNORE}="1" + +LABEL="mm_net_device_blacklist_end" diff --git a/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager/ccimx8x-sbc-pro/80-mm-net-device-blacklist.rules b/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager/ccimx8x-sbc-pro/80-mm-net-device-blacklist.rules new file mode 100644 index 000000000..ab9ef4e53 --- /dev/null +++ b/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager/ccimx8x-sbc-pro/80-mm-net-device-blacklist.rules @@ -0,0 +1,17 @@ +ACTION!="add|change|move|bind", GOTO="mm_net_device_blacklist_end" + +# ModemManager documentation states that the best practice is to use the DEVPATH +# this way rather than other rules such as KERNEL, so be careful when modifying + +# Remove CAN interfaces from ModemManager probing +SUBSYSTEM=="net", DEVPATH=="/devices/platform/5a8e0000.can*", ENV{ID_MM_CANDIDATE}="0", ENV{ID_MM_DEVICE_IGNORE}="1" +SUBSYSTEM=="net", DEVPATH=="/devices/platform/5a8f0000.can*", ENV{ID_MM_CANDIDATE}="0", ENV{ID_MM_DEVICE_IGNORE}="1" + +# Remove Ethernet interfaces from ModemManager probing +SUBSYSTEM=="net", DEVPATH=="/devices/platform/5b040000.ethernet*", ENV{ID_MM_CANDIDATE}="0", ENV{ID_MM_DEVICE_IGNORE}="1" +SUBSYSTEM=="net", DEVPATH=="/devices/platform/5b050000.ethernet*", ENV{ID_MM_CANDIDATE}="0", ENV{ID_MM_DEVICE_IGNORE}="1" + +# Remove PCIe interfaces from ModemManager probing +SUBSYSTEM=="net", DEVPATH=="/devices/platform/5f010000.pcie*", ENV{ID_MM_CANDIDATE}="0", ENV{ID_MM_DEVICE_IGNORE}="1" + +LABEL="mm_net_device_blacklist_end" diff --git a/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager_%.bbappend b/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager_%.bbappend index 1fe0adcf9..85afe616e 100644 --- a/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager_%.bbappend +++ b/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager_%.bbappend @@ -4,6 +4,7 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:" SRC_URI += " \ file://78-mm-digi-xbee-cellular.rules \ + file://80-mm-net-device-blacklist.rules \ " # 'polkit' depends on 'consolekit', and this requires 'x11' distro feature. So @@ -15,6 +16,9 @@ do_install_append() { # Install udev rules for XBee cellular install -d ${D}${nonarch_base_libdir}/udev/rules.d install -m 0644 ${WORKDIR}/78-mm-digi-xbee-cellular.rules ${D}${nonarch_base_libdir}/udev/rules.d/ + + # Install udev rules for ModemManager blacklist devices + install -m 0644 ${WORKDIR}/80-mm-net-device-blacklist.rules ${D}${nonarch_base_libdir}/udev/rules.d/ } PACKAGE_ARCH = "${MACHINE_ARCH}" diff --git a/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager_git.bb b/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager_git.bb deleted file mode 100644 index 4f47af1b8..000000000 --- a/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager_git.bb +++ /dev/null @@ -1,44 +0,0 @@ -SUMMARY = "ModemManager is a daemon controlling broadband devices/connections" -DESCRIPTION = "ModemManager is a DBus-activated daemon which controls mobile \ -broadband (2G/3G/4G) devices and connections" -HOMEPAGE = "http://www.freedesktop.org/wiki/Software/ModemManager/" -LICENSE = "GPL-2.0 & LGPL-2.1" -LIC_FILES_CHKSUM = " \ - file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \ -" - -DEPENDS = "glib-2.0 intltool-native libgudev libxslt-native" - -PV = "1.7.0+git${SRCPV}" - -SRC_URI = " \ - git://anongit.freedesktop.org/git/ModemManager/ModemManager.git;protocol=https \ - file://0001-configure.ac-add-foreign-automake-option.patch \ -" -SRCREV = "d41d717112e6a183a0df510c210e80a86fc11060" - -S = "${WORKDIR}/git" - -PACKAGECONFIG ??= "mbim qmi polkit \ - ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \ -" -PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_unitdir}/system/,," -PACKAGECONFIG[polkit] = "--with-polkit=yes,--with-polkit=no,polkit" -PACKAGECONFIG[mbim] = "--with-mbim,--enable-mbim=no,libmbim" -PACKAGECONFIG[qmi] = "--with-qmi,--without-qmi,libqmi" - -inherit autotools bash-completion gettext gobject-introspection gtk-doc pkgconfig systemd vala - -FILES_${PN} += " \ - ${datadir}/icons \ - ${datadir}/polkit-1 \ - ${datadir}/dbus-1 \ - ${libdir}/ModemManager \ - ${systemd_unitdir}/system \ -" -FILES_${PN}-dev += "${libdir}/ModemManager/*.la" -FILES_${PN}-staticdev += "${libdir}/ModemManager/*.a" -FILES_${PN}-dbg += "${libdir}/ModemManager/.debug" - -SYSTEMD_SERVICE_${PN} = "ModemManager.service"