Port-sparc64 archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
SATAlink PCI card and Ultra 5?
Hi,
(This is likely not to be NetBSD-related at all, but I hope that there is
enough hardware expertise with Sun hardware here to help figure out the
answer...)
I'm mystified... I'm trying to get SATA to my Ultra5, and for that purpose
got a number of "cheap off-the shelf" PCI-to-SATA controllers, to see which
one works with NetBSD/Sparc.
The one that looks most promising is SATAlink based, and it works perfectly
well (!!) in my Ultra60, with NetBSD-5.0:
satalink0 at pci0 dev 5 function 0
satalink0: Silicon Image SATALink 3512 (rev. 0x01)
satalink0: SATALink BA5 register space disabled
satalink0: bus-master DMA support present
satalink0: primary channel wired to native-PCI mode
satalink0: using ivec 1c for native-PCI interrupt
atabus0 at satalink0 channel 0
satalink0: secondary channel wired to native-PCI mode
atabus1 at satalink0 channel 1
(no devices attached right now, due to the Ultra60 not being suited very
well to power non-SCA drives - but I've tested it with a WD 750G drive, and
everything behaved quite normally).
Now the funny part. The "target" machine for this controller is an Ultra5,
which direly needs a larger and faster hard disk. PCI being PCI, I assumed
it would "just work". But it doesn't.
- OBP does not recognize the card ("setenv diag-switch? true" shows the
PCI slot in question as "empty" - the slot is OK, though, as a PCI
RTL8019 network card is recognized just fine).
- the kernel does not give any indication of the card being found
- "pcictl /dev/pci[012] list" does not display anything either.
Looking at Wikipedia and at my machines, both machines have 5V PCI slots
(the U60 has 3.3V and 5V slots, but the SATA card is in one of the 5V
slots - and of course the U60 has 64bit, but that shouldn't matter for a
32 bit-only card).
The SATA card itself is coded as "universal 3.3V and 5V card".
Maybe there is some other difference, like "PCI 2.1" vs. "PCI 2.2" or
something? Should it matter? How can I find out?
confused regards,
gert
PS: for reference, the "pcictl dump" output for the SATAlink card (moved
back into the U60) is:
PCI configuration registers:
Common header:
0x00: 0x35121095 0x02b00007 0x01040001 0x00000038
Vendor Name: CMD Technology (0x1095)
Device Name: SiI3512 SATALink (0x3512)
Command register: 0x0007
I/O space accesses: on
Memory space accesses: on
Bus mastering: on
Special cycles: off
MWI transactions: off
Palette snooping: off
Parity error checking: off
Address/data stepping: off
System error (SERR): off
Fast back-to-back transactions: off
Interrupt disable: off
Status register: 0x02b0
Capability List support: on
66 MHz capable: on
User Definable Features (UDF) support: off
Fast back-to-back capable: on
Data parity error detected: off
DEVSEL timing: medium (0x1)
Slave signaled Target Abort: off
Master received Target Abort: off
Master received Master Abort: off
Asserted System Error (SERR): off
Parity error detected: off
Class Name: mass storage (0x01)
Subclass Name: RAID (0x04)
Interface: 0x00
Revision ID: 0x01
BIST: 0x00
Header Type: 0x00 (0x00)
Latency Timer: 0x00
Cache Line Size: 0x38
Type 0 ("normal" device) header:
0x10: 0x00000c01 0x00000c09 0x00000c11 0x00000c19
0x20: 0x00000c21 0x00018000 0x00000000 0x65121095
0x30: 0x00080000 0x00000060 0x00000000 0x00000100
Base address register at 0x10
type: i/o
base: 0x00000c00, not sized
Base address register at 0x14
type: i/o
base: 0x00000c08, not sized
Base address register at 0x18
type: i/o
base: 0x00000c10, not sized
Base address register at 0x1c
type: i/o
base: 0x00000c18, not sized
Base address register at 0x20
type: i/o
base: 0x00000c20, not sized
Base address register at 0x24
type: 32-bit nonprefetchable memory
base: 0x00018000, not sized
Cardbus CIS Pointer: 0x00000000
Subsystem vendor ID: 0x1095
Subsystem ID: 0x6512
Expansion ROM Base Address: 0x00080000
Capability list pointer: 0x60
Reserved @ 0x38: 0x00000000
Maximum Latency: 0x00
Minimum Grant: 0x00
Interrupt pin: 0x01 (pin A)
Interrupt line: 0x00
Capability register at 0x60
type: 0x01 (Power Management, rev. 1.0)
Device-dependent header:
0x40: 0x00000002 0xa0102204 0x00000000 0x00000000
0x50: 0x00000000 0x00000000 0x00000000 0x00000000
0x60: 0x06220001 0x64004000 0x00000000 0x00000000
0x70: 0x00000000 0x00000000 0x00000000 0x00000000
0x80: 0x00000022 0x00000022 0x00000000 0xbafebde7
0x90: 0x0c000000 0x80003512 0x18000000 0x00000000
0xa0: 0x65150101 0x62dd62dd 0x43924392 0x40094009
0xb0: 0x65150101 0x62dd62dd 0x43924392 0x40094009
0xc0: 0x00000184 0x00000000 0x00000000 0x00000000
0xd0: 0x00000000 0x00000000 0x00000000 0x00000000
0xe0: 0x00000000 0x00000000 0x00000000 0x00000000
0xf0: 0x00000000 0x00000000 0x00000000 0x00000000
--
USENET is *not* the non-clickable part of WWW!
//www.muc.de/~gert/
Gert Doering - Munich, Germany
gert%greenie.muc.de@localhost
fax: +49-89-35655025
gert%net.informatik.tu-muenchen.de@localhost
Home |
Main Index |
Thread Index |
Old Index