Port-sparc64 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Sil3114 SATAlink card in U5/U10



On Thu, 1 Sep 2011, Gordon Zaft wrote:

>  I have several Sil3114 SATA/150 cards I'd like to use in several U5
> and U10s I have.(they are Rosewill RC-222).  I did some googling
> around on this and the answers I got were a little conflicting.  It
> would appear I can use them as-is for additional storage but not for a
> boot drive.
> 
> Of course I'd like to boot from the card if possible.
> 
>  I found this reference: http://netbsd.org/ports/sparc64/faq.html#pci-cards :
> 
> Some standard PCI cards "just work" in NetBSD/sparc64, such as network
> cards, IDE cards, etc. However, for these cards to be recognised by
> the PROM, you need to update the SUNW,builtin-drivers FCode package to
> force the device into native PCI mode.
> 
> Lloyd Parkes has provided the nvram commands to have a "standard" IDE
> controller recognised correctly by the PROM.
> 
> dev /packages/SUNW,builtin-drivers
> : class018000
> f 9 my-space + " config-b!" $call-parent class010100
> ;
> device-end
> 
> Two points -- 1) I have no idea how to  use the info above -- I am
> assuming this is done at the OpenBoot prompt but not clear how/where
> to enter it and whether it is "sticky" or has to be done every time I
> power on the machine.  and 2) I'm wondering if I need to use the
> Sil3114 "IDE" BIOS on the card in order to boot from it.
> 
>  thanks for any info you can give.

Sooo....

In my experience the built-in IDE driver should work with your SATA card 
in PATA compatibility mode, which most SATA controllers implement.  That's 
the way the one board with a built-in SATA controller worked.  All you 
need to do is convince the driver to attach to the controller, which may 
be a bit of a project.

I don't think the above code is likely to work.

Driver attachment is done by looking up a routine in 
/packages/SUNW,builtin-drivers with a name that corresponds to stuff found 
in the device's PCI config registers.  If you look in the OFW PCI bindings 
(here: http://www.openfirmware.org/ofwg/bindings/pci/pci2_1.pdf) where it 
describes the "compatible" property you can see the names used to match 
these routines.  One of those routines should match one of the entries in 
the "compatible" property of the on-board IDE controller.

What you need to do is look at the "compatible" property of the on-board 
ide controller, and find the routine in /packages/SUNW,builtin-drivers 
that matches one of those entries.  Then look at the "compatible" property 
in the SATA controller.  Then add an entry to the nvramrc (using nvedit) 
that looks something like this:

dev /packages/SUNW,builtin-drivers
: sata-compatible-entry  builtin-ide-compatible-routine ;
device-end

and set the use-nvramrc? property to true.  Then if the card supports 
PATA compatibilty mode you should be able to boot from it.

Edaurdo



Home | Main Index | Thread Index | Old Index