From edbf5a02126c8db32ba826e510459fbcb9a579e5 Mon Sep 17 00:00:00 2001 From: Michael-Luke Jones Date: Thu, 28 Sep 2006 11:43:57 +0000 Subject: slugos-init: improve module loading at boot --- packages/slugos-init/files/boot/disk | 19 ++++-------- packages/slugos-init/files/boot/ram | 13 --------- .../slugos-init/files/initscripts/loadmodules.sh | 34 +++------------------- 3 files changed, 10 insertions(+), 56 deletions(-) (limited to 'packages/slugos-init/files') diff --git a/packages/slugos-init/files/boot/disk b/packages/slugos-init/files/boot/disk index 02b8ee82cf..d0b093c602 100644 --- a/packages/slugos-init/files/boot/disk +++ b/packages/slugos-init/files/boot/disk @@ -8,22 +8,10 @@ export PATH=/sbin:/bin:/usr/sbin:/usr/bin # # Load the helper functions . /etc/default/functions +. /etc/default/modulefunctions # leds boot system # -# Load the required SCSI and USB modules 'by hand' -insmod /lib/modules/`uname -r`/kernel/drivers/scsi/scsi_mod.ko -insmod /lib/modules/`uname -r`/kernel/drivers/scsi/sd_mod.ko -insmod /lib/modules/`uname -r`/kernel/drivers/usb/core/usbcore.ko -# Add more cases here for different boards -case "$(machine)" in - nslu2) - insmod /lib/modules/`uname -r`/kernel/drivers/usb/host/ehci-hcd.ko - insmod /lib/modules/`uname -r`/kernel/drivers/usb/host/ohci-hcd.ko - ;; -esac -insmod /lib/modules/`uname -r`/kernel/drivers/usb/storage/usb-storage.ko -# if test -n "$1" then device="$1" @@ -35,6 +23,11 @@ then # # proc is needed for UUID mount mount -t proc proc /proc + # + # load USB & SCSI storage modules (/proc required!) + echo "boot: loading modules required for boot" + loadusbmods + # # Mount read-write because before exec'ing init # If a UUID is given (in the environment) this # is used in preference to the device, but if diff --git a/packages/slugos-init/files/boot/ram b/packages/slugos-init/files/boot/ram index 4729e16a78..a7c78b39ac 100644 --- a/packages/slugos-init/files/boot/ram +++ b/packages/slugos-init/files/boot/ram @@ -12,19 +12,6 @@ export PATH=/sbin:/bin:/usr/sbin:/usr/bin leds beep -r 2 leds boot system # -# Load the required SCSI and USB modules 'by hand' -insmod /lib/modules/`uname -r`/kernel/drivers/scsi/scsi_mod.ko -insmod /lib/modules/`uname -r`/kernel/drivers/scsi/sd_mod.ko -insmod /lib/modules/`uname -r`/kernel/drivers/usb/core/usbcore.ko -# Add more cases here for different boards -case "$(machine)" in - nslu2) - insmod /lib/modules/`uname -r`/kernel/drivers/usb/host/ehci-hcd.ko - insmod /lib/modules/`uname -r`/kernel/drivers/usb/host/ohci-hcd.ko - ;; -esac -insmod /lib/modules/`uname -r`/kernel/drivers/usb/storage/usb-storage.ko -# if test -n "$1" then device="$1" diff --git a/packages/slugos-init/files/initscripts/loadmodules.sh b/packages/slugos-init/files/initscripts/loadmodules.sh index f2b28d8868..1bc540a148 100644 --- a/packages/slugos-init/files/initscripts/loadmodules.sh +++ b/packages/slugos-init/files/initscripts/loadmodules.sh @@ -4,41 +4,15 @@ # Currently, this script only supports the NSLU2 . /etc/default/functions # Load $(machine) function required - -echo "Starting Network Processing Engines" -modprobe ixp4xx_npe -sleep 1 # Wait for firmware load +. /etc/default/modulefunctions echo "Loading networking modules" - -modprobe af_packet # Required for DHCP - -# Add nas100d/loft below when mac definition is added to kernel -case "$(machine)" in - ixdp425|nslu2) - modprobe ixp4xx_mac - ;; -esac - -# Add conditional DSM-G600 ethernet module load +loadnetmods echo "Loading usb storage modules" -modprobe scsi_mod -modprobe sd_mod -modprobe usbcore - -# Add more entries as appropriate -case "$(machine)" in - nslu2) - modprobe ohci_hcd - modprobe ehci_hcd - ;; -esac - -modprobe usb_storage +loadusbmods echo "Loading other modules" -modprobe ixp4xx_rng -modprobe i2c_dev +loadmiscmods exit 0 -- cgit v1.2.3