summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael-Luke Jones <mlj28@cam.ac.uk>2006-09-23 15:29:52 +0000
committerMichael-Luke Jones <mlj28@cam.ac.uk>2006-09-23 15:29:52 +0000
commit8e522075a2778058ef7477f4486b2f1badf1cd65 (patch)
treea16f3d1de9da1d2d5b170320826502f84d0b443c
parent45184c3c6fefe0d04d3821a712bb97f0fbca245a (diff)
slugos-init: Add scripts to autoload relevant modules
* Required for ixp4xx-kernel_2.6.18 and higher due to modularisation
-rw-r--r--packages/slugos-init/files/initscripts/loadmiscmod.sh12
-rw-r--r--packages/slugos-init/files/initscripts/loadnetmod.sh17
-rw-r--r--packages/slugos-init/files/initscripts/loadusbmod.sh20
-rw-r--r--packages/slugos-init/slugos-init_0.10.bb10
4 files changed, 57 insertions, 2 deletions
diff --git a/packages/slugos-init/files/initscripts/loadmiscmod.sh b/packages/slugos-init/files/initscripts/loadmiscmod.sh
new file mode 100644
index 0000000000..d2d09821f1
--- /dev/null
+++ b/packages/slugos-init/files/initscripts/loadmiscmod.sh
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+# This script is used for loading modules required for other purposes than
+# usb or networking
+
+# A way of finding which embedded board SlugOS is being run on is needed
+
+echo "Loading misc modules"
+modprobe ixp4xx_rng
+modprobe i2c_dev
+
+exit 0 \ No newline at end of file
diff --git a/packages/slugos-init/files/initscripts/loadnetmod.sh b/packages/slugos-init/files/initscripts/loadnetmod.sh
new file mode 100644
index 0000000000..eb8f3eb9dd
--- /dev/null
+++ b/packages/slugos-init/files/initscripts/loadnetmod.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+# This script is used for loading modules required for networking
+
+# A way of finding which embedded board SlugOS is being run on is needed
+
+echo "Loading networking modules"
+
+modprobe af_packet #Required for DHCP
+
+modprobe ixp4xx_npe
+sleep 1 #Allow Firmware Load
+
+#Conditional required: Not all IXP4xx boards use onboard MAC
+modprobe ixp4xx_mac
+
+exit 0 \ No newline at end of file
diff --git a/packages/slugos-init/files/initscripts/loadusbmod.sh b/packages/slugos-init/files/initscripts/loadusbmod.sh
new file mode 100644
index 0000000000..92866dcf6d
--- /dev/null
+++ b/packages/slugos-init/files/initscripts/loadusbmod.sh
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+# This script is used for loading modules required for usb storage devices
+# As this script is run very early in the boot process, insmod is used
+
+echo "Loading usb storage modules"
+insmod /lib/modules/2.6.18/kernel/drivers/scsi/scsi_mod.ko
+insmod /lib/modules/2.6.18/kernel/drivers/usb/core/usbcore.ko
+#Conditional required: NSLU2 has ohci/ehci but others have uhci/ehci
+insmod /lib/modules/2.6.18/kernel/drivers/usb/host/ohci-hcd.ko
+insmod /lib/modules/2.6.18/kernel/drivers/usb/host/ehci-hcd.ko
+insmod /lib/modules/2.6.18/kernel/drivers/usb/storage/usb-storage.ko
+
+echo "Loading ext2/3 support"
+insmod /lib/modules/2.6.18/kernel/fs/mbcache.ko
+insmod /lib/modules/2.6.18/kernel/fs/jbd/jbd.ko
+insmod /lib/modules/2.6.18/kernel/fs/ext2/ext2.ko
+insmod /lib/modules/2.6.18/kernel/fs/ext3/ext3.ko
+
+exit 0 \ No newline at end of file
diff --git a/packages/slugos-init/slugos-init_0.10.bb b/packages/slugos-init/slugos-init_0.10.bb
index 6a46eb49d7..0fe8860648 100644
--- a/packages/slugos-init/slugos-init_0.10.bb
+++ b/packages/slugos-init/slugos-init_0.10.bb
@@ -4,7 +4,7 @@ PRIORITY = "required"
LICENSE = "GPL"
DEPENDS = "base-files devio"
RDEPENDS = "busybox devio"
-PR = "r62"
+PR = "r63"
SRC_URI = "file://boot/flash \
file://boot/disk \
@@ -21,6 +21,9 @@ SRC_URI = "file://boot/flash \
file://initscripts/rmrecovery \
file://initscripts/sysconfsetup \
file://initscripts/umountinitrd.sh \
+ file://initscripts/loadusbmod.sh \
+ file://initscripts/loadnetmod.sh \
+ file://initscripts/loadmiscmod.sh \
file://functions \
file://conffiles \
file://sysconf \
@@ -37,7 +40,7 @@ SCRIPTS = "turnup reflash leds sysconf"
BOOTSCRIPTS = "flash disk nfs ram network udhcpc.script"
INITSCRIPTS = "syslog.buffer syslog.file syslog.network zleds\
leds_startup rmrecovery sysconfsetup umountinitrd.sh\
- fixfstab"
+ fixfstab loadusbmod.sh loadnetmod.sh loadmiscmod.sh"
# This just makes things easier...
S="${WORKDIR}"
@@ -120,11 +123,14 @@ do_install() {
pkg_postinst_slugos-init() {
opt=
test -n "$D" && opt="-r $D"
+ update-rc.d $opt loadusbmod.sh start 6 S .
update-rc.d $opt hwclock.sh start 8 S . start 45 0 6 .
update-rc.d $opt umountinitrd.sh start 9 S .
update-rc.d $opt fixfstab start 10 S .
update-rc.d $opt syslog.buffer start 11 S . start 49 0 6 .
update-rc.d $opt sysconfsetup start 12 S .
+ update-rc.d $opt loadnetmod.sh start 21 S .
+ update-rc.d $opt loadmiscmod.sh start 22 S .
update-rc.d $opt syslog.file start 39 S . start 47 0 6 .
update-rc.d $opt syslog.network start 44 S . start 39 0 6 .
update-rc.d $opt zleds start 99 S 1 2 3 4 5 . start 89 0 6 . stop 5 0 1 2 3 4 5 6 .