Shane,

Great writeup.  Yes I am very interested in what you have done.  This is
such a common issue these days.

-Connie Sieh
On Mon, 6 Dec 2004, Shane Canon wrote:

> Greetings,
>
> I've just finished installing SL on a system with a 3ware 9xxx card in
> it.  I thought it may be useful to other folks if I shared my
> experience. I successfully used two different approaches.  I will
> describe both...
>
> Approach 1 - New kernel
>
> This approach seem the most likely to work, since it would fix both the
> install kernel and the boot kernel.  In the past I would have modified
> the install images by hand, but this time I wanted to use the site
> scripts to prepare everything.  Here are the steps I took.
>
> * I created a patch to add the 3w-9xxx driver and a config option to
> enable it.  I modified the kernel configs and rebuilt the various kernel
> RPMs.  I then placed these rpms in my site/Updates directory.
>
> * I modified the hwdata rpm to correct the pcitable.  The buildinstall
> scripts blows this rpm apart to get the pcitable.  The rebuilt rpm goes
> in the site/Updates directory.
>
> * I modified modinfo in the anaconda rpm and rebuild the rpm.  The
> buildinstall scripts also blows this rpm apart to create the install images.
>
> * Run build.release.site.sh to create the new install images
>
> This approach is a little tedious because you wind up having to modify
> so many packages.  I think we may want to look at modifying anaconda to
> pick up pcitable and modinfo files from an extra location to simply
> things.  It took me a while to figure out that the buildinstall scripts
> actually unpacks RPMs to create the various images.  I assumed it used
> the files already present on the host.  However, it just uses these to
> get started and most stuff comes from the RPMs.
>
> Approach 2 - Use DKMS and driverdisk images
>
> For those not familiar with DKMS, it is a framework for managing kernel
> modules outside of the base kernel.  It was developed by folks at Dell
> to manage drivers for things like Fibre Channel cards.  You can find it
> here....  http://linux.dell.com/dkms/dkms.html
>
> DKMS can build the driverdisk for you.  So I used it to create the
> images.  I still was having trouble getting kickstart to use these
> images though.  It winds up that if anaconda gets the driverdisk over
> NFS (and maybe http and ftp) it can't be an msdos image.  Once I
> repacked the driver disk in cramfs format it worked.  I also created an
> RPM for the 3ware driver that DKMS uses to build modules for other kernels.
>
>
> If anyone is interested in these modifications, let me know.  I'll be
> happy to share any of the various RPMs and patches.
>
> --Shane
>