virtio_blk: always start if found

Change-Id: Iec70c67e1b675297b5ffb800a9fb263feffa9271
This commit is contained in:
Ben Gras 2013-05-15 15:45:33 +00:00
parent 1e1ff96aea
commit e8681e9929
4 changed files with 21 additions and 2 deletions

View file

@ -29,7 +29,7 @@ ETC= system.conf master.passwd
EXTRA= rc EXTRA= rc
PROTO_FILES= proto.common.etc proto.common.dynamic proto.dev PROTO_FILES= proto.common.etc proto.common.dynamic proto.dev
PROG_DRIVERS= PROG_DRIVERS=
PROG_COMMANDS= mount fsck.mfs sh service loadramdisk sysenv PROG_COMMANDS= mount umount grep fsck.mfs sh service loadramdisk sysenv
PROG_SERVERS= mfs procfs PROG_SERVERS= mfs procfs
PROG_BIN= PROG_BIN=
PROG_SBIN= PROG_SBIN=

View file

@ -10,6 +10,8 @@ d--755 0 0
fsck.mfs ---755 0 0 fsck.mfs fsck.mfs ---755 0 0 fsck.mfs
#endif #endif
mount ---755 0 0 mount mount ---755 0 0 mount
umount ---755 0 0 umount
grep ---755 0 0 grep
sh ---755 0 0 sh sh ---755 0 0 sh
service ---755 0 0 service service ---755 0 0 service
$ $
@ -42,6 +44,8 @@ d--755 0 0
#endif #endif
$ $
$ $
proc d--755 0 0
$
dev d--755 0 0 dev d--755 0 0
#include "proto.dev" #include "proto.dev"
$ $

View file

@ -1,4 +1,5 @@
etc d--755 0 0 etc d--755 0 0
mtab s--555 2 1 /proc/mounts
system.conf ---644 0 0 system.conf system.conf ---644 0 0 system.conf
passwd ---644 0 0 passwd passwd ---644 0 0 passwd
pwd.db ---644 0 0 pwd.db pwd.db ---644 0 0 pwd.db

16
drivers/ramdisk/rc Executable file → Normal file
View file

@ -14,18 +14,32 @@ then if [ -e $ACPI -a -n "`sysenv acpi`" ]
/bin/service -c up $ACPI /bin/service -c up $ACPI
fi fi
/bin/service -c up /usr/sbin/pci /bin/service -c up /usr/sbin/pci
# Start procfs so we can access /proc/pci
mount -t procfs none /proc >/dev/null
# Do we want to use the virtio block device?
# If not specified, default to yes if the device is found.
if /bin/sysenv virtio_blk >/dev/null
then virtio_blk="`/bin/sysenv virtio_blk`"
elif grep '^[^ ]* [^ ]* 1AF4:1001 ' /proc/pci >/dev/null
then echo "virtio_blk not set, defaulting to using found virtio device."
virtio_blk=yes
fi
/bin/service -cn up /sbin/floppy -dev /dev/fd0 /bin/service -cn up /sbin/floppy -dev /dev/fd0
if [ X`/bin/sysenv ahci` = Xyes ] if [ X`/bin/sysenv ahci` = Xyes ]
then then
# this is here temporarily, for testing purposes # this is here temporarily, for testing purposes
/bin/service -c up /sbin/ahci -dev /dev/c0d0 -label ahci_0 -args instance=0 /bin/service -c up /sbin/ahci -dev /dev/c0d0 -label ahci_0 -args instance=0
elif [ X`/bin/sysenv virtio_blk` = Xyes ] elif [ X"$virtio_blk" = Xyes ]
then then
/bin/service -c up /sbin/virtio_blk -dev /dev/c0d0 -label virtio_blk_0 -args instance=0 /bin/service -c up /sbin/virtio_blk -dev /dev/c0d0 -label virtio_blk_0 -args instance=0
else else
/bin/service -c up /sbin/at_wini -dev /dev/c0d0 -label at_wini_0 /bin/service -c up /sbin/at_wini -dev /dev/c0d0 -label at_wini_0
/bin/service -cr up /sbin/at_wini -dev /dev/c1d0 -label at_wini_1 -args instance=1 /bin/service -cr up /sbin/at_wini -dev /dev/c1d0 -label at_wini_1 -args instance=1
fi fi
/bin/umount /proc >/dev/null
fi fi
if [ X`/bin/sysenv arch` = Xearm ] if [ X`/bin/sysenv arch` = Xearm ]