LSI SAS2008 mps driver preferred firmware version
Gary Palmer
gpalmer at freebsd.org
Sat Nov 14 14:31:07 UTC 2015
On Sat, Nov 14, 2015 at 01:18:14PM +0100, Kai Gallasch wrote:
> On 12.11.2015 23:20 Royce Williams wrote:
> > Firmware should match driver, e.g.:
> >
> > mps0: Firmware: 19.00.00.00, Driver: 19.00.00.00-fbs
> >
> >
> > Some of this may help -- not yet updated for 10.2, but may still be useful:
> >
> > http://roycebits.blogspot.com/2015/01/freebsd-lsi-sas9211-8i-hba-firmware.html
>
> Thanks! Lots of information about reflashing the 9211-8i.
> So I upgraded the old firmare of the controller from
>
> mps0: Firmware: 05.00.17.00, Driver: 20.00.00.00-fbsd
> to mps0: Firmware: 20.00.04.00, Driver: 20.00.00.00-fbsd
> (FreeBSD 10.2)
>
> As I understand it the firmware 20.00.00.00 was pulled by avago and
> replaced with the fixed version 20.00.04.00
>
> I will give feedback if I notice any problems with this FW version.
>
> As a side note: Flashing the 9211-8i to the new firmware version changed
> the way FreeBSD orders the disk devices on this server:
>
> With the old firmware it looked like this:
>
> root@:~ # camcontrol devlist
> <HITACHI HUS156030VLS600 A760> at scbus0 target 10 lun 0 (pass0,da0)
> <HITACHI HUS156030VLS600 A5D0> at scbus0 target 11 lun 0 (pass1,da1)
> <ATA INTEL SSDSC2BA10 0270> at scbus0 target 12 lun 0 (pass2,da2)
> <ATA INTEL SSDSC2BA10 0270> at scbus0 target 13 lun 0 (pass3,da3)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 14 lun 0 (pass4,da4)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 15 lun 0 (pass5,da5)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 16 lun 0 (pass6,da6)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 17 lun 0 (pass7,da7)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 18 lun 0 (pass8,da8)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 19 lun 0 (pass9,da9)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 20 lun 0 (pass10,da10)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 21 lun 0 (pass11,da11)
> <SUN HYDE12 0341> at scbus0 target 22 lun 0 (pass12,ses0)
> <AHCI SGPIO Enclosure 1.00 0001> at scbus7 target 0 lun 0 (pass13,ses1)
>
> The order is according to the order the disks are placed in the drive
> bays: (da0, bay1; da1, bay2, ..)
>
>
> With the new firmware it now looks like this:
>
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 8 lun 0 (pass0,da0)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 9 lun 0 (pass1,da1)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 10 lun 0 (pass2,da2)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 11 lun 0 (pass3,da3)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 12 lun 0 (pass4,da4)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 13 lun 0 (pass5,da5)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 14 lun 0 (pass6,da6)
> <WD WD2001FYYG-01SL3 VR08> at scbus0 target 15 lun 0 (pass7,da7)
> <ATA INTEL SSDSC2BA10 0270> at scbus0 target 16 lun 0 (pass8,da8)
> <ATA INTEL SSDSC2BA10 0270> at scbus0 target 17 lun 0 (pass9,da9)
> <HITACHI HUS156030VLS600 A5D0> at scbus0 target 18 lun 0 (pass10,da10)
> <HITACHI HUS156030VLS600 A760> at scbus0 target 19 lun 0 (pass11,da11)
> <SUN HYDE12 0341> at scbus0 target 20 lun 0 (pass12,ses0)
> <AHCI SGPIO Enclosure 1.00 0001> at scbus7 target 0 lun 0 (pass13,ses1)
>
> So now the drive stuck in the last drive bay is seen as da0 and the
> drive in the first drive bay as da11
>
> But: In the controller BIOS the scan order of the drives did not change
> at all with the new firmware! So the change is only in the way FreeBSD
> sees the drives.
>
> My explanation for this change in drive ordering is, that my 9211-8i is
> a SUN branded one (SGX-SAS6-INT-Z) and the server is a SUN server. So
> maybe the original firmware contained some adaptations for this server,
> that are missing in the new firmware.
>
> Can the way FreeBSD orders scanned SAS drives be changed? If not, no
> problem, as I use partition labels for my zfs pools and the disks are
> also labeled on the server as well.
You can do thinks in /boot/loader.conf to hard code bus and drive
assignments.
e.g.
hint.da.0.at="scbus0"
hint.da.0.target="19"
hint.da.0.unit="0"
hint.da.1.at="scbus0"
hint.da.1.target="18"
hint.da.1.unit="0"
See scsi(4) or cam(4) for more hints.
You're probably better off using GPT labels though, as they will
survive any future disk order changes. The fact the target numbers
changed means that loader.conf changes will fix the current issue
but may not work properly after any future firmware updates.
Gary
More information about the freebsd-stable
mailing list