Hackers needed to improve the Promise SX4 driver for Linux.

Jan 6, 2007 13:06 GMT  ·  By

Jeff Garzik, one of the many Linux kernel engineers, has announced that the hardware documentation for the Promise SX4 chipset is being opened up and therefore, the sata_sx4 driver is a good candidate for improvements. Jeff is worried that the Promise SX4 driver for Linux won't reach its full potential if he will continue developing it alone: "I would like to take this opportunity to point hackers looking for a project at this hardware. The Promise SX4 is pretty neat, and it needs more attention than I can give, to reach its full potential."

He further notes that the sata_sx4 driver's ATAT programming interface is similar to that in the sata_promise driver and that it contains a fully programmable on board DIMM and on board RAID5 XOR. He explains:

"A key problem is that, under Linux, sata_sx4 cannot fully exploit the RAID-centric power of this hardware by driving the hardware in 'dumb ATA mode' as it does. A better driver would notice when a RAID1 or RAID5 array contains multiple components attached to the SX4, and send only a single copy of the data to the card (saving PCI bus bandwidth tremendously). Similarly, a better driver would take advantage of the RAID5 XOR offload capabilities, to offload the entire RAID5 read or write transaction to the card.

All this is difficult within either the MD or DM RAID frameworks, because optimizing each RAID transaction requires intimate knowledge of the hardware. We have the knowledge... but I don't have good ideas -- aside from an SX4-specific RAID 0/1/5/6 driver -- on how to exploit this knowledge."

SX4 has extensive "RAID accelerator" features. While not true RAID hardware, this card has several features which do indeed accelerate RAID support. Unfortunately, Linux does not support the SX4's special RAID accelerator features at this time.

For certain configurations, Promise's Linux driver will perform better than the native Linux SATA driver.

The first open hardware docs for the Promise SX4 (sata_sx4) series are available for download:

pdc20621-pguide-dimm-1.6.pdf.bz2 pdc20621-pguide-pll-ata-timing-1.2.pdf.bz2.