# Anyone get a Promise PDC20378 SATA RAID controller working?

## Tamerz

I had to get away from Linux recently since I can't seem to get any distro to work with my new system.  I have two SATA hard drives in a RAID 0 configuration on this Promise PDC20378 controller.  It has to stay this way so using software RAID isn't an option (I need my dual booting for Windows games and music production software).  Any help would be appreciated.

----------

## Tamerz

Guess this means it's not happening...

----------

## Tamerz

Well I won't be able to try this out until next week but I found what appear to be the correct drivers at this link:

http://www.busybox.net/pdc-ultra-1.00.0.10.tgz

And here is the article I found about it:

http://lwn.net/Articles/40899/

----------

## Tamerz

Here is another link to what appears to be the same driver source.

http://www.promise.com/support/file/driver/1_SATALINUXSRC1.00.0.8.zip

----------

## Corp.Nobbs

Just out of interest, SATA is now included in the 2.6.0-test9 kernel release. I don't have any SATA hardware and I don't know if your promise card is supported, but it might be worth you checking it out.

Mike.  :Wink: 

----------

## Tamerz

Thanks for the heads up.  I'll probably try the 2.6 LiveCD for AMD64 then.

----------

## taskara

there is an x86 2.6 live cd too..

promise have the source up on their website here now too (it's version 1.00.0.15) if u want to build it against 2.4 kernel.

but to get this to work for an install.. u prob need to hack your gentoo live cd, or boot to knoppix and compile the driver in and away u go.

alternately, yeah, I'd try the new 2.6 live cds  :Smile: 

----------

## Tamerz

Thanks... always good to have multiple options  :Wink: 

----------

## taskara

 :Wink:  let us know what works for you!  :Smile: 

----------

## Tamerz

If I get this all to work I'll be sure to write up some documentation.  Be nice to have a step-by-step guide on both AMD64 and SATA RAID.

----------

## JATMAN

I have a PDC20378 controller running on my Tyan dual Opteron motherboard.  I tried the original AMD64 experimental Live CD but was unable to get a desktop that I liked, so dropped back to the x86 Live CD.  Also had been trying to use the recent mm-sources 2.6 kernel, but could not get the PDC20378 controller driver to compile, so dropped back to the ac-sources 2.4 kernel.  The pdc-ultra driver compiled nicely there and this is how I'm currently running.

If anyone has had some success compiling the pdc-ultra driver with a 2.6 kernel, I'd love to hear about it.

----------

## taskara

so let me get this straight, you are running your pdc20378 controller under gentoo?

and not only this, but it worked with the x86-2.4 series live cd? from 11th of September?

and u have had ZERO luck with 2.6?

but ac-sources works?

are you running it in raid 0?

if so can u reveal 

```
hdparm -tT /dev/xxx
```

can u confirm all this? sweet.

----------

## Shoggo

Hi all

```
xeon root # uname -a

Linux xeon 2.6.0-test9-bk8 #1 SMP Tue Nov 4 12:40:25 CET 2003 i686 Intel(R) Xeon(TM) CPU 2.80GHz GenuineIntel GNU/Linux
```

```
xeon root # lspci | grep Promise

02:02.0 RAID bus controller: Promise Technology, Inc.: Unknown device 3373 (rev 02)
```

It's the pdc20378 controller (Tiger i7505 (S2668) Board).

```
xeon root # hdparm -tT /dev/sda

/dev/sda:

 Timing buffer-cache reads:   2044 MB in  2.00 seconds = 1021.64 MB/sec

 Timing buffered disk reads:  166 MB in  3.03 seconds =  54.70 MB/sec
```

The system runs stable. :Razz: 

I use the WD Raptor SATA HD with 10'000 RPM and 36GB cap.

I don't use a raid.

Greets

Shoggo

----------

## taskara

not bad not bad.. imagine if u raided them!  :Wink: 

anyway.. so u are using 2.6 kernel, with the Promise SATA support under SCSI devices?

I don't think it supports promise's software raid function built into the controller, but should support IDE... well that's aparent  :Wink: 

thanks for that  :Smile: 

----------

## JATMAN

taskara:

Yes, I am running my pdc20378 controller under gentoo.  Yes, it is working with the x86-2.4 series live cd.  I don't recall the date on it, but I downloaded it in late September, so your date is reasonable.  I initially tried using an mm-sources 2.6 kernel (test 6, if I recall) but could never get the pdc-ultra driver to compile.  Inspection of the source revealed that it was never intended to work with kernels over 2.4.  Tried using a gentoo-sources kernel, but that did not work either.  Finally tried the ac-sources kernel and the pdc-ultra driver compiled cleanly and has been working reliably since.

Last night, I tried compiling another mm-sources kernel (test 9) to see if I could get the kernel support for Promise SATA to work.  No joy.  Both the libata and sata_promise drivers threw errors when compiling.  So I'm back to my ac-sources kernel which is solid as a rock.

I am not running my pdc20378 in raid 0.  I have a pair of 80GB Seagate SATA drives (7200 rpm) connected to it and am using them as storage for an Oracle database - one for tables, the other for indexes.  Performance has been nice.  The hdparm -tT data you requeste is below:

```

/dev/sda:

 Timing buffer-cache reads:   2724 MB in  2.00 seconds = 1362.00 MB/sec

 Timing buffered disk reads:  126 MB in  3.04 seconds =  41.45 MB/sec

```

I suspect the difference in disk read performance with that observed by Shoggo is directly attributable to Shoggo's use of Raptors compared with my inferior 7200 rpm drives.  Still, I'm fairly please with the resulting database performance.

I think that answers all of your questions.

----------

## taskara

yep, that's great!

So what we still can't get is RAID support for the controller, and support under 2.6

but normal ata access works well.

Cheers

----------

## JATMAN

Update...

Last night I tried building the latest mm-sources kernel for my Tyan dual Opteron motherboard with an onboard pdc20378 SATA controller.  Finally, I have success!!!  The mm-sources-2.6.0_beta9-r2.ebuild installs working libata and sata-promise drivers.  During the build, one warning is thrown during the build of one of the libata related modules , but it does not appear to be serious (concerns a variable which is defined but not used).  Otherwise, the build was clean and the resulting kernel appears to work great.  FYI - I built the libata and sata-promise support into the kernel instead of as modules.

I am currently just running the pdc20378 as a SATA controller - no raid.  My use is for a database server for which I do not need / want raid.  I'll leave the testing of Promise raid functionality to others - although I'm curious as to if and how it works.

Hope this may be of help to others trying to get pdc20378 support with a 2.6 kernel.  This was my first successful attempt.

JATMAN

----------

## taskara

wow! cool!

----------

## kruemi

Ok... it seems to be the right place here...

Normaly I'm a debian-user (like the ease of apt-get  :Smile: ) but with my new hardware i think it's time to try something new.

S, i've got a Via ITX-System with an nvidia norce2 (no problem) and an Promise Sata 150TX in the PCI slot. A Seagate 120GB SATA-HD is attached to it. The CD/DVD-Drive is attached to the Onboard PATA Controller.

Now my Problem is, that the Installation-Media i know don't have any support for the Promise SATA Controller. So I tried the Gentoo LiveCD with the Kernel 2.6. It recognized the Controler and the Attached Disk as SCSI what seems ok. But than it waits or a while, prints out an DMA-Timeout and just stops working without output  :Sad: 

Someone Told something about installing with the "regular" CD. Do I have to change something on these? How can they support the Controller?

Bye

kruemi

----------

## taskara

hey,

the regular cd is just 2.4 kernel

and i can find the latest version here

you may need to pass some parameters at boot time like

"smp doataraid acpi=off"

or something like that.

see how you go!!

good luck  :Smile: 

----------

## JATMAN

Is the SATA drive the only hard disk in your system?

----------

## kruemi

 *JATMAN wrote:*   

> Is the SATA drive the only hard disk in your system?

 

Yes, it's the only one. Theres no Space inside the Case or a second Harddriva, but it would be possible to attach another Harddrive to the Onboard Controller for Installation. But i think it should be possible to get the system running as it is  :Smile: 

I'll try the "normal" livecd now... just downloaded the ISO-Files  :Smile: 

I'll get back here when I tried them.

Oh, what i DO have instead of a floppy drive is a USB2 cardreader. But even when I check "boot rom USB HD" and "boot from USB CD" it wont boot off a CF-Card  :Sad: 

bye and thanx

kruemi

----------

## kruemi

Seems I have no luck  :Sad: 

With the CD athlon-xp-1.4-20030911-cd1.iso i can boot and all seems to be working exept my Promise Controller  :Sad: 

When I

modprobe pdcraid

All I get is some errors and the message

Promise Fasttrak(tm) Softwareraid driver 0.03beta: No raid array found

in dmesg  :Sad: 

I can't find a matching module in the module-diectory. Not under SCSI nor under IDE  :Sad: 

But  eben if I get a working Module, would this help? Because the SATA-Disk will be my Root-Disk afterwards, the driver must be compiled in or i have to use initrd or initramfs...

Bye

kruemi

----------

## taskara

hmmm.. have you tried booting with acpi=off ?

also u may need to build your own cd, or install in a parallel hdd and then make your own kernel and install from there..  :Confused: 

----------

## kruemi

I'd prefer the way with the own install-cd. Because I think I'll need to install more than once  :Wink: 

Is there a howto or a good documentation anywhere how to build my own media?

I have to say, that I dont have a gentoo system at the moment, so if this is required it would cause me some headache.

I thought about building my own boot-media for debian, but there i need a local debian mirror, so i threw this solution away! (Boot-Floppy didn't worked... don't know why  :Sad:  )

So i hope it's a bit easier with gentoo...

In the meantime I thougth about building my own set of Linux Boot/Root disks with my 2.6test9 (or 10) Kernel... but that's a lot of work too and i don't like floppies!  :Smile: 

Thanx and bye

kruemi

PS: Yes, I tried noacpi, acpi=off and nothing of these.

----------

## taskara

hmm.. there are some howto's floating around..

unfortunately I think it will be easier to borrow a hdd, and get a basic stage3 system up and running, then compile mm-source or something and make a kernel that can support your sata

then install gentoo on the sata disk

this will actually be good practice for you!

----------

## kruemi

If someone is interested what happens when I try to boot the 2.6-livecd:

**************

ata1: SATA max UDMA/133 cmd 0xDE80F200 ctl 0xDE80F238 bmda 0x0 irq 11

ata2: SATA max UDMA/133 cmd 0xDE80F280 ctl 0xDE80F2B8 bmda 0x0 irq 11

ata3: SATA max UDMA/133 cmd 0xDE80F300 ctl 0xDE80F338 bmda 0x0 irq 11

ata4: SATA max UDMA/133 cmd 0xDE80F380 ctl 0xDE80F3B8 bmda 0x0 irq 11

ata1: no device found (phy stat 00000000)

scsi0 : sata_promise

ata2: no device found (phy stat 00000000)

scsi1 : sata_promise

ata3: no device found (phy stat 00000000)

scsi2 : sata_promise

ata4: dev 0 ATA, max UDMA/133, 234441648 sectors (lba48)

ata4: dev 0 configured for UDMA/133

scsi3 : sata_promise

  Vendor: ATA     Model: ST3120026AS   Rev: 0.75

  Type:  Direct-Access                            ANSI SCSI revision: 05

SCSI device sda: 234441648 512-byte hdwr sectors (120034 MB)

SCSI device sda: drive cache: write through

 /dev/scsi/host3/bus0/target0/lun0: DMA timeout

************

And than it hangs.. not even ctrl+alt+del can reboot the machine  :Sad: 

I'll try to put the Disk on the irst channel (i thought it was, but the kenrel seems to have another oppinion here  :Smile: )

bye

kruemi

----------

## kruemi

 *taskara wrote:*   

> hmm.. there are some howto's floating around..
> 
> unfortunately I think it will be easier to borrow a hdd, and get a basic stage3 system up and running, then compile mm-source or something and make a kernel that can support your sata
> 
> then install gentoo on the sata disk
> ...

 

ok, if you think this is the best way... I think I have an ATA-Disk ...

Aaaaaaaaaaaaaaaaaaaaaaaaaaaaargh..... *blubber* *glubsch*...

It just booted! It BOOOOOTED!

Yipeeeeee.....

 :Razz:   :Cool: 

I'm going just crazy!

What i did: First, the Disk was plugged in J1 on the Controller... Than it wass seen as Port4 and it hung...

Ok, it thougt... if 1=4 than 4=1, logic?

Now it's seen as Port3.. and at that moment i took a closer look and saw that every Connector has two names in the Controller...

J1 = Port4

J2 = Port2

J3 = Port1

J4 = Port3

The Connectors are placed in the Order o the "J-Numbers"... *hitting-head-on-keyboard*

ok... i'll get back here when the next problems occur...

Thanx or the Help!

bye

kruemi (who feels really stupid)

----------

## JATMAN

ata1: SATA max UDMA/133 cmd 0xDE80F200 ctl 0xDE80F238 bmda 0x0 irq 11

ata2: SATA max UDMA/133 cmd 0xDE80F280 ctl 0xDE80F2B8 bmda 0x0 irq 11

ata3: SATA max UDMA/133 cmd 0xDE80F300 ctl 0xDE80F338 bmda 0x0 irq 11

ata4: SATA max UDMA/133 cmd 0xDE80F380 ctl 0xDE80F3B8 bmda 0x0 irq 11

ata1: no device found (phy stat 00000000)

scsi0 : sata_promise

ata2: no device found (phy stat 00000000)

scsi1 : sata_promise

ata3: no device found (phy stat 00000000)

scsi2 : sata_promise

ata4: dev 0 ATA, max UDMA/133, 234441648 sectors (lba48)

ata4: dev 0 configured for UDMA/133

scsi3 : sata_promise

Vendor: ATA Model: ST3120026AS Rev: 0.75

Type: Direct-Access ANSI SCSI revision: 05

SCSI device sda: 234441648 512-byte hdwr sectors (120034 MB)

SCSI device sda: drive cache: write through

/dev/scsi/host3/bus0/target0/lun0: DMA timeout 

I had wondered when I read this and saw the disk appearing as ata4.  Great numbering scheme on the connectors...

My system has two SATA drives, but boots from an ATA drive.  I had a pretty challenging time getting my Promise SATA controller to work.  The first time it worked was using an ac-sources kernel and compiling the source for a driver that Promise released.  I found it interesting that the driver would not compile with the gentoo sources kernel, but would with ac-sources.  Finally, I managed to get the mm-sources kernel (my favorite) to work using the libata driver supplied with the kernel.

Next time I have a couple spare days - and I'm feeling brave - I plan to try building my system 64-bit.  I tried this with the first release of the amd64 experimental live cd, but there was just too much broken stuff.  That was a couple of months ago, and there is a new 2.6 based live cd for amd64, so I think I'm going to give it a try sometime soon.  My system is primarily used as an Oracle database server and I want to get it going 64-bit ASAP.

Good luck with your SATA!

----------

## kruemi

Ok.. good thing first:

The 2.6-Kernel booted and recognized my SATA-Disk as /dev/sda

Bad thing ist, that there's no module nvnet on this Boot CD...

Ok, I could try to copy the kernel-source and the source of the module on a CF-Card and compile the Module on the Box... maybe someone has a better Idea!

But to stay on topic in this thread! The 2.6-Images from experimental work with the Promise SATA-Controller... 55.62MB/s with hdparm -tT (Same as with the SiliconImage Controller and the Same Disk in my Server  :Smile:  )

And: NO, I really didn't tought about using the Working Installation to put a System on this Disk   :Embarassed: 

bye

kruemi

----------

## Forge

SATA = well supported in 2.6.0, no problems that a kernel source update won't fix. Don't even need any funky modules to get things running (Gentoo is on one of my two WD Raptors, on the Via 8237 southbridge native SATA controller, runs great).

The bad news?

ataraid was a hack when it first showed up in 2.4.*, and it's been removed from 2.6.0 entirely. Support for ataraid has been dwindling away to nothing, as well.

----------

## taskara

 *Forge wrote:*   

> ataraid was a hack when it first showed up in 2.4.*, and it's been removed from 2.6.0 entirely. Support for ataraid has been dwindling away to nothing, as well.

 

This' what I've been saying, and people thought I was crazy when I said there will not be ataraid support in 2.6! lol

----------

## Tamerz

That sucks because Linux is useless to me if it doesn't support my SATA RAID setup.

----------

## taskara

well unless you have a promise pci raid controller and run 2.4 kernel, or run a real ataraid controller like 3Ware, then you're probably out of luck  :Sad: 

----------

## Krigg

So what you guys are saying is that Gentoo will never support....(or be a late commer to the party) any of the Newest Promise 20378 hardware raid support?

I can get Red Hat running off the on-board raid 1 set up, but I can't for the life of me get Gentoo to boot up and see the dang raid 1 array!!!  :Evil or Very Mad:   :Mad: 

JR

----------

## taskara

 *Krigg wrote:*   

> So what you guys are saying is that Gentoo will never support....(or be a late commer to the party) any of the Newest Promise 20378 hardware raid support?
> 
> I can get Red Hat running off the on-board raid 1 set up, but I can't for the life of me get Gentoo to boot up and see the dang raid 1 array!!!  
> 
> JR

 

well.. promise writes drivers for redhat, mandrake and suse etc - so yes from that point of view Gentoo will have later support.

however now that promise have released a source driver, you should be able to get it to work with a 2.4 kernel.

remember all promise / highpoint / silicon raid support under linux is just through an old hack for 2.4 kernels - and 2.6 kernel at this stage will never support such controllers - unless manufacturers start writing proper drivers for 2.6, which I highly doubt.

so no distro based on a 2.6 kernel will have raid support at this stage.

----------

## taskara

also, are you sure redhat is seeing your raid 1 array?

you *should* have to load a driver from a floppy to get it to see it properly, and it should load as a scsi device like /dev/sda, rather than /dev/hda

just a thought..

----------

