summaryrefslogtreecommitdiffstats
path: root/simple/simple_load
diff options
context:
space:
mode:
Diffstat (limited to 'simple/simple_load')
-rw-r--r--simple/simple_load26
1 files changed, 26 insertions, 0 deletions
diff --git a/simple/simple_load b/simple/simple_load
new file mode 100644
index 0000000..5cd004d
--- /dev/null
+++ b/simple/simple_load
@@ -0,0 +1,26 @@
+#!/bin/sh
+module="simple"
+device="simple"
+mode="664"
+
+# Group: since distributions do it differently, look for wheel or use staff
+if grep '^staff:' /etc/group > /dev/null; then
+ group="staff"
+else
+ group="wheel"
+fi
+
+# invoke insmod with all arguments we got
+# and use a pathname, as newer modutils don't look in . by default
+/sbin/insmod -f ./$module.ko $* || exit 1
+
+major=`cat /proc/devices | awk "\\$2==\"$module\" {print \\$1}"`
+
+# Remove stale nodes and replace them, then give gid and perms
+# Usually the script is shorter, it's simple that has several devices in it.
+
+rm -f /dev/${device}[rn]
+mknod /dev/${device}r c $major 0
+mknod /dev/${device}n c $major 1
+chgrp $group /dev/${device}[rn]
+chmod $mode /dev/${device}[rn]