слетела прошивка на материнке, биос MX25L4005,
Перечитал все что мог на форуме, но внятного ответа так и не нашел.
разьема на матери SPI нет
что могу:
1 отпаять флешку
2 есть программатор willem3m/35
вопрос - можно ли прошить на этом прогере?
если нет, то может как его переделать?
Ну на счёт Willem 3/4 незнаю... но у меня 4.5 и без переделок всё пошло... но ставил микруху mx25l8005)
PCB3.x тоже можно переделать, но иногда значительно проще сваять персональный программатор для SPI флешек.
Ну тут уж сори )))... я для информации сказал чем прошить можна... а вам видней
Пока читал тему, рыдалъ от изысканий ув. search_max'а Ну там, всякие подстроечные "резюки" (или резаки)...
По теме: после попыток перепрошить проблемную зависающую MB Gigabyte GA-965P-S3, на 80% прогресса перешивки она таки повисла... Причем манипуляции с HDD Auto-Recovering не давали никакого эффекта. Обсосал тему по вопросу рекаверинга БИОСа с HDD, расковырял код родного БИОСа посмотреть, что же там такого "ключевого"... ничем не отличается от дампов, приведенных mikkey. Пришлось "ваять" прогамматор, предложенный OLIFA...
Программатор работает без особых нареканий. Стабилизатор 3,3 В делал на LM1117-3.3. Параллельно флеше, традиционно, поставил блокировочную емкость 0,1 мкФ. Токоограничительные резисторы 0805 нашел номиналом 120 Ом. Реадми.тхт о поддерживаемых флешах сразу не читал, поэтому здесь немного осекся - проверял на M25P05 (64 кБ). Ессно, с ключом /i (идентификация) не работает... Полез за осциллографом, смотреть ошибки в "четырех припаянных проводах". Везде сигналы есть, ставлю delay 100 - опять с ключом /i не определяется... Ладно, пробую читать содержимое - читает, странно... Потом только смотрю Реадми.тхт в котором поддержки указанной флеши нет. Но, повидимому, стандартными командами чтения/записи всё работает. Уверенно читает без ключа задержки /d=xxxx. Но, всё же, для режима чтения поставил /d=10 (для уверенности). Для записи пришлось ставить /d=100 - потому как без делэй писать не хочет.
P.S. OLIFA плюх в репутацию за ссылку.
Добавлено спустя ...надцать часов.
Час от часу не легче...
Поигравшись с ещё одной флешкой M25P05, путем проб и ошибок определил, что параметр /d= не критичен. Почему неуверенно писало первые разы - не известно.
Основная проблема вот в чем:
Программатор был сделан как "конструкция выходного дня", слепленная на коленке из того что было... дабы перепрошить SST25VF080B с вышеуказанной материнки. Выпаял флешку, запаял на переходник, прочитал содержимое "запоротой" прошивки (содержимое вполне похоже на прошивку). Сделал Erase. Проверил на "чистоту" - ОК. Пишу новый БИОС, потом читаю - мусор. Ввожу зарежку, повторяю процедуры стирания, записи и чтения - аналогичный мусор. Причем байт в байт совпадающий с предыдущим. Убираю кабель-удлиннитель, тыкаю плату прямо в порт LPT - то же самое. Гружусь с флеши под Вин98-м ДОСом, добавляю недостающие CSDPMI файлики. Повторяю процедуру - всё точь в точь совпадает - тот же мусор. Кстати, делал unprotect, биты защиты снялись. Но положительного результата это не дало.
Неужели флеша таки умерла? Жаль, нет другой емкой флеши 25ххх чтобы опробовать ещё раз на другом "пациенте". Ну разве что ехать на базар и покупать один из вариантов, который есть на рынке - ST M25P80 или Atmel AT26DF081. Обе 8-мегабитки, НО! В таблице поддерживаемых флешей, в БИОСе нет таких... причем для каждой флеши свои процедуры работы стирания/записи... ну выглядит примерно так:
Как вариант - подправить таблицу для Numonyx, второй байт (Device ID) поставить 20h (вместо 80h). Или для JEDEC ID - 20h & 14h. Кстати... не нашел у Numonyx'а (или ST) Device ID=80h
Партизан подпольной луны aka (R)soft
Пока нет возможности приобрести ST M25P80 и AT26DF081, поэксперементировал с AT25F1024N (1 Mbit). Эта флешь тоже не входит в список поддерживаемых, поэтому не читает сигнатуру, но программатор содержимое успешно прочитал. Пробовал Erase - не трёт, хоть с unlock, хоть без... Пробовал писать - пишет. Но при сравнении записанной прошивки с оригиналом очень много расхождений. Хотел глянуть внутрь программы прошивальщика - а программа оказалась покриптована UPX'ом, дальше не стал заморачиваться...
Партизан подпольной луны aka (R)soft
Может напишу не в тему - но хотелось бы выразить своё мнение по поводу прошивки SPI флэшей.
Как то все подзабыли о неплохом на мой взгляд решении . Я давно уже собрал себе это не сложное устройство - и у меня пока что не возникало вопросов с прошивкой флешей , вплоть до последних.
Использую версию програмки с этого сайта 1.0.2.7
Ранее тема этого програматора уже обсуждалась на нашем сайте.
Кто хочет - ищет способ
Кто не хочет - ищет причину (с)
Skladchik, решение, возможно, и гениальное... но, сайт требует авторизации. а нафик оно другим надо, спрашивается в задаче? Вся гениальность в простоте, и не надо регистрироваться, что характерно...
Итак, погуглив про SPI программаторы на базе Байтбластера, нашел сайтец spiflash.org который описывает железяку на базе ByteBlaster'а. И дается некая софтина под винду. Опробовал - прошить SST25VF080B удалось!
Пробовал шить AT25F1024 - выводит загадчный ID - Manufacturer Atmel, Memory Type 96, Capacity 0. Ну а если капасити ноль, то и шить/читать ессно не хочет... странно. Тогда попробую ещё на семействе ST Micro M25Pxx, отпишу результат.
Схема проста:
Стабилизатор на 3,3 В (LM1117-3.3) запитывает Байтбластер (на 74HC244) и флешу...
Разъем Байтбластера <-> Флеша
--------------------------------------------
1 TCK <-> CLK (6 pin)
2 GND <-> GND (4 pin)
3 TDO <-> DO (2 pin)
4 VCC <-> VCC (8 pin) <- со стабилизатора LM1117-3.3
5 TMS <-> /CS (1 pin)
7 nSTATUS <-> GND (сигнал заводится на GND для проверки подключения ByteBlaster'а программой)
9 TDI <-> DIO (5 pin)
10 GND <-> GND (4 pin)
Также, по стандартной схеме включения флеши - выводы 3 (/WP) и 7 (/HOLD) завести на VCC.
Между VCC и GND в непосредственной близости от флеши (или панельки) установить блокировочную емкость 0,1 мкФ. Питание брать с USB.
Дополнено...
Маленькие багфиксы и дополнения:
Чтобы Байтбластер определялся правильно (Test Hardware), нужно проверить, что 15 вывод LPT на Байтбластере заведен на GND (проверка подключения). А также проверить сигнал nSTATUS на GND.
Между выводом 2 (DO) и 8 (VCC) флеши добавить подтягивающий резистор 10 кОм.
Проверено на M25P05AV - ID не работает, но флеша читается/шьется/стирается. Повидимому программа рассчитана на емкие флеши.
Проверено на AT25F1024N - ID определяется частично (см. выше), соотв. не шьется/не читается/не стирается. А если и даешь попытку шить файл, то после прошивки не читает т.к. ID не известен
В общем опять где-то что-то не так... или не то...
Партизан подпольной луны aka (R)soft
А с исходниками есть софт под такие типа программаторы? Там же как в юнифлеше - почитал даташит, добавил микруху, практически уверен... Ну, переходник еще...
А кому счас легко...
savely
Думаю, что есть. Но я глубоко не копал в этом направлении...
Вот, нашел славненький кроссреференс (Spansion® NOR Flash MemoryCompetitive Cross Reference Guide for Embedded Applications, January 2008) на флеш память фирмы Spansion.
Судя по показателю совместимости B- (Pin-for-pin compatibility – difference in sector architecture, # of banks, bank size.) выявились следующие претенденты на замену 8-мегабитных флешей:
AT26DF081A Atmel
S25FL008A Spansion
EN25P80 EON
EN25B80 EON
EN25F80 EON
MX25L8005 Macronix
25VF080B SST
M25P80 ST Micro
W25P80 Winbond
W25X80 Winbond
С вышеозначенными в предыдущих постах двумя флешами (AT26DF081A & M25P80) надо будет попробовать пошаманить в ближайшее время, пока у меня материнка ещё доступна...
Партизан подпольной луны aka (R)soft
Отправить комментарий