LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (https://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   Drivers for Promise PDC42819 RAID Controller on MSI K9A2 Platinum Motherboard (https://www.linuxquestions.org/questions/linux-hardware-18/drivers-for-promise-pdc42819-raid-controller-on-msi-k9a2-platinum-motherboard-621818/)

viron 02-17-2008 01:54 PM

Drivers for Promise PDC42819 RAID Controller on MSI K9A2 Platinum Motherboard
 
I have an MSI K9A2 Platinum motherboard which comes with an Promise T3 FastTrack PDC42819 RAID controller that for the life of me I can't get Linux to detect. I have two 500GB hdds that are detected during boot, just not seen by Linux. Does anyone know the correct driver to use, or if that particular controller is supported at this time?

archtoad6 02-18-2008 06:23 AM

Welcome
1st, welcome to LQ. I hope you both get & give good answers here.

Before I start on what I found about your problem, I'd like to make 2 suggestions about what to post:

1. Post links to mfr.'s h/w info. -- it will save prospective helpers time & thus make it easier (read more likely) to try to help.

2. You are expected to try to solve your problem yourself before you post, Google, Google Linux, & searching LQ are good ways to this. If you then posted your searches, your helpers would get up to speed on your problem (& therefore be more likely to try to help) much quicker, not to mention know that you did already try to figure it out on your own.


Links
  1. Googling your mobo:
    http://www.google.com/search?q=MSI+K9A2+Platinum
  2. yeilds:
    http://global.msi.com.tw/index.php?f...&prod_no=1332#
  3. Googling your chip:
    http://www.google.com/search?q=Promise+PDC42819
    yeilds nothing directly useful, i.e. info. on the chip itself
  4. but yeilds this clue:
    http://www.digital-daily.com/motherboard/msi_abit_am2
    http://www.digital-daily.com/motherb...abit_am2/print
    " a rather expensive Promise PDC42819 chip (for comparison, the expansion card Promise FastTrak TX2650 based on this chip costs about 80$)."
    A comparison review, this also includes a good description of the board.
  5. Another good description/review (of the mobo):
    http://www.hardwarezone.com/articles...6&id=2423&pg=3
  6. Googling the Promise website for the chip:
    http://www.google.com/search?q=site%....com/+PDC42819
    "Your search - site:www.promise.com/ PDC42819 - did not match any documents."
    nor does a serch AT www.promise.com produce anthing useful.
  7. Googling that card:
    http://www.google.com/search?q=Promise+FastTrak+TX2650
  8. The card itself:
    http://www.promise.com/product/produ...product_id=191
    1. Downloads, incl. Drivers:
      http://www.promise.com/support/downl...ory=all&os=100
    2. Press Release:
      http://www.promise.com/company/press...RES20080128001
      "server platforms running all popular Linux distributions"
      "Promise's FastTrak TX offerings are software-based SAS RAID cards"
    3. Compatibility List - PDF as HTML:
      http://64.233.169.104/search?q=cache...t-20070906.pdf
      "Linux driver 1.1.0.3"
    4. Enlarged picture:
      http://www.promise.com/upload/product/FXTX4650.JPG
      shows your chip.

Good News
It sounds like there is a Linux driver.

Bad News
It sounds like there is a Linux driver;
& that means you are probably dealing w/ "fake RAID", see the Wikipedia RAID article or search LQ for "fake RAID".

Good News
Most "fake RAID" chips can be used as plain multi-disk controllers for Linux software RAID, which is considered very good.

viron 02-18-2008 10:37 AM

...
 
Search Google? Yea gee...didn't think of that. I ended up where you pointed to shortly after posting the question. Unfortunately the source to the t3sas driver (which is needed for that particular controller) will not compile against the 2.6.24.2 kernel. As far as this place is concerned, I was more or less hoping for quick response somewhat to the degree of "use X module found [here]".

On that note I have to say that I feel rather sorry for those new to Linux coming here for answers. If the philosophy here is to research the problem yourself, then why come here at all? With enough searching/studying, the solution is bound to present itself...

To be helpful to others with the same question I will add the following:

For people with the new MSI K9A2 Platinum (V1) motherboard with the Promise T3 RAID controller / FastTrack PDC42819 you will need visit www.promise.com, go to the driver download section and select FastTrack SAS. To get the source you'll need to select "Other" as the operating system. The actual module you need is called t3sas. Please note that as I mention above, it will not compile (by itself anyway) using the 2.6.24.2 kernel at the time of this post (2/18/2008). If you use an earlier kernel version, then there's a good chance you'll have better luck compiling the module.

guru_stpetebeach 03-21-2008 08:45 AM

Quote:

Originally Posted by viron (Post 3061479)
Search Google? Yea gee...didn't think of that. I ended up where you pointed to shortly after posting the question. Unfortunately the source to the t3sas driver (which is needed for that particular controller) will not compile against the 2.6.24.2 kernel. As far as this place is concerned, I was more or less hoping for quick response somewhat to the degree of "use X module found [here]".

Im having the same problem. Have you had any progress yet? I have some driver dev experience so I've started digging into the source. Im hoping I dont have to though.

Colin

guru_stpetebeach 03-22-2008 10:17 PM

Great news! I have the promise driver t3sas.ko compiled on the 2.6.24 kernel. There were a few errors that had to be corrected due to changes from the 2.6.18 to 2.6.24 versions.

I started by getting the driver compiled on a supported kernel 2.6.15 just so I could see what the output of a successful compile looks like and ensure that I could fdisk my RAID partition. I then got it working on 2.6.22 (ubuntu 7.10). So I took baby steps in getting to 2.6.24.

I used a ubuntu LiveCD (6.06LTS). Using the live cd I downloaded the kernel source and build-essential packages (also ncurses for menuconfig). I used a flash drive to hold the sources and driver build. I made mrproper, copied the config for the live cd from the /boot dir, made menuconfig and saved the config (i.e. no changes but rewrites the .config file.) build the kernel for 30 secs or so then Ctrl-c'd. With a good kernel source dir setup I was ready to compile the kernel module and debug. (dont forget to link via ln the /usr/src/kernel-source.2.6.24.x to /usr/src/linux.

The changes amounted to the following:
1. Change an include of /linux/ioctl32.h to /linux.ioctl.h
2. a struct dereference for ->sg_page is now via sg_page(sg)
3. In interrupt define flag SA_SHIRQ is now IRQF_SHARED

I will post a diff file soon enough. The promise driver on a supported kernel produces a MEGA amount of warnings even for a supported kernel version. After realizing that in 2.6.15, I felt like I might have a change at this!

I am now installing using the ubuntu alternate install. During the install, after the network is initialized, I go to another VT and copy my driver over to the modules dir where the install uses to detect the RAID controller. Then VT back and continue the install and partd. Then before rebooting I have to VT back and regenerate the initrd. I found a really good post on another site on how to do this. When I finally get my system installed I will post the details.

guru_stpetebeach 03-23-2008 01:55 AM

Got it! Successful kubuntu installation with latest kernel 2.6.24-11 64bit with RAID5 on 3x 320GB SATA, directly booting using the RAID array.

Phew!

guru_stpetebeach 03-27-2008 12:13 PM

I have posted the *preliminary* source for the driver. You can download it on my website at:
http://www.colinmackenzie.net/

viron 04-04-2008 04:38 PM

That's great...I had pretty much given up on the idea of using those two ports. I'll be sure and test your modified source later this evening on a 2.6.24.4 kernel and see what I can come up with.

viron 04-04-2008 07:02 PM

Everything compiles fine on 2.6.24.4. However...it's seems you've centered the module around 64 bit operations. This is not conducive to 32bit users. Upon trying to insmod I received an undefined reference to __udivdi3. Thanks a lot for your effort though. Perhaps you'll be able to resolve this in future updates to the source.

guru_stpetebeach 04-05-2008 11:51 PM

I am running a 64bit kernel, thus the error. Remember, I am not the original maintainer, I simply gave up on finding a solution to the problem and dug into the source code. I have a 32bit Ubuntu machine I can build it on to test. Might as well since I am familiar with the source now. I want to get rid of the compile time warnings anyway, clean them up.

Give me a little time and I'll have it. Are you running the Promise card now?

Colin


Quote:

Originally Posted by viron (Post 3111151)
Everything compiles fine on 2.6.24.4. However...it's seems you've centered the module around 64 bit operations. This is not conducive to 32bit users. Upon trying to insmod I received an undefined reference to __udivdi3. Thanks a lot for your effort though. Perhaps you'll be able to resolve this in future updates to the source.


viron 04-06-2008 12:36 PM

No. As of now it's disabled. No drivers to use it. I'd be happy to help test things out though.

guru_stpetebeach 04-07-2008 10:57 AM

Quote:

Originally Posted by viron (Post 3112659)
No. As of now it's disabled. No drivers to use it. I'd be happy to help test things out though.

I was just thinking, did you insmod it or modprobe to install the driver? insmod will produce unresolved references if a dependancy module is not loaded. Also, run "depmod -a" before trying to insert the module.

I would bet this is not the problem but still a problem with the source code, but lets cover our bases anyway.

Colin

viron 04-08-2008 11:14 AM

I tried all of the above. I'll play with it a little more this evening and post the results.

viron 04-08-2008 12:23 PM

Well...the link to the driver appears to be down. I'll try again later this evening and see if it's back up again.

guru_stpetebeach 04-10-2008 11:50 PM

Quote:

Originally Posted by viron (Post 3114799)
Well...the link to the driver appears to be down. I'll try again later this evening and see if it's back up again.

It should be up, I think I was playing with the apache module I wrote that does my photo album. I made it for Apache 1.3 and then Apache2 came out soon after. The mod API had some drastic changes. I am just getting around the bringing the code up to date. I didnt know that my module was messing with the whole web server. I am coding it on another machine now.

Also, I just got around to getting the build environment setup on my old 32 bit station and compiling the TX drivers on it. First thing I noticed is that the ftlib tries to build with the ftlib.obj in the tx4650 root dir, which I have packages as 64bit version. So I had to copy that from the ftlib dir and overwrite, build then succeeded. You most have figured this out to as you got the module built. I will fix this somehow in the Makefile.

I am not getting the same undefined symbol you are. I am getting sg_page symbol not found. I recognize this symbol as part of my update, it was a kernel changeover in 2.6.22 (I believe) which I am running 2.6.22-14. I converted the code sg_page(sg) back to sg->page and I got the module build and insmod'd without error.

I will have to upgrade my kernel to 2.6.24-4-x86 to see how it builds on that. I have a feeling that your compile problem is related to your kernel config. I think I had to change some kernel settings to get it to compile on my machine.

Here are a few config options that I remember were relevant:
Symmetric Multiprocessing Support - on
Preemption support - voluntary

I think the most important one was the SMP support and should be on. If you send me your email in a private message, I will send you a copy of my current kernel config for my 64 bit station. Other than 64bit cpu selected, the other options would be the same.

I will try to get my kernel upgraded this weekend on the 32bit workstation.

Colin


All times are GMT -5. The time now is 05:57 PM.