I just upgraded from P16 to P20 after downloading the firmware from
http://www.avagotech.com/products/server-storage/host-bus-adapters/sas-9211-8i#downloads. Used the FreeNAS sas2flash command to upgrade and so far I have no problems... haven't even rebooted the machine yet.
[root@freenas] ~# sas2flash -listall
LSI Corporation SAS2 Flash Utility
Version 16.00.00.00 (2013.03.01)
Copyright (c) 2008-2013 LSI Corporation. All rights reserved
Adapter Selected is a LSI SAS: SAS2008(B2)
Num Ctlr FW Ver NVDATA x86-BIOS PCI Addr
----------------------------------------------------------------------------
0 SAS2008(B2) 16.00.00.00 10.00.00.06 No Image 00:01:00:00
Finished Processing Commands Successfully.
Exiting SAS2Flash.
[root@freenas] /mnt/FileStorage/home/neal# sas2flash -fwall 2118it.bin
LSI Corporation SAS2 Flash Utility
Version 16.00.00.00 (2013.03.01)
Copyright (c) 2008-2013 LSI Corporation. All rights reserved
Ignoring All other commands except for output flags
Attempting to flash firmware to LSI SAS SAS2008(B2) :
Executing Operation: Flash Firmware Image
Firmware Image has a Valid Checksum.
Firmware Version 20.00.04.00
Firmware Image compatible with Controller.
Valid NVDATA Image found.
NVDATA Version 14.01.00.00
Checking for a compatible NVData image...
NVDATA Device ID and Chip Revision match verified.
NVDATA Versions Compatible.
Valid Initialization Image verified.
Valid BootLoader Image verified.
Beginning Firmware Download...
Firmware Download Successful.
Verifying Download...
Firmware Flash Successful.
Resetting Adapter...
Adapter Successfully Reset.
Finished Processing Commands Successfully.
Exiting SAS2Flash.
I have this in my dmesg...
Aug 26 21:29:40 freenas mps0: Reinitializing controller,
Aug 26 21:29:50 freenas mps0: Warning: io_cmds_active is out of sync - resynching to 0
...
(repeated 1023 times)
...
Aug 26 21:30:05 freenas mps0: Firmware: 20.00.04.00, Driver: 20.00.00.00-fbsd
Aug 26 21:30:05 freenas mps0: IOCCapabilities: 1285c<ScsiTaskFull,DiagTrace,SnapBuf,EEDP,TransRetry,EventReplay,HostDisc>
Aug 26 21:30:05 freenas mps0: mps_reinit finished sc 0xfffffe0000abe000 post 4 free 3
Aug 26 21:30:05 freenas mps0: Unfreezing SIM queue
Aug 26 21:30:07 freenas mps0: SAS Address for SATA device = 6f9d3e2aa4a9948f
Aug 26 21:30:07 freenas mps0: SAS Address from SATA device = 6f9d3e2aa4a9948f
Aug 26 21:30:07 freenas mps0: SAS Address for SATA device = dd654148b6b58c7d
Aug 26 21:30:07 freenas mps0: SAS Address from SATA device = dd654148b6b58c7d
Aug 26 21:30:07 freenas mps0: SAS Address for SATA device = 9281e097f6d465b
Aug 26 21:30:07 freenas mps0: SAS Address from SATA device = 9281e097f6d465b
Aug 26 21:30:07 freenas mps0: SAS Address for SATA device = 4571382bcda0998b
Aug 26 21:30:07 freenas mps0: SAS Address from SATA device = 4571382bcda0998b
Aug 26 21:30:07 freenas mps0: SAS Address for SATA device = 45613e44dfb3b193
Aug 26 21:30:07 freenas mps0: SAS Address from SATA device = 45613e44dfb3b193
Aug 26 21:30:07 freenas mps0: SAS Address for SATA device = 9281e0e726b617e
Aug 26 21:30:07 freenas mps0: SAS Address from SATA device = 9281e0e726b617e