----- Original Message -----
From: "Felipe Ribeiro" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Monday, December 12, 2005 4:50 AM
Subject: Re: [gentoo-amd64] Re: Kernel panic - not syncing: VFS: Unable to
mount root fs on unknown block(2,0)
and what about dma? when you use generic driver, can you enable it? it
always recognize my chipset as sis5513 :-(
i don't know, but your .config has generic 'idedma' choices selected
(defaults) so presumably you only lose special 5513 features by removing
5513 ide support.
<snip>
this discussion found at http://kerneltrap.org/node/4925 may be of help:
Ok, it seems that for some reason, sis5513.c doesn't reference the product
ID # for the sis5513 (go figure). Here is the code which specifies which IDs
to look for
(/usr/src/linux/drivers/ide/pci/sis5513.c):
/*
* Devices supported
*/
static const struct {
const char *name;
u16 host_id;
u8 chipset_family;
u8 flags;
} SiSHostChipInfo[] = {
{ "SiS745", PCI_DEVICE_ID_SI_745, ATA_100 },
{ "SiS735", PCI_DEVICE_ID_SI_735, ATA_100 },
{ "SiS733", PCI_DEVICE_ID_SI_733, ATA_100 },
{ "SiS635", PCI_DEVICE_ID_SI_635, ATA_100 },
{ "SiS633", PCI_DEVICE_ID_SI_633, ATA_100 },
{ "SiS730", PCI_DEVICE_ID_SI_730, ATA_100a },
{ "SiS550", PCI_DEVICE_ID_SI_550, ATA_100a },
{ "SiS640", PCI_DEVICE_ID_SI_640, ATA_66 },
{ "SiS630", PCI_DEVICE_ID_SI_630, ATA_66 },
{ "SiS620", PCI_DEVICE_ID_SI_620, ATA_66 },
{ "SiS540", PCI_DEVICE_ID_SI_540, ATA_66 },
{ "SiS530", PCI_DEVICE_ID_SI_530, ATA_66 },
{ "SiS5600", PCI_DEVICE_ID_SI_5600, ATA_33 },
{ "SiS5598", PCI_DEVICE_ID_SI_5598, ATA_33 },
{ "SiS5597", PCI_DEVICE_ID_SI_5597, ATA_33 },
{ "SiS5591/2", PCI_DEVICE_ID_SI_5591, ATA_33 },
{ "SiS5582", PCI_DEVICE_ID_SI_5582, ATA_33 },
{ "SiS5581", PCI_DEVICE_ID_SI_5581, ATA_33 },
{ "SiS5596", PCI_DEVICE_ID_SI_5596, ATA_16 },
{ "SiS5571", PCI_DEVICE_ID_SI_5571, ATA_16 },
{ "SiS551x", PCI_DEVICE_ID_SI_5511, ATA_16 },
};
---
One would assume that SiS551x would support the SiS5513 controller, but
apparenlty this isn't the case. The device ID for the 5513 controller
differs from that of the 5511 controller, so I have no idea why there is no
entry for the sis5513. Anyway, I used 'lspci -n' and double-checked that
against /usr/src/linux/include/linux/pci_ids.h. After that, I simply
appended this line to the SiSHostChipInfo[] structure right after the entry
for SiS551x:
{ "SiS5513", PCI_DEVICE_ID_SI_5513, ATA_16 },
It is really a simple solution and I'm surprised noone else has
noticed/posted it before. Perhaps I'm missing something or something. All I
know is that SIS5513 used to return -1 and now it seems to load properly and
my DMA is now enable-able :).
Feel free to let me know if it worked for you, maybe it will be added to the
kernel tree later or something.
[ reply ]
Hi sinthetek, What a g
Comment posted by Anonymous (not verified) on Thursday, May 12, 2005 - 00:52
Hi sinthetek,
What a great solution that I search for centuries. It's even better put
ATA_133 instead of ATA_16.
{ "SiS5513", PCI_DEVICE_ID_SI_5513, ATA_16 },
Gideon
--
[email protected] mailing list