Peter,
Your scanpci output shows pci class code 'RAID' for Sil3112 card.
Solarins does not support RAID in PATA/SATA legacy mode. Far a SATA
controller to be supported by Solaris, the scanpci -v should list the
class code 0x01 0x80 0x00. Since devices with such class code are
not supported, there is no driver attached to this controller hardware
node, hence 'prtconf -D' just shows the hardware node only.
Sil3112 is not a real, hardware RAID. The software RAID functionality
is provided by BIOS and by the OS drivers. To distinquish between
regular SATA usage and RAID mode usage (Silicon Image SATARaid), the
pci class code is switched
from 018000h to 010400h. For the same reason the pci id may be changed
from 3112 to 6112.
For the on-board Sil3112 SATA controllers the class code is set-up by
BIOS. Check BIOS options for and switch SATA controller mode to IDE
(rather than RAID) or something similar (the mode name may be
different then IDE). If there is no way to switch the mode, you are
out of luck.
Pawel
.
Hello,
Short version:
I have SiL 3112 cards that are listed as expected by scanpci -v, but the 3112
does not appear at all in "prtconf -D", only the 6112 RAID controller chipset
on the same card shows up.
Long version:
I have a machine with a SiL3512 in it that works fine. I needed four more SATA
disks so I purchased a 3114 which did not work (and I saw suggestions that it
only worked after flashing into legacy mode). I then purchased a couple of
SiL 3112 based controllers that I "knew" would work. Unfortunately they
don't.
The SiL 3112 is detected fine by scanpci -v:
pci bus 0x0000 cardnum 0x09 function 0x00: vendor 0x1095 device 0x3112
Silicon Image, Inc. SiI 3112 [SATALink/SATARaid] Serial ATA Controller
CardVendor 0x1095 card 0x6112 (Silicon Image, Inc. SiI 3112 SATARaid
Controller)
STATUS 0x02b0 COMMAND 0x0007
CLASS 0x01 0x04 0x00 REVISION 0x02
BIST 0x00 HEADER 0x00 LATENCY 0x20 CACHE 0x08
BASE0 0x0000d501 addr 0x0000d500 I/O
BASE1 0x0000d601 addr 0x0000d600 I/O
BASE2 0x0000d701 addr 0x0000d700 I/O
BASE3 0x0000d801 addr 0x0000d800 I/O
BASE4 0x0000d901 addr 0x0000d900 I/O
BASE5 0xee081000 addr 0xee081000 MEM
MAX_LAT 0x00 MIN_GNT 0x00 INT_PIN 0x01 INT_LINE 0x0b
However, prtconf -D just yields:
pci1095,6112
The 1096,6112 seems to be the RAID controller chipset on the card, which I
don't care about. The 1096,3112 is not listed anywhere at all in prtconf
output.
I have tried adding an entry to /etc/driver_aliases to map pci1095,6112
to "pci-ide" aswell as "ata" - no effect.
It is interesting that the scanpci entry for the 3512 does not include a
CardVendor:
pci bus 0x0000 cardnum 0x08 function 0x00: vendor 0x1095 device 0x3512
Silicon Image, Inc. SiI 3512 [SATALink/SATARaid] Serial ATA Controller
STATUS 0x02b0 COMMAND 0x0007
CLASS 0x01 0x80 0x00 REVISION 0x01
BIST 0x00 HEADER 0x00 LATENCY 0x20 CACHE 0x08
BASE0 0x0000d001 addr 0x0000d000 I/O
BASE1 0x0000d101 addr 0x0000d100 I/O
BASE2 0x0000d201 addr 0x0000d200 I/O
BASE3 0x0000d301 addr 0x0000d300 I/O
BASE4 0x0000d401 addr 0x0000d400 I/O
BASE5 0xee080000 addr 0xee080000 MEM
MAX_LAT 0x00 MIN_GNT 0x00 INT_PIN 0x01 INT_LINE 0x0a
BYTE_0 0x02 BYTE_1 0x00 BYTE_2 0x00 BYTE_3 0x00
Could it be that the 3112 is somehow "hidden", from a driver point of view,
behing the 6119? I am not that familiar with how PCI works. The prtconf -D
tree for the 3512 looks like this:
pci-ide, instance #0 (driver name: pci-ide)
ide, instance #0 (driver name: ata)
cmdk, instance #0 (driver name: cmdk)
ide, instance #1 (driver name: ata)
cmdk, instance #2 (driver name: cmdk)
Is the 6112 supposed to be in the same position as the pci-ide node for the
3512?
The card is a "VSCom" card, whatever that is. Suppose it's just re-branding or
something.
Any feedback would be appreciated. I am a Solaris newbie (having only done
BSD/Linux in the past), so perhaps I am missing something obvious.
|
_______________________________________________
opensolaris-discuss mailing list
opensolaris-discuss@opensolaris.org