mirror of
https://git.yoctoproject.org/poky
synced 2026-09-13 00:49:33 +02:00
With udev 152 or greater the default action for 'udevadm trigger' was modified to be 'change' instead of 'add. To ensure initial coldplug events at boot are seen be scripts the are expecting them as 'add' events we invoke udevadm with an explicit '--action=add'. (From OE-Core rev: eacafd21999ab37b60af29dc3e626c441716ef66) (From OE-Core rev: c90e1c91efc721eb6910cd3244b7671b63a341b6) Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
1.7 KiB
1.7 KiB
#!/bin/sh -e
BEGIN INIT INFO
Provides: udev
Required-Start: mountvirtfs
Required-Stop:
Default-Start: S
Default-Stop:
Short-Description: Start udevd, populate /dev and load drivers.
END INIT INFO
export TZ=/etc/localtime
[ -d /sys/class ] || exit 1 [ -r /proc/mounts ] || exit 1 [ -x /sbin/udevd ] || exit 1 [ -f /etc/udev/udev.conf ] && . /etc/udev/udev.conf
kill_udevd() {
if [ -x /sbin/pidof ]; then
pid=/sbin/pidof -x udevd
[ -n "$pid" ] && kill $pid
fi
}
export ACTION=add
propagate /dev from /sys
echo -n "Starting udev"
mount the tmpfs on /dev, if not already done
LANG=C awk "$2 == "/dev" && $4 == "tmpfs" { exit 1 }" /proc/mounts && { mount -n -o mode=0755 -t tmpfs none "/dev" mkdir -m 0755 /dev/pts mkdir -m 1777 /dev/shm }
if [ -e /etc/dev.tar ]; then (cd /; tar xf /etc/dev.tar 2>&1 | grep -v 'time stamp' || true) not_first_boot=1 fi
make_extra_nodes
kill_udevd > "/dev/null" 2>&1
# trigger the sorted events
echo -e '\000\000\000\000' > /proc/sys/kernel/hotplug
/sbin/udevd -d
/sbin/udevadm control --env=STARTUP=1
if [ "$not_first_boot" != "" ];then
/sbin/udevadm trigger --action=add --subsystem-nomatch=tty --subsystem-nomatch=mem --subsystem-nomatch=vc --subsystem-nomatch=vtconsole --subsystem-nomatch=misc --subsystem-nomatch=dcon --subsystem-nomatch=pci_bus --subsystem-nomatch=graphics --subsystem-nomatch=backlight --subsystem-nomatch=video4linux --subsystem-nomatch=platform
(/sbin/udevadm settle --timeout=3; /sbin/udevadm control --env=STARTUP=)&
else
/sbin/udevadm trigger --action=add
/sbin/udevadm settle
fi
echo exit 0