Procrypto repost: Опыт восстановления окирпиченного Radeon’а

Источник: http://procrypto.jabberworld.info/%d0%be%d0%bf%d1%8b%d1%82-%d0%b2%d0%be%d1%81%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%bb%d0%b5%d0%bd%d0%b8%d1%8f-%d0%be%d0%ba%d0%b8%d1%80%d0%bf%d0%b8%d1%87%d0%b5%d0%bd%d0%bd%d0%be%d0%b3%d0%be-radeon/

В общем-то, ничего нового тут не напишу, но может кому пригодится. У меня такой опыт впервые.

Краткая предыстория: на риге оставалась одна карточка с высоким напряжением (остальные уже перешил на <1V). Сделал ей низковольтный BIOS, зашил. Виснет даже на низких частотах. Сделал BIOS на чуть более высокое напряжение, перегружаю риг, гашу майнинг, начинаю шить, но карточка уже снова успела подвиснуть. В итоге BIOS для Tahiti улетает на «соседний» Pitcairn (у которого нет резервного BIOS’а). И… Сообщения при прошивке о том, что BIOS’ы отличаются, я видел, но как-то легкомысленно отнесся — по принципу «раньше даже если кривой BIOS зашивал, то карточка поднималась и потом шил нормальный». Ага, не тут-то было.

После ребута карточка в системе уже нормально не опознавалась. Она виделась на PCI-шине как устройство, но не более того. Ни OpenCL-утилиты, ни atiflash ее не распознавали. Пробовал atiflash как Linux’овый, так и под DOS’ом. Просмотр ключей atiflash’а на предмет того, что «там на шине есть карточка, шей давай» ничего не дал.

Оставалось шить ее на программаторе, но были другие дела и карточку пока отложил. Дошли руки до нее только сегодня вечером, плюс пришла в голову интересная мысль — содрать микросхему BIOS’а с дохлого Pitcairn’а (а дохлых карточек у меня уже несколько валяется), напаять на «убитую» карту вместо запоротого BIOS’а — все же BIOS от Pitcairn’а Pitcairn’у ближе, чем от Tahiti — и попробовать с этим всем взлететь, а потом уже зашить родной BIOS от карты.

Начал рассматривать все имеющиеся платы на предмет того, что там за микросхема BIOS’а стоит. На запоротом XFX’е это была 25LD020, на всех остальных платах — 25LD010. Цоколевка совпадает, но в процессе поиска различий наткнулся на пару тредов на techpowerup, где были подобные ситуации и там упоминался интересный способ с закорачиванием ног этой самой флешки. В итоге это помогло и мне.

Суть метода: находим микросхему BIOS’а (помним, что это 25LD010/25LD020 или что-то подобное), напаиваем более-менее длинную перемычку между 1 и 8 ногами (первая с точкой, 8-я на противоположном ряду по короткому пути). Запускаем машину с картой. Теперь atiflash -i находит карту, но в поле test пишет fail. Не важно, самое главное — карта инициализировалась и флешка поднялась на шине. Если пытаться сейчас писать в нее BIOS, то будет ошибка «failed to read rom». Перерезаем напаянную перемычку не выключая карту. Запускаем прошивку — теперь она проходит успешно. Гасим машину, убираем ошметки перемычки с ног флешки, включаем и радуемся рабочей карте 🙂

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *