Восстановление SSD дисков на контроллере SandForce SF-2XXX



Здесь я расскажу как восстанавливать диски, которые определяются как sandforce {200026BB} или которые совсем не определяются.

Все началось с того, что мне подарили SSD, который определялся как sandforce {200026BB}, поиск информации по этой болезни вывел меня на тему форума рубоарда, где обсуждались способы их реанимации. Но конкретного мануала, как все сделать и где скачать там не было, в итоге с помощью гугла нашел китайский мануал, и в какой-то степени данная статья есть перевод этого мануала плюс мой успешный опыт. Прямые ссылки на необходимое ПО я пока не буду выкладывать, т.к. не знаю можно ли это делать в данном случае, если вы скажите да, то добавлю их в статью, но в любом случае здесь много подсказок, baidu вам в помощь.

Итак, что нам понадобиться:

1. Отвертка (необходимо будет разобрать диск, чтобы узнать как там дела)
2. FW_Worksheet_SFI_SF-2000_140120_Confidential_Gold (таблица, где вы должны найти ID конфигурации по своему чипу и памяти)
3. Дистрибутив Fedora 14 32bit, я использовал RFRemix 14.1 LiveDVD (ОС, где выполняются все манипуляции, необходима именно Fedora 14)
4. SF_Genesis_v1.5.2 (ПО для подготовки прошивки и непосредственно прошивки контроллера)
5. *.lic файл (лицензия, используемая распаковки пакетов с прошивками, содержит ID, которые будут распаковываться. В сети я нашел только 3 файла.)
6. FW_PPRO_5_8_2_Release.906190.release (пакет с прошивками, существуют пакеты других версий, этот взят для примера)
Вкратце, алгоритм такой: вы узнаете в таблице ваш ID, проверяете есть ли такой ID в лицензии, если нет, то ищите другую лицензию, если есть, то с помощью этой лицензией распаковывает пакет с прошивками и прошиваете.

Более подробно:

1. Разбираем SSD:



Смотрим чип (желтый), здесь он SF-2281, память (синий) 29F64G08CBAAA 16шт. (по 8 вверху и внизу). Ищем нашу конфигурацию в таблице:



Запоминаем.

2. Подключаем диск к компьютеру, загружаемся в Fedora. Если у вас SSD не определяется(и вы уверены, что дело не в питание и не в сигнальной линии), то перед подключение необходимо замкнуть два контакта(выделены красным), после включение компьютера разомкнуть. Обычно, они выглядят так всегда.

3. В ОС необходимо установить дополнительные программы:
lsscsi-0.23-2.fc14.i686
mailx-12.5-1.fc14.i686(если у вас RFRemix 14.1 LiveDVD, то не нужно)
sg3_utils-1.29-1.fc14.i686
smartmontools-5.40-5.fc14.i686

4. Ищем в лицензии нашу конфигурацию:



Нам повезло она есть, если ее нет, то это большая проблема. Дело в том, что такие лицензии даются только производителям дисков, и в открытом доступе их нет. Просто изменить файл нельзя, т.к. в нем прописана чексумма, которую нужно еще расшифровать. В моем случае так и было, но мне помог человек с рубоарда.

5. Запускаем программу SF_OEM_PackageManager:



Distribution Firmware Package File – пакет с прошивками, выбираем его.
License File – путь к лицензии.
Destination Folder – куда будут распаковываться прошивки.
Customer ID и Diagnostic Unlock Key – заполнить как на картинке ниже.
Firmware Revision Override String – версия прошивки, в нашем случае 5.8.2.



Жмем Create OEM Package и ждем завершение распаковки.

6. Запускаем программу SF_ConfigurationManager (это шаг можно пропустить). Конфигуратор требует указать файл для редактирования, он находится там, где мы распаковывали прошивки, в папке Configuration_Files и с именем нашей конфигурации:



Открываем файл:



Здесь я меняю Model No. – имя отображаемое ОС, серийный номер – любой, Device Nominal Form Factor – форм-фактор, остальное на ваше усмотрение. Нажимаем сохранить и выходим из программы.

7. Запускаем консоль, вводим su, вводим lsscsi, которая покажет на каком адресе висит наш диск:



У меня в виртуалке его нет, но у вас должен быть диск с именем sandforce {200026BB}, запоминаете его адрес, пусть будет 2:0:0:0. Далее переносим в консоль файл SF_Genesis и прописываем к нему аргументы:

SF_Genesis –PROCESS_SSD [адрес диска] [путь к файлу *.mfp, который находится в папке с распакованной прошивкой] [путь к файлу, который мы редактировали в SF_ConfigurationManager] 12345 www_123 log=[путь к лог-файлу]



Жмем Enter и ждем заветной надписи PASS, если получили FAIL, то необходимо разбирать лог и искать в какой момент произошла ошибка, в большинстве случаев ошибки бывают из-за невнимательности.

В основном вся движуха по этой теме происходит на китайских форумах, но все равно советую ознакомиться с темой на рубоарде, если возникнут вопросы можете писать мне. Спасибо за внимание.

P.S.: Прошу прощение за мое косноязычие и заранее за орфографию.

Similar posts

AdBlock has stolen the banner, but banners are not teeth — they will be back

More
Ads

Comments 17

    +1
    А в чем причина поломки? Что конкретно восстанавливаете?
      +1
      В чем причина не могу сказать, судя по диванной статистике, такое происходит спонтанно. Восстановление прошивки, конечно же.
        +3
        Это не восстановление прошивки. Это полный Production Process. Как одна из частей этого процесса заливается прошивка. Проблему решает не заливка прошивки а пересоздание всех внутренних структур с нуля.
        Естественно с полной потерей данных (чипы памяти стираются).
      +3
      Поломка как результат увеличившегося количества битовых ошибок, с которыми в определенный момент не справится ECC. Вторая причина — как и везде ошибки программистов и недотестированность кода в уловиях изношенной памяти. Переполнение логов, исчерпание пула резервных блоков.
        0
        Ставлю на второе. Возможно, разросшиеся логи затирают критически важные блоки прошивки. Как на Seagate было одно время.
          +1
          К сожалению второе в чистом виде реже.
          Вот типичная смерть сандфорса:
          PANIC: ReadSdata:552 Cannot recover ECC error: dataAddr 00000000 nDataWords 0410 epa 20099200


          Второе чаще всего как следствие первого, как результат такой лог сендфорса:
          PANIC: Free is Out of Reserved RBlocks
            +1
            И при этом паника и вот такое… Не Read-Only mode, не завал SMART, а сразу вот такое… Аррргх тем кто подобную прошивку писал.
              +2
              Да, в прошивке нет нормальной отработки ошибок. Просто валимся в аналог BSOD.
      • UFO just landed and posted this here
          0
          Я, как большой любитель кактусов ssd, отвечу. Intel тоже использует сэндфорсы и у меня intel 520ый 480гб, емнип, именно на нем живет не один год в одном из ноутбуков. Его предшественник на собственном контроллере intel x25-m 160гб умер, отработав года 4, словив баг 8мб. Ни одно из известных руководств оживить его не помогло.

          В другом моем ноутбуке живет samsung 840evo 1тб, который вечно деградирует по записи и ему не помогают новые прошивки.

          В рабочем буке умер adata sp900 256гб именно на сэндфорсе. Умер во время прошивки, которая «упала» в автообновлении dell'а. Его место занял samsung 840 pro.

          Продолжаю есть вести наблюдения.
            +1
            У интела вообще зоопарк.
            поколения G1, G2, G3 — на собственных чипах.
            335, 520, 530, 535 — сандфорс
            520 — Marvell.
            • UFO just landed and posted this here
              +1
              Я думаю процент брака у них такой же, как и у интела и у самсунга, но объем продаж, из-за цены, гораздо выше, вот и поломки чаще бывают, но это ко многому относиться.
              +1
              Это всё хорошо. Но где брать указанные выше файлы?
                0
                Я не знаю насколько законно выкладывать эти файлы, но, как я писал, ищите, их очень легко найти.
                  +1
                  Ну в личку кинь что ли… А е могу найти прошивки. Хелп
                0
                Огромное спасибо за столь подробный мануал!
                Пришлось зарегистрироваться на Baidu и скачать китайский аналог дропбокса.
                Но зато есть шанс на восстановление Kingston на 480Gb, который второй месяц лежит на полке.
                Еще три часа буду прошивки качаться, а руки уже чешутся.

                Only users with full accounts can post comments. Log in, please.