What SAS3008 Firmware to use for TrueNAS12?

Scampicfx

Contributor
Joined
Jul 4, 2016
Messages
125
Hey,

I just updated my FreeNAS to TrueNAS12.

I'm wondering which SAS3008 Firmware Version I should use for TrueNAS12?
Current firmware is 15.00.00.00.

Output of sas3flash -list is:
Code:
        Adapter Selected is a Avago SAS: SAS3008(C0)

        Controller Number              : 0
        Controller                     : SAS3008(C0)
        PCI Address                    : 00:01:00:00
        SAS Address                    : 5003048-0-1cc9-0e01
        NVDATA Version (Default)       : 0e.00.30.28
        NVDATA Version (Persistent)    : 0e.00.30.28
        Firmware Product ID            : 0x2221 (IT)
        Firmware Version               : 15.00.00.00
        NVDATA Vendor                  : LSI
        NVDATA Product ID              : LSI3008-IT
        BIOS Version                   : 08.35.00.00
        UEFI BSD Version               : 17.00.00.00
        FCODE Version                  : N/A
        Board Name                     : LSI3008-IT
        Board Assembly             : N/A
        Board Trace Number     : N/A


Thanks!
 

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,702
Probably this one:
 
Last edited:

Alecmascot

Guru
Joined
Mar 18, 2014
Messages
1,175
Version 17 is available on the Broadcom site.
 

Spearfoot

He of the long foot
Moderator
Joined
May 13, 2015
Messages
2,478
Version 17 is available on the Broadcom site.
Version 16.00.10.00 is the latest firmware available from Broadcom -- the version 17 you're referring to is for the installer software.

Confusing? Yes. It is...

We also have a special version 16.00.12.00 of the firmware available here on the forum:

 

NugentS

MVP
Joined
Apr 16, 2020
Messages
2,945
I am confused as well as to exactly what is what.
sasflash -listall gives


Code:
root@newnas[~]# sas3flash -listall
Avago Technologies SAS3 Flash Utility
Version 16.00.00.00 (2017.05.02)
Copyright 2008-2017 Avago Technologies. All rights reserved.

        Adapter Selected is a Avago SAS: SAS3008(C0)

Num   Ctlr            FW Ver        NVDATA        x86-BIOS         PCI Addr
----------------------------------------------------------------------------

0  SAS3008(C0)  16.00.10.00    0e.01.30.28    08.37.00.00     00:01:00:00
1  SAS3224(A1)  16.00.11.00    10.00.00.05    08.37.00.00     00:83:00:00

        Finished Processing Commands Successfully.
        Exiting SAS3Flash.


The SAS3008 is on board the Motherboard. The 3224 is presumably the 9305-16i that is in a PCIe slot.

As far as I can tell the update command would be summat like
Code:
sas3flash -cpci 00.83.00.00 -ufirmware sas9300-16i_it.bin [for the 9305-16i]

Not sure what the 3008 equates to in 9300 terminology
 

Scampicfx

Contributor
Joined
Jul 4, 2016
Messages
125
Thanks for all your replies so far!
However, I'm still not sure if it is suggested to update from firmware 15.00.00.00 to 16.00.00.00 ? I only do firmware updates when it is *really* necessary... Are there any additional comments?
 

jgreco

Resident Grinch
Joined
May 29, 2011
Messages
18,681
No, it is not recommended to update to 16.00.00.00.

It is recommended (nearly required) to update to 16.00.12.00

I only do firmware updates when it is *really* necessary...

Unlike your system BIOS or ethernet firmware, which you can probably upgrade with a cavalier attitude, the firmware on an HBA works in concert with the driver in the OS, and it touches every block read from or written to your disks on an ongoing basis, so you really do want the correct firmware to be used. Failure to do so can result in curious problems or issues, or potentially to much more serious issues such as data corruption.

Do consider this to be *really* necessary.
 

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,176
Unlike your system BIOS or ethernet firmware, which you can probably upgrade with a cavalier attitude, the firmware on an HBA works in concert with the driver in the OS, and it touches every block read from or written to your disks on an ongoing basis, so you really do want the correct firmware to be used. Failure to do so can result in curious problems or issues, or potentially to much more serious issues such as data corruption.
It should be noted that this isn't empty fearmongering. LSI's firmware can be extremely picky, especially if you stray away from the one true path [that was validated by LSI].

Examples include:
  • SAS2 HBAs with early firmware were very broken with SAS1 expanders
  • SAS3 HBAs with early firmware were rather broken with SAS2 expanders
  • Mismatches of the SAS2 driver and firmware in the P16~P20 range often led to unstable behavior, possibly data corruption in weird edge cases.
  • The extension ROMs really do not like to see cards with mismatched firmware. And that means any cards, the expansion ROM is the same for the same generation and you only need to load one to handle all cards. So all the cards must absolutely have matching firmware if you have more than one and are booting from the extension ROM.
 

Scampicfx

Contributor
Joined
Jul 4, 2016
Messages
125
Thanks so much, these were exactly the answers I was looking for! :) First machine was updated successfully! I will update second machine now! :)
 

Radu

Dabbler
Joined
Mar 7, 2014
Messages
45
This 16.00.12.00 is recommended to be used regardless of the controller implementation is made by SuperMicro or some other vendor with the 3008 chip-set from LSI/Avago?
 

jgreco

Resident Grinch
Joined
May 29, 2011
Messages
18,681
This 16.00.12.00 is recommended to be used regardless of the controller implementation is made by SuperMicro or some other vendor with the 3008 chip-set from LSI/Avago?

No. In some cases, vendors release their own firmware. I believe that Dell and IBM both have their own variant for the 3008. These rarely track the latest version, so it boils down to two choices:

1) Run vendor firmware which is expected to be 100% compatible with the vendor server platform, but as probably a phase (major version) mismatch is not expected to be compatible with TrueNAS, or

2) Crossflash to LSI 9300 IT mode, potentially neutering some vendor features, but which should be safe for use with TrueNAS.

The first choice is definitely the way to go if you can find a vendor firmware version that matches the recommended LSI firmware, but note that even subrevisions matter. LSI released a special 16.00.12.00 to correct some deficiencies identified in 16.00.10.00, for example.

Yes it sucks.
 

alexr

Explorer
Joined
Apr 14, 2016
Messages
59
/etc/ix.rc.d/ix-update has a comment in it about how FreeNAS doesn't contain /usr/local/sbin/firmware_update.py. Well, now everything is TrueNAS, so everybody has a script at /usr/local/sbin/firmware_update.py. When that script runs during an update, it tries to check that the firmware in various SAS cards is updated. Unfortunately, it has a regex on line 35 in get_firmware() that fails to match the actual files shipped in /usr/local/share/firmware, so it never performs the update on my box, which has an iX-supplied, SuperMicro-shipped SAS9300-8i in it. The firmware in that directory is 16.00.03.00. My card has 16.00.01.00, so it's never been successfully updated by these scripts.

And this thread, among others, tells us to install 16.00.12.00, which only appears in this forum. Sus AF.

If iX wants this card updated to 16.00.12.00, then why isn't that version shipped with the update process, which apparently has some bugs?

And while I'm asking, there's a sentinel at /data/.ses_firmware_update that doesn't appear to be actually associated with any code anywhere in the TrueNAS repo. What's that supposed to be doing?
 

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,176
If iX wants this card updated to 16.00.12.00
Only for TrueNAS Enterprise. For TrueNAS Core, it's a strong recommendation for an action to be carried out by the administrator of the server. If you're running Enterprise, this is naturally within iX's support role.
 

alexr

Explorer
Joined
Apr 14, 2016
Messages
59
Only for TrueNAS Enterprise. For TrueNAS Core, it's a strong recommendation for an action to be carried out by the administrator of the server. If you're running Enterprise, this is naturally within iX's support role.
Those concepts doesn't match the actual efforts of those scripts.
 

zamana

Contributor
Joined
Jun 4, 2017
Messages
163
(...)
It is recommended (nearly required) to update to 16.00.12.00
(...)
Can you tell me where do I find this specific version for download?

Thank you!
Regards.
 

Redcoat

MVP
Joined
Feb 18, 2014
Messages
2,924

jgreco

Resident Grinch
Joined
May 29, 2011
Messages
18,681
Can you tell me where do I find this specific version for download?

I believe Broadcom's download support section has this version available for most cards. As noted above by @Redcoat , there's also a generic copy available in the resources section.
 

Redcoat

MVP
Joined
Feb 18, 2014
Messages
2,924
Last edited:

jgreco

Resident Grinch
Joined
May 29, 2011
Messages
18,681
Well, I know at one point I managed to find multiple links to it, possibly starting at a search like


But when I pull that up, it only lists 16.00.12.00 for the 9305 right now. *SHRUG!*
 

Redcoat

MVP
Joined
Feb 18, 2014
Messages
2,924
*SHRUG!* indeed. I find the Broadcom site to be really difficult to work on legacy equipment support, but from past personal experience I can sympathize with the challenges of integrating the data collections of acquired companies.
 
Top