Guide: TRIM in RAID0 for Z68 systems

@ users with an Intel Z68 chipset RAID0 system:

Introduction
Intel’s RST/RST(e) RAID drivers since v11.x.x.xxxx in combination with an appropriate Intel RAID ROM or SataDriver module are able to let the TRIM command pass through the actual Intel SATA RAID Controller - even if the SSDs are members of a RAID0 array.
It was Dufus, who had done in autumn 2012 a deeper look into the hex code of the Intel RAID ROM v11.6.0.1702. He detected the codes, which are responsable for the TRIM in RAID0 feature, and found out, that

  1. generally all Intel PCH (from 5-Series up) SATA RAID Controllers are able to support the TRIM in RAID0 feature and
  2. the TRIM in RAID0 feature has only been activated by Intel for the newest chipsets from 7-Series up.

The knowledge about these details, which had been layed down by Dufus within >this< thread, gave me the ability to enable the TRIM in RAID0 feature for some originally not supported Intel SATA RAID Controllers by simply replacing some bytes within the related RAID ROM resp. SataDriver modules.

Here is a guide regarding the required modification of the Intel RAID ROM resp. EFI SataDriver module from v11.6 up, if you want to enable TRIM in RAID0 for Intel Z68 systems.
Note: This will not work with any other Intel Chipset!

Disclaimer
Since I cannot give any warranty regarding the success, the use of this guide will be at own risk.

Guide:
How to enable TRIM in RAID0
for Intel Z68 Chipsets


A. Preparation:
Download and unzip the actual Intel RAID ROM and - if applicable - additionally the related Intel SataDriver module you want to get into your Z68 chipset mainboard BIOS.

B. Modification of the Intel RAID ROM:
  1. Open the Intel RAID ROM file with a Hex Editor like HxD.
  2. Search for the following hex code:

    1
     
    06 1C 00 00 01
     

    Make sure, that this special code is only once within the complete file.
  3. Replace the last digit "1" of the related hex code fragment by the digit "7".
    Now it should look like this:
    1
     
    06 1C 00 00 07
     
  4. Save the modified Intel RAID ROM file.


C. Modification of the Intel SataDriver.ffs file:
  1. Open the SataDriver.ffs file with a Hex Editor like HxD and repeat the same procedure as I have layed down above for the Intel RAID ROM module.
    This will already fully enable the TRIM in RAID0 feature the same way as with the Intel RAID ROM, but you will not be able to insert such modified SataDriver into the BIOS.
    Simple reason: Contrary to the Intel RAID ROM the SataDriver module is checksum sensitive Each modification of a single bit (here: from "1" to "7") will induce an error message while trying to insert it by using the Aptio UEFI MMTool.
    So you have to additionally change another code to get a file with exactly the same checksum as the original ffs file.
  2. Search for the following hex code fragment (it is only important for 7-Series Mobile systems):
    1
     
    07 1E 00 00 07
     
  3. Replace the last digit "7" by a "1".
    Now the related hex code string should look like this:
    1
     
    07 1E 00 00 01
     
  4. Save the modified SataDriver.ffs file.


D. Further procedure:
The next step is the insertion of the modified module into the BIOS of your mainboard. If you don't know how to update the Intel RAID ROM resp. the EFI SataDriver module of a BIOS, you should look into the related guides within this Forum.
At least the updated BIOS has to be flashed into the BIOS chip of the mainboard.
Note: Users with an ASUS mainboard may have to rename the modified BIOS file according to the related ASUS rules for the USB BIOS flashback procedure.

Good luck!
Fernando