Drivers for Promise PDC42819 RAID Controller on MSI K9A2 Platinum Motherboard
Linux - HardwareThis forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
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?
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.
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.
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.
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.
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.
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.
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.
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
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.
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.
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.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.