# [solved] pc-engines wrap VFS: Cannot open root device

## vkp

hi

im trying to install gentoo on the pc-engines wrap board (semilar to alix)

problem:

```

VFS: Cannot open root device "sda3" or unknown-block(0,0)

Please append a correct "root=" boot option; here are the available partitions:

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

```

kernel is gentoo 2.6.39-r3

i configured the kernel to use the CS5530 pata driver (also tried generic and even the depricated ATA with genkernel wich gave me the emergency shell)

now i did a manual compile with everything built into the kernel

my fstab and grub uses /dev/sda

any ideas? or someone have an working wrap config?

also what would be the best way to go on the cpu? should i stick to 486 since the manufacturer says its an fast 486core or should i use the geodeGX1 option? and what about mmx support?Last edited by vkp on Fri Sep 02, 2011 9:16 pm; edited 1 time in total

----------

## NeddySeagoon

vkp,

Welcome to Gentoo.

The unknown-block(0,0) means that the kernel cannot communicate with the hard drive controller.

You are wither missing SCSI Disk support or your chip set support under the SATA menu.

----------

## vkp

scsi support is there, also the driver wich should be the CS5530 according to wikipedia

```

#

# SCSI device support

#

CONFIG_SCSI_MOD=y

# CONFIG_RAID_ATTRS is not set

CONFIG_SCSI=y

CONFIG_SCSI_DMA=y

# CONFIG_SCSI_TGT is not set

# CONFIG_SCSI_NETLINK is not set

CONFIG_SCSI_PROC_FS=y

#

# SCSI support type (disk, tape, CD-ROM)

#

CONFIG_BLK_DEV_SD=y

# CONFIG_CHR_DEV_ST is not set

# CONFIG_CHR_DEV_OSST is not set

CONFIG_BLK_DEV_SR=y

# CONFIG_BLK_DEV_SR_VENDOR is not set

CONFIG_CHR_DEV_SG=y

# CONFIG_CHR_DEV_SCH is not set

CONFIG_SCSI_MULTI_LUN=y

CONFIG_SCSI_CONSTANTS=y

# CONFIG_SCSI_LOGGING is not set

# CONFIG_SCSI_SCAN_ASYNC is not set

CONFIG_SCSI_WAIT_SCAN=m

#

# SCSI Transports

#

# CONFIG_SCSI_SPI_ATTRS is not set

# CONFIG_SCSI_FC_ATTRS is not set

# CONFIG_SCSI_ISCSI_ATTRS is not set

# CONFIG_SCSI_SAS_LIBSAS is not set

# CONFIG_SCSI_SRP_ATTRS is not set

# CONFIG_SCSI_LOWLEVEL is not set

# CONFIG_SCSI_DH is not set

# CONFIG_SCSI_OSD_INITIATOR is not set

CONFIG_ATA=y

# CONFIG_ATA_NONSTANDARD is not set

CONFIG_ATA_VERBOSE_ERROR=y

CONFIG_ATA_ACPI=y

# CONFIG_SATA_PMP is not set

#

# Controllers with non-SFF native interface

#

# CONFIG_SATA_AHCI is not set

# CONFIG_SATA_AHCI_PLATFORM is not set

# CONFIG_SATA_INIC162X is not set

# CONFIG_SATA_SIL24 is not set

CONFIG_ATA_SFF=y

#

# SFF controllers with custom DMA interface

#

# CONFIG_PDC_ADMA is not set

# CONFIG_SATA_QSTOR is not set

# CONFIG_SATA_SX4 is not set

CONFIG_ATA_BMDMA=y

#

# SATA SFF controllers with BMDMA

#

# CONFIG_ATA_PIIX is not set

# CONFIG_SATA_MV is not set

# CONFIG_SATA_NV is not set

# CONFIG_SATA_PROMISE is not set

# CONFIG_SATA_SIL is not set

# CONFIG_SATA_SIS is not set

# CONFIG_SATA_SVW is not set

# CONFIG_SATA_ULI is not set

# CONFIG_SATA_VIA is not set

# CONFIG_SATA_VITESSE is not set

#

# PATA SFF controllers with BMDMA

#

# CONFIG_PATA_ALI is not set

# CONFIG_PATA_AMD is not set

# CONFIG_PATA_ARTOP is not set

# CONFIG_PATA_ATIIXP is not set

# CONFIG_PATA_ATP867X is not set

# CONFIG_PATA_CMD64X is not set

# CONFIG_PATA_CS5520 is not set

CONFIG_PATA_CS5530=y

# CONFIG_PATA_CS5535 is not set

# CONFIG_PATA_CS5536 is not set

# CONFIG_PATA_CYPRESS is not set

# CONFIG_PATA_EFAR is not set

# CONFIG_PATA_HPT366 is not set

# CONFIG_PATA_HPT37X is not set

# CONFIG_PATA_HPT3X2N is not set

# CONFIG_PATA_HPT3X3 is not set

# CONFIG_PATA_IT8213 is not set

# CONFIG_PATA_IT821X is not set

# CONFIG_PATA_JMICRON is not set

# CONFIG_PATA_MARVELL is not set

# CONFIG_PATA_NETCELL is not set

# CONFIG_PATA_NINJA32 is not set

# CONFIG_PATA_NS87415 is not set

# CONFIG_PATA_OLDPIIX is not set

# CONFIG_PATA_OPTIDMA is not set

# CONFIG_PATA_PDC2027X is not set

# CONFIG_PATA_PDC_OLD is not set

# CONFIG_PATA_RADISYS is not set

# CONFIG_PATA_RDC is not set

# CONFIG_PATA_SC1200 is not set

# CONFIG_PATA_SCH is not set

# CONFIG_PATA_SERVERWORKS is not set

# CONFIG_PATA_SIL680 is not set

# CONFIG_PATA_SIS is not set

# CONFIG_PATA_TOSHIBA is not set

# CONFIG_PATA_TRIFLEX is not set

# CONFIG_PATA_VIA is not set

# CONFIG_PATA_WINBOND is not set

#

# PIO-only SFF controllers

#

# CONFIG_PATA_CMD640_PCI is not set

# CONFIG_PATA_MPIIX is not set

# CONFIG_PATA_NS87410 is not set

# CONFIG_PATA_OPTI is not set

# CONFIG_PATA_RZ1000 is not set

#

# Generic fallback / legacy drivers

#

# CONFIG_PATA_ACPI is not set

# CONFIG_ATA_GENERIC is not set

# CONFIG_PATA_LEGACY is not set

# CONFIG_MD is not set

# CONFIG_FUSION is not set

```

----------

## NeddySeagoon

vkp,

Why do you think you have a CS5530?

Does the board support lspci ?

Sight of the output of that command would be good.

----------

## vkp

wiki:

 *Quote:*   

> 
> 
> National Semiconductor/AMD SC1100 is based on the Cyrix GX1 core and the CS5530 support chip.
> 
> 

 

i cant do an lspci at the moment but from an older linux in the bootmesg i found (gd-ata generic-ata?)

i did a fresh config now with the default pata drivers:

```

VFS: Unable to mount root fs via NFS, trying floppy.

VFS: Cannot open root device "sda3" or unknown-block(2,0)

```

unknown-block(2,0) because of nfs?

maybe this helps

```

[    2.778789] Call Trace:

[    2.786481]  [<c1369c81>] panic+0x50/0x141

[    2.799140]  [<c14ebb60>] mount_block_root+0x161/0x170

[    2.814920]  [<c10b9996>] ? sys_mknod+0x13/0x15

[    2.828890]  [<c14ebc07>] mount_root+0x98/0xa0

[    2.842583]  [<c14ebd4f>] prepare_namespace+0x140/0x167

[    2.858682]  [<c14eb2fb>] kernel_init+0x123/0x131

[    2.873167]  [<c14eb1d8>] ? parse_early_options+0x1c/0x1c

[    2.889741]  [<c1370e76>] kernel_thread_helper+0x6/0xd

[    3.507428] Switched to NOHz mode on CPU #0

```

----------

## NeddySeagoon

vkp,

The kernel tries everything it knows to mount root when the root=... fails. unknown-block(2,0) is the first floppy drive.

The system will no longer boot with the old IDE drives as udev won't make any /dev/hda nodes.  It may mount root read only but will fail the root-fsck as /dev/hd...  can't be found.

Try the old generic driver under the SATA menu.

You also need the MSDOS Partition Table code built into the kernel, if you are using fdisk to partition your drives.

It used to be quite hard to turn this off but the menu its in is now open by default.

----------

## vkp

lspci:

```

00:00.0 Host bridge: Cyrix Corporation PCI Master

00:0e.0 Ethernet controller: National Semiconductor Corporation DP83815 (MacPhyter) Ethernet Controller

00:10.0 Ethernet controller: National Semiconductor Corporation DP83815 (MacPhyter) Ethernet Controller

00:12.0 ISA bridge: National Semiconductor Corporation SC1100 Bridge

00:12.1 Bridge: National Semiconductor Corporation SC1100 SMI & ACPI

00:12.2 IDE interface: National Semiconductor Corporation SCx200, SC1100 IDE controller (rev 01)

00:12.3 Multimedia audio controller: National Semiconductor Corporation SCx200, SC1100 Audio Controller

00:12.5 Bridge: National Semiconductor Corporation SC1100 XBus

```

got it boot up, i just compiled every driver in i thought that could be the one looks like it was the sc1200 (strange i had it in the genkernel included and it didnt work) so it looks like i didnt learn to much from this  :Smile: 

thanks for helping NeddySeagoon

----------

## NeddySeagoon

vkp,

If you are curious, you can do a binary search on the drivers.

Take half of them out of the kernel.  If the boot fails, swap halves.

If it still works, take half the remaining half out and so on ...

lspci -k will show the driver in use, which might be faster.

genkernel makes a fully modular kernel, then loads modules needed to boot from an initrd at boot time.

Maybe its a genkernel bug for your particular driver ?

----------

## vkp

looks like the sc1200 driver is the only one that works

```

ata1.00: configured for UDMA/33

ata1: lost interrupt (Status 0x50)

ata1.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen

ata1.00: failed command: READ DMA

```

libata.dma=0 gets rid of it, to bad no dma and a bit slow for an 3600rpm drive  :Sad: 

----------

## vkp

as i build up my system (comes along nicely)

i made some tweakings in the kernel and tried to optimize and figure out how things work and behave and somehow again the UDMA problem is gone, i changed so much that i cant really say what the problem was

maybe some pci-isa option. now the hdd runs at its UDMA33 and quick enough to be happy

as far as ive seen from gentoo its the dist of my choice, even some small things like ntp-client that syncs at startup and quits (wrap has no battery to save time) is like im starting to ask myself who developed from my dreams?  :Very Happy: 

----------

## andrea1987

o problemi con il kernel mi dice vfs not VFS: Cannot open root device "sda3" or unknown-block(0,0)...e o provato mille compilazioni ma niente da fare eppure con l'ltro kernel riuscivo !!

----------

## NeddySeagoon

andrea1987,

Welcome to Gentoo.

 *Google Translate wrote:*   

> or problems with the kernel tells me not VFS VFS: Can not open root device "sda3" or unknown-block (0.0) and either tried one thousand compilations ... but nothing to do with the lter kernel but I could!

 

The unknown-block (0.0) tells thay the kernel cannot communicate with the hard drive.  You can recompile the kernel as many times as you like but you must also install it and boot into it to see the effects.

One common problem I see here is that users do not install their new kernel properly, for many reasons, so they fix the orignal problem by rebuilding the kernel but never know it as they don't actually use the new kernel.

----------

## andrea1987

io onde evitare o configurato tutto il kernel ma neanke li non funzionava il fatto e ke mi dice che non trova il kernel nella posizione in qui io non lo messo !! potrebbe essere un problema legato al BIOS ?

----------

## NeddySeagoon

andrea1987,

Google translate does not help me.  Please post in English or in the Italian section of the forums.

I can pick out the word BIOS.  It is unlikely to be your BIOS if a bootable CD works.

----------

## andrea1987

o problemi con questo kernel non mi funziona e lo ricompilato un po di volte anke mettendo tutto e mi dice vfs cannot open root device "sda3" or unknow-blck (o,0)

please append a correct "root" boot option here the avaible partitions:

kernel panik - not syncing vfs unable to mount root fs on unknow-block(0,0)

----------

## NeddySeagoon

andrea1987,

```
unknow-block(0,0)
```

means your kernel cannot communicate with your hard drive.

Please post the output of 

```
lspci
```

There are the following reasons:-

1. The Partition Table code must be built in. <*> not <m>

Usually, MSDOS Partition Table

2. The SCSI Disk kernel option must be <*> not <M>

3. Your chipset driver on the SATA menu must be <*>, not <m>

I need your lspci to tell which option.

4. Your root filesystem type must be <*>, not <m>

Also, it is possible that you did not install your new kernel properly, so the old one is still being loaded.

----------

## MacGyver031

 *vkp wrote:*   

> hi
> 
> im trying to install gentoo on the pc-engines wrap board (semilar to alix)
> 
> 

 

I have two wrap and one alix board, I would also like to install gentoo on those boxes. Could you send me the image? or the howto link?

Thanks.

BR.

----------

## vkp

 *Quote:*   

> 
> 
> I have two wrap and one alix board, I would also like to install gentoo on those boxes. Could you send me the image? or the howto link? 
> 
> Thanks. 
> ...

 

hi

im using a microdrive (wich is a real harddiskdrive) instead of a compact flash so it may not the recomended way for you (limited read/write cycles)

1. i installed the handbook way

2. build the kernel on a separated machine running vmware (for hdd capacity & speed reasons)

2. setup the serial console in inittab and grub

for the wrap's:

you should use the i486 stage

in make.conf: "-O2 -march=pentium-mmx -pipe" or if you compile directly on the wrap or alix "-O2 -march=native"

i cant look at the kernel config now but as hdd select the scx1200 driver if you have problems with hdd interupt lost try "libata.dma=0" to get it bootup but its slow

----------

## MacGyver031

 *vkp wrote:*   

>  im using a microdrive 

 

Thanks. I am using flash-card and voyage. But I am looking for Gentoo solution on flash.

BR.

----------

## ddriver

 *MacGyver031 wrote:*   

>  *vkp wrote:*   hi
> 
> im trying to install gentoo on the pc-engines wrap board (semilar to alix)
> 
>  
> ...

 

I have an image that runs Gentoo on Alix. I have also just got hold of some Wrap boards and am modifying it to work on these too. I would be happy to share.

Edit: I now have my build working fine with the Wrap boards.

----------

