Re: [meta-arago][scarthgap][PATCH] udev-aragoconf: aggregate generic udev rules

Ryan Eatmon <[email protected]>
Newsgroups org.yoctoproject.lists.meta-arago
Message-ID <[email protected]>
Should there be a master series for this same change?


On 11/7/2025 7:17 PM, [email protected] wrote:
> From: Randolph Sapp <[email protected]>
> 
> These udev rules are specific to TI platforms and should not be
> appending to the main systemd or eudev package. Split them into a
> separate udev-aragoconf package to reduce duplication and cut down on
> appended content.
> 
> Signed-off-by: Randolph Sapp <[email protected]>
> ---
>   .../packagegroups/packagegroup-arago-base.bb  |  1 +
>   .../recipes-core/systemd/systemd-arago.inc    | 27 ----------------
>   .../systemd/systemd/usb1-rules.sh             |  3 --
>   .../systemd/systemd/usb2-rules.sh             |  3 --
>   .../recipes-core/udev/eudev-arago.inc         | 22 -------------
>   .../udev/eudev/dra7xx/udev-cache.default      |  5 ---
>   .../udev/eudev/keystone/udev-cache.default    |  5 ---
>   .../recipes-core/udev/eudev/local.rules       | 26 ---------------
>   .../recipes-core/udev/eudev_%.bbappend        |  4 ---
>   .../udev-aragoconf}/37-can-am62.rules         |  0
>   .../udev-aragoconf}/37-can-dra7.rules         |  0
>   .../udev-aragoconf}/37-can-j7.rules           |  0
>   .../udev-aragoconf}/37-can-ti33x.rules        |  0
>   .../udev-aragoconf/50-arago.rules}            |  0
>   .../{eudev => udev-aragoconf}/usb1-rules.sh   |  0
>   .../{eudev => udev-aragoconf}/usb2-rules.sh   |  0
>   .../recipes-core/udev/udev-aragoconf_1.bb     | 32 +++++++++++++++++++
>   17 files changed, 33 insertions(+), 95 deletions(-)
>   delete mode 100755 meta-arago-distro/recipes-core/systemd/systemd/usb1-rules.sh
>   delete mode 100755 meta-arago-distro/recipes-core/systemd/systemd/usb2-rules.sh
>   delete mode 100644 meta-arago-distro/recipes-core/udev/eudev-arago.inc
>   delete mode 100644 meta-arago-distro/recipes-core/udev/eudev/dra7xx/udev-cache.default
>   delete mode 100644 meta-arago-distro/recipes-core/udev/eudev/keystone/udev-cache.default
>   delete mode 100644 meta-arago-distro/recipes-core/udev/eudev/local.rules
>   delete mode 100644 meta-arago-distro/recipes-core/udev/eudev_%.bbappend
>   rename meta-arago-distro/recipes-core/{systemd/systemd => udev/udev-aragoconf}/37-can-am62.rules (100%)
>   rename meta-arago-distro/recipes-core/{systemd/systemd => udev/udev-aragoconf}/37-can-dra7.rules (100%)
>   rename meta-arago-distro/recipes-core/{systemd/systemd => udev/udev-aragoconf}/37-can-j7.rules (100%)
>   rename meta-arago-distro/recipes-core/{systemd/systemd => udev/udev-aragoconf}/37-can-ti33x.rules (100%)
>   rename meta-arago-distro/recipes-core/{systemd/systemd/local.rules => udev/udev-aragoconf/50-arago.rules} (100%)
>   rename meta-arago-distro/recipes-core/udev/{eudev => udev-aragoconf}/usb1-rules.sh (100%)
>   rename meta-arago-distro/recipes-core/udev/{eudev => udev-aragoconf}/usb2-rules.sh (100%)
>   create mode 100644 meta-arago-distro/recipes-core/udev/udev-aragoconf_1.bb
> 
> diff --git a/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-base.bb b/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-base.bb
> index 5cb4e30c..e27a9ca2 100644
> --- a/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-base.bb
> +++ b/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-base.bb
> @@ -22,6 +22,7 @@ ARAGO_BASE = "\
>       bash \
>       opkg-bash-completion \
>       udev-extraconf \
> +    udev-aragoconf \
>       libgpiod \
>       libgpiod-tools \
>   "
> diff --git a/meta-arago-distro/recipes-core/systemd/systemd-arago.inc b/meta-arago-distro/recipes-core/systemd/systemd-arago.inc
> index 44889345..0aac3c7b 100644
> --- a/meta-arago-distro/recipes-core/systemd/systemd-arago.inc
> +++ b/meta-arago-distro/recipes-core/systemd/systemd-arago.inc
> @@ -3,28 +3,14 @@ PR:append = ".arago7"
>   FILESEXTRAPATHS:prepend := "${THISDIR}/systemd:"
>   
>   SRC_URI:append = " \
> -    file://local.rules \
> -    file://usb1-rules.sh \
> -    file://usb2-rules.sh \
>       file://10-eth.network \
>       file://15-eth.network \
>       file://30-wlan.network \
>       file://60-usb.network \
>       file://timesyncd.conf \
> -    file://37-can-j7.rules \
> -    file://37-can-am62.rules \
> -    file://37-can-dra7.rules \
> -    file://37-can-ti33x.rules \
>   "
>   
>   do_install:append() {
> -    install -d ${D}${sysconfdir}/udev/rules.d/
> -    install -m 0644 ${WORKDIR}/local.rules ${D}${sysconfdir}/udev/rules.d/
> -
> -    install -d ${D}${sysconfdir}/udev/scripts/
> -    install -m 0755 ${WORKDIR}/usb1-rules.sh ${D}${sysconfdir}/udev/scripts/
> -    install -m 0755 ${WORKDIR}/usb2-rules.sh ${D}${sysconfdir}/udev/scripts/
> -
>       install -d ${D}${sysconfdir}/systemd/network/
>       install -m 0644 ${WORKDIR}/10-eth.network ${D}${sysconfdir}/systemd/network/
>       install -m 0644 ${WORKDIR}/15-eth.network ${D}${sysconfdir}/systemd/network/
> @@ -41,17 +27,4 @@ do_install:append() {
>   
>       install -d ${D}${sysconfdir}/systemd/
>       install -m 0644 ${WORKDIR}/timesyncd.conf ${D}${sysconfdir}/systemd/
> -
> -    install -d ${D}${libdir}/udev/rules.d
> -    install -m 0644 ${WORKDIR}/37-can-j7.rules ${D}${libdir}/udev/rules.d/
> -    install -m 0644 ${WORKDIR}/37-can-am62.rules ${D}${libdir}/udev/rules.d/
> -    install -m 0644 ${WORKDIR}/37-can-dra7.rules ${D}${libdir}/udev/rules.d/
> -    install -m 0644 ${WORKDIR}/37-can-ti33x.rules ${D}${libdir}/udev/rules.d/
>   }
> -
> -FILES:udev += " \
> -    ${libdir}/udev/rules.d/37-can-j7.rules \
> -    ${libdir}/udev/rules.d/37-can-am62.rules \
> -    ${libdir}/udev/rules.d/37-can-dra7.rules \
> -    ${libdir}/udev/rules.d/37-can-ti33x.rules \
> -"
> diff --git a/meta-arago-distro/recipes-core/systemd/systemd/usb1-rules.sh b/meta-arago-distro/recipes-core/systemd/systemd/usb1-rules.sh
> deleted file mode 100755
> index 68e83511..00000000
> --- a/meta-arago-distro/recipes-core/systemd/systemd/usb1-rules.sh
> +++ /dev/null
> @@ -1,3 +0,0 @@
> -#!/bin/sh
> -/sbin/modprobe g_ncm -r
> -/sbin/modprobe g_ncm
> diff --git a/meta-arago-distro/recipes-core/systemd/systemd/usb2-rules.sh b/meta-arago-distro/recipes-core/systemd/systemd/usb2-rules.sh
> deleted file mode 100755
> index 97071264..00000000
> --- a/meta-arago-distro/recipes-core/systemd/systemd/usb2-rules.sh
> +++ /dev/null
> @@ -1,3 +0,0 @@
> -#!/bin/sh
> -/sbin/modprobe g_zero -r
> -/sbin/modprobe g_zero
> diff --git a/meta-arago-distro/recipes-core/udev/eudev-arago.inc b/meta-arago-distro/recipes-core/udev/eudev-arago.inc
> deleted file mode 100644
> index b0c44b17..00000000
> --- a/meta-arago-distro/recipes-core/udev/eudev-arago.inc
> +++ /dev/null
> @@ -1,22 +0,0 @@
> -# This fixes an issue with touchscreens not being detected with the default
> -# local.rules.  This can be removed when this change is picked up and
> -# meta-arago switches to Dora
> -
> -# look for files in this layer first
> -FILESEXTRAPATHS:prepend := "${THISDIR}/eudev:"
> -
> -PR:append = ".arago5"
> -
> -PACKAGE_ARCH = "${MACHINE_ARCH}"
> -
> -SRC_URI:append = " \
> -                  file://usb1-rules.sh \
> -                  file://usb2-rules.sh"
> -
> -do_install:append() {
> -    install -d ${D}/${bindir}
> -
> -    install -m 0755 ${WORKDIR}/usb1-rules.sh ${D}${bindir}/usb1-rules.sh
> -    install -m 0755 ${WORKDIR}/usb2-rules.sh ${D}${bindir}/usb2-rules.sh
> -    ln -sf libudev.so.1 ${D}${base_libdir}/libudev.so.0
> -}
> diff --git a/meta-arago-distro/recipes-core/udev/eudev/dra7xx/udev-cache.default b/meta-arago-distro/recipes-core/udev/eudev/dra7xx/udev-cache.default
> deleted file mode 100644
> index b1aa63f8..00000000
> --- a/meta-arago-distro/recipes-core/udev/eudev/dra7xx/udev-cache.default
> +++ /dev/null
> @@ -1,5 +0,0 @@
> -# Default for /etc/init.d/udev
> -
> -# Comment this out to disable device cache
> -#DEVCACHE="/etc/dev.tar"
> -PROBE_PLATFORM_BUS="yes"
> diff --git a/meta-arago-distro/recipes-core/udev/eudev/keystone/udev-cache.default b/meta-arago-distro/recipes-core/udev/eudev/keystone/udev-cache.default
> deleted file mode 100644
> index b1aa63f8..00000000
> --- a/meta-arago-distro/recipes-core/udev/eudev/keystone/udev-cache.default
> +++ /dev/null
> @@ -1,5 +0,0 @@
> -# Default for /etc/init.d/udev
> -
> -# Comment this out to disable device cache
> -#DEVCACHE="/etc/dev.tar"
> -PROBE_PLATFORM_BUS="yes"
> diff --git a/meta-arago-distro/recipes-core/udev/eudev/local.rules b/meta-arago-distro/recipes-core/udev/eudev/local.rules
> deleted file mode 100644
> index f14352d5..00000000
> --- a/meta-arago-distro/recipes-core/udev/eudev/local.rules
> +++ /dev/null
> @@ -1,26 +0,0 @@
> -# There are a number of modifiers that are allowed to be used in some
> -# of the different fields. They provide the following subsitutions:
> -#
> -# %n the "kernel number" of the device.
> -#    For example, 'sda3' has a "kernel number" of '3'
> -# %e the smallest number for that name which does not matches an existing node
> -# %k the kernel name for the device
> -# %M the kernel major number for the device
> -# %m the kernel minor number for the device
> -# %b the bus id for the device
> -# %c the string returned by the PROGRAM
> -# %s{filename} the content of a sysfs attribute
> -# %% the '%' char itself
> -#
> -
> -# Try and modprobe for drivers for new hardware
> -ACTION=="add", DEVPATH=="/devices/*", ENV{MODALIAS}=="?*", RUN{builtin}+="kmod load $env{MODALIAS}"
> -
> -# Create a symlink to any touchscreen input device
> -SUBSYSTEM=="input", KERNEL=="event[0-9]*", ENV{ID_INPUT_TOUCHSCREEN}=="1", SYMLINK+="input/touchscreen0"
> -
> -# Auto-mount any SD cards
> -ACTION=="add", KERNEL=="mmcblk[0-9]p[0-9]", SUBSYSTEM=="block", RUN+="/etc/udev/scripts/mount.sh"
> -ACTION=="remove", KERNEL=="mmcblk[0-9]p[0-9]", SUBSYSTEM=="block", RUN+="/etc/udev/scripts/mount.sh"
> -ACTION=="add", DEVPATH=="/devices/44000000\.ocp/48880000\.omap_dwc3_1/48890000\.usb/udc*", RUN+="/usr/bin/usb1-rules.sh"
> -ACTION=="add", DEVPATH=="/devices/44000000\.ocp/488c0000\.omap_dwc3_2/488d0000\.usb/udc*", RUN+="/usr/bin/usb2-rules.sh"
> diff --git a/meta-arago-distro/recipes-core/udev/eudev_%.bbappend b/meta-arago-distro/recipes-core/udev/eudev_%.bbappend
> deleted file mode 100644
> index 51afb053..00000000
> --- a/meta-arago-distro/recipes-core/udev/eudev_%.bbappend
> +++ /dev/null
> @@ -1,4 +0,0 @@
> -EUDEV_ARAGO = ""
> -EUDEV_ARAGO:arago = "eudev-arago.inc"
> -
> -require ${EUDEV_ARAGO}
> diff --git a/meta-arago-distro/recipes-core/systemd/systemd/37-can-am62.rules b/meta-arago-distro/recipes-core/udev/udev-aragoconf/37-can-am62.rules
> similarity index 100%
> rename from meta-arago-distro/recipes-core/systemd/systemd/37-can-am62.rules
> rename to meta-arago-distro/recipes-core/udev/udev-aragoconf/37-can-am62.rules
> diff --git a/meta-arago-distro/recipes-core/systemd/systemd/37-can-dra7.rules b/meta-arago-distro/recipes-core/udev/udev-aragoconf/37-can-dra7.rules
> similarity index 100%
> rename from meta-arago-distro/recipes-core/systemd/systemd/37-can-dra7.rules
> rename to meta-arago-distro/recipes-core/udev/udev-aragoconf/37-can-dra7.rules
> diff --git a/meta-arago-distro/recipes-core/systemd/systemd/37-can-j7.rules b/meta-arago-distro/recipes-core/udev/udev-aragoconf/37-can-j7.rules
> similarity index 100%
> rename from meta-arago-distro/recipes-core/systemd/systemd/37-can-j7.rules
> rename to meta-arago-distro/recipes-core/udev/udev-aragoconf/37-can-j7.rules
> diff --git a/meta-arago-distro/recipes-core/systemd/systemd/37-can-ti33x.rules b/meta-arago-distro/recipes-core/udev/udev-aragoconf/37-can-ti33x.rules
> similarity index 100%
> rename from meta-arago-distro/recipes-core/systemd/systemd/37-can-ti33x.rules
> rename to meta-arago-distro/recipes-core/udev/udev-aragoconf/37-can-ti33x.rules
> diff --git a/meta-arago-distro/recipes-core/systemd/systemd/local.rules b/meta-arago-distro/recipes-core/udev/udev-aragoconf/50-arago.rules
> similarity index 100%
> rename from meta-arago-distro/recipes-core/systemd/systemd/local.rules
> rename to meta-arago-distro/recipes-core/udev/udev-aragoconf/50-arago.rules
> diff --git a/meta-arago-distro/recipes-core/udev/eudev/usb1-rules.sh b/meta-arago-distro/recipes-core/udev/udev-aragoconf/usb1-rules.sh
> similarity index 100%
> rename from meta-arago-distro/recipes-core/udev/eudev/usb1-rules.sh
> rename to meta-arago-distro/recipes-core/udev/udev-aragoconf/usb1-rules.sh
> diff --git a/meta-arago-distro/recipes-core/udev/eudev/usb2-rules.sh b/meta-arago-distro/recipes-core/udev/udev-aragoconf/usb2-rules.sh
> similarity index 100%
> rename from meta-arago-distro/recipes-core/udev/eudev/usb2-rules.sh
> rename to meta-arago-distro/recipes-core/udev/udev-aragoconf/usb2-rules.sh
> diff --git a/meta-arago-distro/recipes-core/udev/udev-aragoconf_1.bb b/meta-arago-distro/recipes-core/udev/udev-aragoconf_1.bb
> new file mode 100644
> index 00000000..c1ffa663
> --- /dev/null
> +++ b/meta-arago-distro/recipes-core/udev/udev-aragoconf_1.bb
> @@ -0,0 +1,32 @@
> +SUMMARY = "Udev rules for assorted TI SoCs"
> +LICENSE = "MIT"
> +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
> +
> +inherit bin_package
> +
> +SRC_URI = " \
> +    file://usb1-rules.sh \
> +    file://usb2-rules.sh \
> +    file://50-arago.rules \
> +    file://37-can-j7.rules \
> +    file://37-can-am62.rules \
> +    file://37-can-dra7.rules \
> +    file://37-can-ti33x.rules \
> +"
> +
> +S = "${WORKDIR}"
> +
> +do_install() {
> +    install -d ${D}${sysconfdir}/udev/scripts
> +    install -m 0755 ${WORKDIR}/usb1-rules.sh ${D}${sysconfdir}/udev/scripts/usb1-rules.sh
> +    install -m 0755 ${WORKDIR}/usb2-rules.sh ${D}${sysconfdir}/udev/scripts/usb2-rules.sh
> +
> +    install -d ${D}${libdir}/udev/rules.d
> +    install -m 0644 ${WORKDIR}/50-arago.rules ${D}${libdir}/udev/rules.d/
> +    install -m 0644 ${WORKDIR}/37-can-j7.rules ${D}${libdir}/udev/rules.d/
> +    install -m 0644 ${WORKDIR}/37-can-am62.rules ${D}${libdir}/udev/rules.d/
> +    install -m 0644 ${WORKDIR}/37-can-dra7.rules ${D}${libdir}/udev/rules.d/
> +    install -m 0644 ${WORKDIR}/37-can-ti33x.rules ${D}${libdir}/udev/rules.d/
> +}
> +
> +RDEPENDS:${PN} = "udev udev-extraconf"

-- 
Ryan Eatmon                [email protected]
-----------------------------------------
Texas Instruments, Inc.  -  LCPD  -  MGTS
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.