1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-30 12:29:55 +00:00

udev: Add start/stop/status/restart support to init script

[ CQID: WIND00388860 ]

Add the ability to use "stop", "start", "restart" and "status"
with the udev initscript.

(From OE-Core rev: bc6193824ec3eb1f3c590a93ccb79c8588b74412)

Signed-off-by: Jesse Zhang <sen.zhang@windriver.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Jesse Zhang
2013-01-26 17:16:26 +08:00
committed by Richard Purdie
parent 2e913bc62a
commit a38e4d91cf
2 changed files with 65 additions and 50 deletions
+27 -12
View File
@@ -9,6 +9,8 @@
# Short-Description: Start udevd, populate /dev and load drivers. # Short-Description: Start udevd, populate /dev and load drivers.
### END INIT INFO ### END INIT INFO
. /etc/init.d/functions
export TZ=/etc/localtime export TZ=/etc/localtime
[ -d /sys/class ] || exit 1 [ -d /sys/class ] || exit 1
@@ -27,11 +29,8 @@ readfile () {
fi fi
} }
kill_udevd() { case "$1" in
pid=`pidof -x udevd` start)
[ -n "$pid" ] && kill $pid
}
export ACTION=add export ACTION=add
# propagate /dev from /sys # propagate /dev from /sys
echo "Starting udev" echo "Starting udev"
@@ -68,19 +67,35 @@ if [ "$DEVCACHE" != "" ]; then
fi fi
# make_extra_nodes # make_extra_nodes
kill_udevd > "/dev/null" 2>&1 killproc udevd > "/dev/null" 2>&1
# trigger the sorted events # trigger the sorted events
echo -e '\000\000\000\000' > /proc/sys/kernel/hotplug echo -e '\000\000\000\000' > /proc/sys/kernel/hotplug
/lib/udev/udevd -d /lib/udev/udevd -d
/usr/bin/udevadm control --env=STARTUP=1 /usr/sbin/udevadm control --env=STARTUP=1
if [ "$not_first_boot" != "" ];then if [ "$not_first_boot" != "" ];then
/usr/bin/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 /usr/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
(/usr/bin/udevadm settle --timeout=3; /usr/bin/udevadm control --env=STARTUP=)& (/usr/sbin/udevadm settle --timeout=3; /sbin/udevadm control --env=STARTUP=)&
else else
/usr/bin/udevadm trigger --action=add /usr/sbin/udevadm trigger --action=add
/usr/bin/udevadm settle /usr/sbin/udevadm settle
fi fi
;;
stop)
echo "Stopping udevd"
start-stop-daemon --stop --name udevd --quiet
;;
restart)
$0 stop
sleep 1
$0 start
;;
status)
status udevd
;;
*)
echo "Usage: $0 {start|stop|status|restart}"
exit 1
esac
exit 0 exit 0
+1 -1
View File
@@ -1,6 +1,6 @@
include udev.inc include udev.inc
PR = "r4" PR = "r5"
# module-init-tools from kmod_git will provide libkmod runtime # module-init-tools from kmod_git will provide libkmod runtime
DEPENDS += "module-init-tools" DEPENDS += "module-init-tools"