summaryrefslogtreecommitdiffstats
path: root/poky/meta/recipes-core/initrdscripts/initramfs-framework/udev
diff options
context:
space:
mode:
Diffstat (limited to 'poky/meta/recipes-core/initrdscripts/initramfs-framework/udev')
-rw-r--r--poky/meta/recipes-core/initrdscripts/initramfs-framework/udev46
1 files changed, 46 insertions, 0 deletions
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-framework/udev b/poky/meta/recipes-core/initrdscripts/initramfs-framework/udev
new file mode 100644
index 000000000..79c886782
--- /dev/null
+++ b/poky/meta/recipes-core/initrdscripts/initramfs-framework/udev
@@ -0,0 +1,46 @@
+#!/bin/sh
+# Copyright (C) 2011, 2012 O.S. Systems Software LTDA.
+# Licensed on MIT
+
+udev_shutdown_hook_handler() {
+ status=$1
+ module=$2
+ if [ "$status" = "pre" ] && [ "$module" = "finish" ]; then
+ killall `basename $_UDEV_DAEMON` 2>/dev/null
+ fi
+}
+
+udev_daemon() {
+ OPTIONS="/sbin/udev/udevd /sbin/udevd /lib/udev/udevd /lib/systemd/systemd-udevd"
+
+ for o in $OPTIONS; do
+ if [ -x "$o" ]; then
+ echo $o
+ return 0
+ fi
+ done
+
+ return 1
+}
+
+_UDEV_DAEMON=`udev_daemon`
+
+udev_enabled() {
+ if [ -z "$_UDEV_DAEMON" ]; then
+ msg "WARNING: Cannot find the udev daemon; daemon will not be started in initramfs."
+ return 1
+ fi
+
+ return 0
+}
+
+udev_run() {
+ add_module_pre_hook "udev_shutdown_hook_handler"
+
+ mkdir -p /run
+ mkdir -p /var/run
+
+ $_UDEV_DAEMON --daemon
+ udevadm trigger --action=add
+ udevadm settle
+}
OpenPOWER on IntegriCloud