ACPI=/usr/sbin/acpi
if [ X`/bin/sysenv arch` = Xi386 ]
-then if [ -e $ACPI -a -n "`sysenv acpi`" ]
+then
+ /bin/service -c up /usr/sbin/pci
+ /bin/service up /sbin/procfs || echo "WARNING: couldn't start procfs"
+ /bin/mount -e -n -t procfs none /proc || echo "WARNING: couldn't mount procfs"
+
+ # Do we want to use the virtio block device?
+ if grep '^[^ ]* [^ ]* 1AF4:1001 ' /proc/pci >/dev/null
+ then virtio_blk=yes
+ else virtio_blk="`/bin/sysenv virtio_blk`"
+ fi
+
+ if [ -e $ACPI -a -n "`sysenv acpi`" ]
then
/bin/service -c up $ACPI
fi
- /bin/service -c up /usr/sbin/pci
/bin/service -cn up /sbin/floppy -dev /dev/fd0
if [ X`/bin/sysenv ahci` = Xyes ]
then
# this is here temporarily, for testing purposes
/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
/bin/service -c up /sbin/virtio_blk -dev /dev/c0d0 -label virtio_blk_0 -args instance=0
else
/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
fi
+ /bin/umount /proc
+ /bin/service down procfs
fi
if [ X`/bin/sysenv arch` = Xearm ]