I'd like to request inclusion of the new Adaptec aic79xx (Ultra320) SCSI drivers on the cooker kernels.

Adaptec has posted the source tarball for the driver (as well as RH and SUSE RPMs) on their site at http://www.adaptec.com/worldwide/support/driverdetail.html?sess=no&language=English+US&cat=/Product/ASC-39320D&filekey=aic79xx-1.1.0-source.tar.gz

I have applied the sources to the 9.0 2.4.19-6 kernel successfully, and the driver appears to work. I am currently using it on a system whose only HDD is an Ultra320 (Adaptec 39320 controller). A system I built on the 320 disk while booted from a system on a 160 disk (which uses the MDK-included aic7xxx driver) with the driver built as a module and also incorporated into the initrd boots successfully.

The tarball they give unpacks directly into /usr/src/linux/drivers. The tarball root is "scsi", and it adds the aic79xx files to the aic7xxx directory. It replaces the Makefile in the drivers/scsi/aic7xxx directory, but a comparison with the original indicates that the new file is identical to the old except for inclusion of the new aic79xx modules. No other existing modules are replaced. There is one error in the Makefile at line 25, where "aic7xxx_reg_print.o" is added as an object module to be build, but the aic7xxx_reg_print.c file does not exist in the MDK kernel tree. I simply eliminated this from line 25, and the driver built without error. Since the aic79xx.o driver takes the place of the aic7xxx.o driver, and since there *is* an aic79xx_reg_print.c added by the tarball, this doesn't seem to affect anything.

In the MDK driver probe, you would try aic79xx if aic7xxx is indicated but fails. The aic79xx driver replaces the aic7xxx, so if the insmod of aic79xx succeeds, you would replace "aic7xxx" with "aic79xx" in the "probeall" in /etc/modules.conf. This would enable the driver only for 39320 users (for whom it is a much better alternative than no support), and continue to use the aic7xxx driver for those users for whom it works. If the latter users wish to use the aic79xx driver after boot, having it available in the /lib/modules makes that easy enough.

Currently, I get some error messages during shutdown about failed attempts to issue RESET to the bus, but they don't seem to affect the integrity of the filesystem (it doesn't e2fsck upon reboot).

Thanks,
Frank Griffin




Reply via email to