Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Качаем прошивку

Прежде всего, нужно найти прошивку. Ищем здесь:

https://www.broadcom.com/products/storage/host-bus-adapters/sas-9300-8i

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

На текущий момент нашлась 9300_8i_Package_P16_IR_IT_FW_BIOS_for_MSDOS_Windows, качаем.

Прошивать будем через UEFI, поэтому качаем ещё один файлик – Installer_P14_for_UEFI.

Из всего этого добра нам понадобятся только эти файлы:

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Где:

  • sas3flash.efi – прошивальщик под UEFI.
  • mpt3x64.rom – BIOS контроллера UEFI. Я использовал Unsigned версию.
  • mptsas3.rom – BIOS контроллера Legacy.
  • SAS9311_8i_IR.bin – прошивка IR.
  • SAS9300_8i_IT.bin – прошивка IT.

Число 9311 в названии прошивки IR смущает, возможно, она не пойдёт на нашем контроллере.

Подготовка флешки

  • Берём флешку, форматируем её средствами винды в FAT32.
  • Копируем на флешку вышеуказанные файлы.

Вставка флешки

Простая операция вставки флешки через KVM вызвала проблемы. Сервер Supermicro.

Решение проблемы здесь: Supermicro – VM Device is not valid, please click “Refresh” button.

Отключаем видимость контроллера в BIOS

При загрузке жмём Ctrl +C и попадаем в утилиту Avago Technologies Config Utility.

Проваливаемся по Enter в контроллер и устанавливаем видимость “OS Only”.

Загружаемся в EFI Shell

Поскольку на нашем сервере Supermicro есть Built-in EFI Shel, то будем им пользоваться. При загрузке нажимаем DEL, попадаем в BIOS и выбираем в Boot Device – Built-in EFI Shel:

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Сохраняемся, проверяем что флешка вставлена:

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Перезагружаем сервер в EFI Shell:

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Просмотреть список примонтированных устройств:

map

Мы видим что наша флешка нашлась как blk0 и примонтировалась как hd51a0h0b0b с алиасом fs0.

Переходим внутрь флешки:

fs0:

Смотрим список содержимого с помощью ls или dir:

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Файлики доступны. На скрине у меня нет SAS9300_8i_IT.bin, это не страшно. Флешку можно вытащить, скопировать туда файлик и примонтировать обратно без перезагрузки сервера.

Прошивка

Посмотрим текущие настройки контроллера:

sas3flash.efi -list

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI
  • Текущая версия контроллера 15.00.00.00 (2016.11.17).
  • SAS Address – 500605B-0-0CDA-35A0
  • Firmware Product ID – IT
  • Версия прошивки (Firmware Version) 15.00.02.00.
  • Версия BIOS Legacy (BIOS Version) 08.35.04.00
  • Версия BIOS UEFI (UEFI BSD Version) – нет вообще.

Для начала установим UEFI BSD:

sas3flash.efi -c 00CDA35A0 -b mpt3x64.rom

00CDA35A0 – это последние 9 символов SAS Address без дефисов. Символы HEX от 0 до F.

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Flash BIOS Image Successful. Это хорошо.

Дальше ставим IR прошивку контроллера:

sas3flash.efi -c 00CDA35A0 -f SAS9311_8i_IR.bin

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Firmware Image Validation Failed! Ну вот, а счастье было так возможно… Судя по описанию ошибки наш чип не поддерживает эту прошивку, печаль. Ну тогда хотя бы попытаемся обновить прошивку IT до последней:

sas3flash.efi -c 00CDA35A0 -f SAS9300_8i_IT.bin

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Firmware Flash Successful. Отлично. Прошиваем BIOS Legicy:

sas3flash.efi -c 00CDA35A0 -b mptsas3.rom

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI
Flash BIOS Image Successful. Это хорошо. Проверяем версию sas3flash.efi -list:
Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Все остальные версии тоже обновились. Перезагружаемся:

reset

Не забываем в BIOS установить нужный Boot Device.

И всё же…

Нагуглил в статье https://www.broadcom.com/support/knowledgebase/1211161501344/flashing-firmware-and-bios-on-lsi-sas-hbas информацию:

*When flashing an 12G HBA (SAS 9300 family) with IR mode firmware provided in the same package, named 9311, SAS3Flash returns the following error:

ERROR: NVDATA Image does not match Controller Subsystem ID!
ERROR: No compatible NVDATA Image(s) found!
Firmware Image Validation Failed!

Resolution:
Using DOS or EFI SAS3Flash version 10.00.00.01 or higher with following command string

sas3flsh –o –e -6
sas3flsh –o –f <firmware> -b <bios> -nossid

EFI:
sas3flash –o –f <UEFI BSD firmware> -nossid
Пробую:

sas3flash.efi -o -f SAS9311_8i_IR.bin -nossid

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Cannot Flash IR Firmware over IT Firmware!

Вот оно как. Значит, снесём IT Firmware.

Внимание – дальше нельзя перезагружать сервер, чтобы не превратить контроллер в кирпич!

Стираем все прошивки:

sas3flash.efi -o -e 6

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Ставим прошивку и BIOS Legacy:

sas3flash.efi -o -f SAS9311_8i_IR.bin -nossid -b mptsas3.rom

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Выдыхаем, стираем пот. Ставим BIOS UEFI, также как было выше:

sas3flash.efi -c 00CDA35A0 -b mpt3x64.rom

Смотрим что получилось:

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Слева то что было. Спава то что стало.

Firmware Product ID – IR! перезагружаемся.

reset

Первый раз даём перезагрузиться полностью, чтобы определились все устройства. Попадаем в EFI Shell, снова ребутаемся:

reset

При загрузке жмём Ctrl +C и попадаем в утилиту Avago Technologies Config Utility.

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Видим, что всё в порядке, смотрим далее:

Прошивка Avago SAS 9300-8i Host Bus Adapter через UEFI

Появилась опция RAID Properties. План перевыполнен.

Источник статьи

P.S.

  • В 10 RAID можно добавить только 10 дисков.
  • Всего во всех рейдах можно использовать максимум 14 дисков
  • Могут быть проблемы с работой дисков в RAID
  • Возможны сбои в работе
  • Всё что Вы делаете по данной статье Вы делаете на свой страх и риск, автор статьи не несет отвественности за Ваши действия

P.P.S.

Данный контроллер был прошит мной по данной инструкции