# Do I need to flash IT firmware when using ZFS with LSI?



## cougar (Jul 21, 2011)

I have a LSI card, the firmware shows it is LSI 1068E SAS IR firmware. I want to use ZFS on it, do I need to flash IR firmware to IT firmware? I do nothing (not set RAID in the card firmware), I can set the ZFS pool, this is not good? Which are the recommendations?

My OS is 8.1 and *dmesg* info is :


```
mpt0: <LSILogic SAS/SATA Adapter> port 0xe000-0xe0ff mem 0xfb7fc000-0xfb7fffff,0xfb7e0000-0xfb7effff irq 24 at device 0.0 on pci7
mpt0: [ITHREAD]
mpt0: MPI Version=1.5.19.0
mpt0: Capabilities: ( RAID-0 RAID-1E RAID-1 )
mpt0: 0 Active Volumes (2 Max)
mpt0: 0 Hidden Drive Members (14 Max)
```


```
da0 at mpt0 bus 0 scbus0 target 0 lun 0
da0: <ATA ST3500418AS CC46> Fixed Direct Access SCSI-5 device
da0: 300.000MB/s transfers
da0: Command Queueing enabled
da0: 476940MB (976773168 512 byte sectors: 255H 63S/T 60801C)
da1 at mpt0 bus 0 scbus0 target 1 lun 0
da1: <ATA ST3500418AS CC46> Fixed Direct Access SCSI-5 device
da1: 300.000MB/s transfers
da1: Command Queueing enabled
da1: 476940MB (976773168 512 byte sectors: 255H 63S/T 60801C)
```


----------



## phoenix (Jul 21, 2011)

You don't have to use the IT firmware to use ZFS.  But it would make things a lot simpler to manage as you don't have to worry about all the RAID nonsense on the controllers.  With the IT firmware, the dmesg output looks like so:

```
mpt0: <LSILogic SAS/SATA Adapter> port 0xe000-0xe0ff mem 0xdfdec000-0xdfdeffff,0xdfdf0000-0xdfdfffff irq 18 at device 0.0 on pci5
mpt0: [ITHREAD]
mpt0: MPI Version=1.5.20.0
da0 at mpt0 bus 0 scbus0 target 1 lun 0
da0: <ATA ST31000528AS CC38> Fixed Direct Access SCSI-5 device 
da0: 300.000MB/s transfers
da0: Command Queueing enabled
da0: 953869MB (1953525168 512 byte sectors: 255H 63S/T 121601C)
```


----------



## sub_mesa (Jul 27, 2011)

With IR (Integrated RAID) firmware, there could be the possilibility of detached (disconnected) disks if they encounter a bad sector causing them to have high timeouts. Many RAID controllers disconnect disks that spend more than 10 seconds on recovery time, not able to distinguish disks performing recovery from those that have failed. That's why you need TLER/CCTL/ERC enabled disks on such controllers.

I'm not sure about LSI controllers though. I did see several timeout options in the LSI BIOS of my LSI 1068E controller. But I run in IT mode firmware anyway, because that should be the best setting for any software RAID configuration. IT firmware would disable the RAID functionality of the controller and present normal disks to the host. Being a SAS controller, they still would end up as /dev/daX however.


----------



## dvl@ (Feb 24, 2013)

What process do you folks used to upgrade your firmware?  DOS?  UEFI?


----------



## Sebulon (Feb 25, 2013)

@dvl

I have a bootable USB-key with DOS that I create a directory for each version. Within are files I take from LSIÂ´s website, plus one .bat file that I keep so I donÂ´t have to remember all of the commands by heart

/mnt/usb/PH15:

```
2008PH15.FW (this is really called something else, but I rename it to match whatÂ´s in the .bat)
mptsas2.rom
sas2flsh.exe
SMC2008.bat
```

/mnt/usb/PH15/SMC2008.bat:

```
@echo off 
sas2flsh -o -e 6
cls
sas2flsh -f 2008IT15.FW
sas2flsh -b mptsas2.rom
cls
sas2flsh -o -sasaddhi 5003048
```

And then itÂ´s just a matter of rebooting and running the .bat, and the rest takes care of itself. The last thing you do is to give the card a "SAS address", and if you have two cards in the same machine, itÂ´s important that they get different addresses, like 000000001 for card1, and 000000002 for card2.

And yeah, itÂ´s still a pain in the ass getting certain HW to boot from USB, itÂ´s still hit and miss mostly. You can have a USB that that you are able to get several machines to boot with, and some just wonÂ´t. Switching to a USB that normally doesnÂ´t boot all of the other machines may in fact work on the rest; itÂ´s completly nuts, but that has been my experience of it.

/Sebulon


----------



## dvl@ (Feb 25, 2013)

Thank you for that description.  I think the problems I encountered were severalfold:

- failure to upgrade from within FreeBSD (cannot flash IT over IR compounded by not being able to first erase the firmware)
- trouble finding a method for creating a DOS bootable stick without a DOS machine
- using sticks that didn't seem to be reliable for booting
- winding up booting into DOS with a mother board that wasn't compatible with sas2flsh ("Failed to initialize PAL")

Fortunately, I did have a m/b with UEFI support.  With that I had success.

It's a terrible first-time experience, with pictures.


----------

