Author: sparky
Date: Sun Jan 15 20:11:39 2006
New Revision: 6814

Modified:
   ppcrcd/trunk/Makefile
   ppcrcd/trunk/initrd.dir/linuxrc
Log:
- put some more modules to initrd


Modified: ppcrcd/trunk/Makefile
==============================================================================
--- ppcrcd/trunk/Makefile       (original)
+++ ppcrcd/trunk/Makefile       Sun Jan 15 20:11:39 2006
@@ -7,7 +7,8 @@
 BCOND = --without python --without smp --without doc
 CFLAGS = -Os -fsigned-char -falign-loops=0 -falign-jumps=0 -falign-functions=0
 
-INITRDMODULES = via82cxxx ide-generic cdrom ide-cd isofs nls_base
+INITRDMODULES = scsi_mod sd_mod sr_mod via82cxxx ide-generic \
+               cdrom ide-cd isofs nls_base
 
 R = out/rpm/rpms
 P = out/rpm/prep

Modified: ppcrcd/trunk/initrd.dir/linuxrc
==============================================================================
--- ppcrcd/trunk/initrd.dir/linuxrc     (original)
+++ ppcrcd/trunk/initrd.dir/linuxrc     Sun Jan 15 20:11:39 2006
@@ -1,49 +1,65 @@
 #!/bin/sh
 #v: @_VERSION_@
 
-/bin/mount -n -t proc proc /proc
-/bin/awk '/debug/ { exit 0 }; { exit 1 }' /proc/cmdline && set -x
+# P - prefix (/initrd)
+P=""
+B="$P/bin"
+
+$B/mount -n -t proc proc /proc
+$B/awk '/debug/ { exit 0 }; { exit 1 }' /proc/cmdline && set -x
+
 
-### MEMTEST #####################################
 error() {
-       /bin/echo "ERROR: $*"
-       /bin/sh </dev/console >/dev/console 2>&1
+       $B/echo "ERROR: $*"
+       $B/sh <$P/dev/console >$P/dev/console 2>&1
+}
+
+modload() {
+       $B/insmod $P/lib/modules/$1.ko
 }
-               
-if /bin/awk '/memtest/ { exit 0 }; { exit 1 }' /proc/cmdline; then
-       /bin/echo "***** Preparing memtest *****"
-       /bin/echo "*** Loading modules"
-       for MOD in cdrom ide-cd nls_base isofs; do
-               /bin/insmod /lib/modules/$MOD.ko
+
+findcd() {
+       $B/echo "*** Loading modules"
+       for MOD in scsi_mod sd_mod via82cxxx ide-generic cdrom ide-cd sr_mod 
nls_base isofs; do
+               modload $MOD
        done
        
-       /bin/echo "*** Searching PPCRCD cdrom"
+       # check do we have cdrom info file
+       $B/test -e /proc/sys/dev/cdrom/info  || error "Can't find CDROM"
+       
+       $B/echo "*** Searching PPCRCD cdrom"
        # for each cd drive try to mount
-       DRIVES=`/bin/awk '/drive name:/ { gsub(/drive name:/,""); print }' 
/proc/sys/dev/cdrom/info`
+       DRIVES=`$B/awk '/drive name:/ { gsub(/drive name:/,""); print }' 
/proc/sys/dev/cdrom/info`
        for CD in $DRIVES; do
-               /bin/mount -n -t iso9660 /dev/$CD /media/ppcrcd -r
-               if /bin/test -f /media/ppcrcd/ppcrcd.sqf; then
-                       /bin/echo "    Found: /dev/$CD"
+               $B/mount -n -t iso9660 $P/dev/$CD /media/ppcrcd -r
+               if $B/test -f /media/ppcrcd/ppcrcd.sqf; then
+                       $B/echo "    Found: /dev/$CD"
                        break   # it's it !
                fi
-               /bin/umount /media/ppcrcd 2>/dev/null
+               $B/umount /media/ppcrcd 2>/dev/null
        done
 
-       /bin/echo "*** Preparing root filesystem"
-       /bin/test -f /media/ppcrcd/ppcrcd.sqf || error "Can't find CDROM"
+       $B/echo "*** Preparing root filesystem"
+       $B/test -f /media/ppcrcd/ppcrcd.sqf || error "Can't find CDROM"
+}
+
+### MEMTEST #####################################
+if $B/awk '/memtest/ { exit 0 }; { exit 1 }' /proc/cmdline; then
+       $B/echo "***** Preparing memtest *****"
+       
+       findcd
+       
        # prepare loop and mount
-       /bin/losetup /dev/loop0 /media/ppcrcd/ppcrcd.sqf || error "Can't setup 
loop device"
-       /bin/mount -n -t squashfs /dev/loop0 /rootfs -r || error "Can't mount 
loop device"
-       /bin/umount /proc
+       $B/losetup /dev/loop0 /media/ppcrcd/ppcrcd.sqf || error "Can't setup 
loop device"
+       $B/mount -n -t squashfs /dev/loop0 /rootfs -r || error "Can't mount 
loop device"
+       $B/umount /proc
        cd /rootfs
-       /bin/pivot_root . initrd
-       /bin/echo "*** Executing script"
+       $B/pivot_root . initrd
+       $B/echo "*** Executing script"
        exec /usr/sbin/chroot . /usr/lib/ppcrcd/memtest <dev/console 
>dev/console 2>&1
 fi
-unset error
 
-
-/bin/umount /proc
+$B/umount /proc
 
 ### NORMAL ######################################
 
@@ -53,62 +69,34 @@
 mkdir -p live initrd media/ppcrcd tmp proc boot lib bin usr sbin sys selinux
 
 
-/bin/initrd-busybox pivot_root . initrd
+$B/pivot_root . initrd
 # We're in !
 
-# Some /initrd/ definitions
-error() {
-       /initrd/bin/echo "ERROR: $*"
-       /initrd/bin/sh </initrd/dev/console >/initrd/dev/console 2>&1
-}
-modload() {
-       /initrd/bin/initrd-busybox insmod /initrd/lib/modules/$1.ko
-}
+P="/initrd"
+B="$P/bin"
 
 # We nead /proc
-/initrd/bin/initrd-busybox mount -n -t proc proc /proc
+$B/mount -n -t proc proc /proc
 
-# load modules for cd (what scsi neads ?)
-/initrd/bin/echo "*** Loading modules"
-modload cdrom
-modload ide-cd
-modload nls_base
-modload isofs
-
-# check do we have cdrom
-/initrd/bin/test -e /proc/sys/dev/cdrom/info  || error "Can't find CDROM"
-
-/initrd/bin/echo "*** Searching PPCRCD cdrom"
-# for each cd drive try to mount
-DRIVES=`/initrd/bin/awk '/drive name:/ { gsub(/drive name:/,""); print }' 
/proc/sys/dev/cdrom/info`
-for CD in $DRIVES; do
-       /initrd/bin/initrd-busybox mount -n -t iso9660 /initrd/dev/$CD 
/media/ppcrcd -r
-       if /initrd/bin/test -f /media/ppcrcd/ppcrcd.sqf; then
-               /initrd/bin/echo "    Found: /dev/$CD"
-               break   # it's it !
-       fi
-       /initrd/bin/initrd-busybox umount /media/ppcrcd 2>/initrd/dev/null
-done
+findcd
 
-/initrd/bin/echo "*** Preparing root filesystem"
-/initrd/bin/test -f /media/ppcrcd/ppcrcd.sqf || error "Can't find CDROM"
 # prepare loop and mount
-if /initrd/bin/awk "/tomempost/ { exit 0 }; { exit 1 }" /proc/cmdline; then
-       /initrd/bin/echo "*** Copying ppcrcd.sqf image"
-       /initrd/bin/cat /media/ppcrcd/ppcrcd.sqf > /ppcrcd.sqf
-       /initrd/bin/losetup /initrd/dev/loop7 /ppcrcd.sqf || error "Can't setup 
loop device"
+if $B/awk "/tomempost/ { exit 0 }; { exit 1 }" /proc/cmdline; then
+       $B/echo "*** Copying ppcrcd.sqf image"
+       $B/cat /media/ppcrcd/ppcrcd.sqf > /ppcrcd.sqf
+       $B/losetup $P/dev/loop7 /ppcrcd.sqf || error "Can't setup loop device"
        TOMEM="yes"
 else
-       /initrd/bin/losetup /initrd/dev/loop7 /media/ppcrcd/ppcrcd.sqf || error 
"Can't setup loop device"
+       $M/losetup $P/dev/loop7 /media/ppcrcd/ppcrcd.sqf || error "Can't setup 
loop device"
 fi
-/initrd/bin/initrd-busybox mount -n -t squashfs /initrd/dev/loop7 /live -r || 
error "Can't mount loop device"
+$B/ mount -n -t squashfs $P/dev/loop7 /live -r || error "Can't mount loop 
device"
 
 # link ro dirs
 for f in boot lib bin usr sbin; do
-  /initrd/bin/initrd-busybox mount -n -t none -o bind live/$f $f
+       $B/mount -n -t none -o bind live/$f $f
 done
 
-/initrd/bin/echo "*** Preparing RW directories"
+$B/echo "*** Preparing RW directories"
 # cp rw files
 cp -a /live/etc/skel /root
 chmod -R +w /root
@@ -122,7 +110,7 @@
 chmod -R +w /dev
 touch /fastboot
 
-if /initrd/bin/test -n "$TOMEM"; then
+if $B/test -n "$TOMEM"; then
        /bin/umount /media/ppcrcd
        /bin/rmdir /media/ppcrcd
 else
@@ -132,8 +120,8 @@
 /bin/mount -f /
 
 # stop ?
-/initrd/bin/awk "/stop/ { exit 0 }; { exit 1 }" /proc/cmdline && error "stop 
requested"
-/initrd/bin/initrd-busybox umount /proc
+$B/awk "/stop/ { exit 0 }; { exit 1 }" /proc/cmdline && error "stop requested"
+$B/umount /proc
 #/bin/umount /initrd
 #/sbin/blockdev --flushbufs /dev/ram0 >/dev/null 2>&1
 
_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to