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


.
Subject:
[osol-discuss] SiL3112 not being detected
From:
Peter Schuller <[EMAIL PROTECTED]>
Date:
Sun, 17 Dec 2006 01:37:52 +0100
To:
opensolaris-discuss@opensolaris.org
To:
opensolaris-discuss@opensolaris.org

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

Reply via email to