LSI 9201-16i

Support na stronie Broadcoma:

Po wypełnieniu dajemy Search i czekamy..

To convert a card from IT to IR I typed in the three commands below. No rebooting required. First line removed the firmware, BIOS and UEFI BSD. Second line installed the IR firmware. Third line added the UEFI BSD back to the card for UEFI boot.

sas3flash –o –e 6
sas3flash -f SAS9311_8i_IR.bin
sas3flash -b X64sas3.rom

LSI Corporation SAS3 Flash Utility
Version 02.00.00.00 (2013.04.01) 
Copyright (c) 2008-2013 LSI Corporation. All rights reserved 



SAS3FLASH: Disconnecting the EFI Driver.
     Adapter Selected is a LSI SAS: SAS3008(C0)

     Controller Number              : 0
     Controller                     : SAS3008(C0)
     PCI Address                    : 00:03:00:00
     SAS Address                    : 500605B-0-06CE-3920
     NVDATA Version (Default)       : 01.11.00.02
     NVDATA Version (Persistent)    : 01.11.00.02
     Firmware Product ID            : 0x2221 (IT)
     Firmware Version               : 01.00.02.00
     NVDATA Vendor                  : LSI
     NVDATA Product ID              : SAS9300-8i
     BIOS Version                   : 08.03.00.00
     UEFI BSD Version               : 02.00.00.00
     FCODE Version                  : N/A
     Board Name                     : SAS9300-8i
     Board Assembly                 : H3-25573-00E
     Board Tracer Number            : SV32928547

     Finished Processing Commands Successfully.
     Exiting SAS3Flash.


SAS3FLASH: Reconnecting the EFI Driver. Please wait...

After:

LSI Corporation SAS3 Flash Utility
Version 02.00.00.00 (2013.04.01) 
Copyright (c) 2008-2013 LSI Corporation. All rights reserved 

     Adapter Selected is a LSI SAS: SAS3008(C0)

     Controller Number              : 0
     Controller                     : SAS3008(C0)
     PCI Address                    : 00:03:00:00
     SAS Address                    : 500605B-0-06CE-3920
     NVDATA Version (Default)       : 01.11.00.03
     NVDATA Version (Persistent)    : 01.11.00.03
     Firmware Product ID            : 0x2721 (IR)
     Firmware Version               : 01.00.02.00
     NVDATA Vendor                  : LSI
     NVDATA Product ID              : SAS9311-8i
     BIOS Version                   : N/A
     UEFI BSD Version               : 02.00.00.00
     FCODE Version                  : N/A
     Board Name                     : SAS9300-8i
     Board Assembly                 : H3-25573-00E
     Board Tracer Number            : SV32928547

     Finished Processing Commands Successfully.
     Exiting SAS3Flash.

Żródło

Numeracja slotów we FreeBSD

Kontroler sam mapuje dyski, zapamiętując je i przydzielając kolejne targety. Przy częstej wymianie źle to wygląda i psuje się kolejność. Np:

# camcontrol devlist
<ATA TOSHIBA MQ01ABD1 2A>          at scbus0 target 20 lun 0 (pass0,da0)
<ATA GOODRAM 01.7>                 at scbus0 target 21 lun 0 (pass1,da1)
<ATA GOODRAM 01.7>                 at scbus0 target 22 lun 0 (pass2,da2)
<ATA WDC WD5000LPVT-7 1A01>        at scbus0 target 23 lun 0 (pass3,da3)
<ATA ST31000340NS SN04>            at scbus0 target 24 lun 0 (pass4,da4)
<ATA ST31000340NS SN05>            at scbus0 target 25 lun 0 (pass5,da5)
<ATA TOSHIBA HDWE150 FP2A>         at scbus0 target 29 lun 0 (pass6,da6)
<ATA TOSHIBA HDWE150 FP2A>         at scbus0 target 30 lun 0 (pass7,da7)
<ATA TOSHIBA HDWE150 FP2A>         at scbus0 target 31 lun 0 (pass8,da8)
<ATA TOSHIBA HDWE150 FP2A>         at scbus0 target 32 lun 0 (pass9,da9)
<ATA TOSHIBA HDWE150 FP2A>         at scbus0 target 33 lun 0 (pass10,da10)
<ATA TOSHIBA HDWE150 FP2A>         at scbus0 target 34 lun 0 (pass11,da11)

Rozwiązać to można, wymuszając by driver mapował target zawsze wg. nr portu dodając do /boot/loader.conf:

hw.mps.use_phy_num="-1"

A następnie do /boot/device.hints statyczne mapowanie:

hint.scbus.0.at="mps0"
hint.da.0.at="scbus0"
hint.da.0.target="0"
hint.da.1.at="scbus0"
hint.da.1.target="1"
hint.da.2.at="scbus0"
hint.da.2.target="2"
hint.da.3.at="scbus0"
hint.da.3.target="3"
hint.da.4.at="scbus0"
hint.da.4.target="4"
hint.da.5.at="scbus0"
hint.da.5.target="5"
hint.da.6.at="scbus0"
hint.da.6.target="6"
hint.da.7.at="scbus0"
hint.da.7.target="7"
hint.da.8.at="scbus0"
hint.da.8.target="8"
hint.da.9.at="scbus0"
hint.da.9.target="9"
hint.da.10.at="scbus0"
hint.da.10.target="10"
hint.da.11.at="scbus0"
hint.da.11.target="11"
hint.da.12.at="scbus0"
hint.da.12.target="12"
hint.da.13.at="scbus0"
hint.da.13.target="13"
hint.da.14.at="scbus0"
hint.da.14.target="14"
hint.da.15.at="scbus0"
hint.da.15.target="15"

Teraz już wystarczy połączyć kieszenie HDD z poszczególnymi numerami portów na kontrolerze.