summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/udev/udev-115/init
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-core/udev/udev-115/init')
-rw-r--r--meta/recipes-core/udev/udev-115/init48
1 files changed, 48 insertions, 0 deletions
diff --git a/meta/recipes-core/udev/udev-115/init b/meta/recipes-core/udev/udev-115/init
new file mode 100644
index 0000000000..c882c75607
--- /dev/null
+++ b/meta/recipes-core/udev/udev-115/init
@@ -0,0 +1,48 @@
1export TZ=/etc/localtime
2
3[ -d /sys/class ] || exit 1
4[ -r /proc/mounts ] || exit 1
5[ -x /sbin/udevd ] || exit 1
6[ -f /etc/udev/udev.conf ] && . /etc/udev/udev.conf
7
8kill_udevd() {
9 if [ -x /sbin/pidof ]; then
10 pid=`/sbin/pidof -x udevd`
11 [ -n "$pid" ] && kill $pid
12 fi
13}
14
15export ACTION=add
16# propagate /dev from /sys
17echo -n "Starting udev"
18
19# mount the tmpfs on /dev, if not already done
20LANG=C awk "\$2 == \"/dev\" && \$4 == \"tmpfs\" { exit 1 }" /proc/mounts && {
21 mount -n -o mode=0755 -t tmpfs none "/dev"
22 mkdir -m 0755 /dev/pts
23 mkdir -m 0755 /dev/shm
24}
25
26if [ -e /etc/dev.tar ]; then
27 (cd /; tar xf /etc/dev.tar)
28 not_first_boot=1
29fi
30
31# make_extra_nodes
32kill_udevd > "/dev/null" 2>&1
33
34 # trigger the sorted events
35 echo -e '\000\000\000\000' > /proc/sys/kernel/hotplug
36 /sbin/udevd -d
37
38 /sbin/udevcontrol env STARTUP=1
39 if [ "$not_first_boot" != "" ];then
40 /sbin/udevtrigger --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
41 (/sbin/udevsettle --timeout=3; /sbin/udevcontrol env STARTUP=)&
42 else
43 /sbin/udevtrigger
44 /sbin/udevsettle
45 fi
46
47echo
48exit 0