[cvetblue]Новость от 08/05/2015 Прошивка V3Великого Девайса (для Меги 8, 88, 168, 328). Поддержка Микрочипа, i2c-scan, уточнение для IR-box, скорость soft для ATMEL понижена в 6 раз для прошивки целевого Атмела с кварцем 32768. Скачать PostalAVR_v3b_lice[/cvetblue] [cvetblue] Прошивка V4 микроконтроллера ATmega168 программатора Postal3 - https://remont-aud.net/_fr/362/PostalAVR168.rar[/cvetblue]
Так у тебя в логе раньше ревизия 4.51, а здесь 5.0 - на 5.0 конечно не работает, на 5.0 обычный health info рабо
Эту микросхему я сначала прошил FW от другой KMV2W000LM-B506, а потом уже FW для KMV3W000LM-B310. Подпаивался на тест поинт, оказалось, что для Программатора Postal3 тест поинт не нужен, что с ним , что без тест поинта стирание и запись проходит одинаково. Тест поинт нужен видимо для других дорогих программаторов, в частности видел ролик как восстанавливал человек микросхему KMV3W000LM-B310 через тест поинт на программаторе Медуза, поэтому еще раз решил проверить разницу восстановления с тест поинтом и без, на программаторе Postal3. Вывод - тест поинт здесь не нужен, программа делает все без тест поинта.
Всё в норме, но eMMC Life Time Estimation на ревизии 5.0 не всегда работает, там как-то по-другому надо (vendor data парсить), не буду это раскапывать. У меня на более новой KLM8G1WEPD-B031 ревизия 5.0 и Life Time Estimation показывает.
Цитата
еще раз решил проверить разницу восстановления с тест поинтом и без,
А вот за это спасибо, я как раз и заказал eMMC на шариках, чтобы именно это проверить. Глаза видят, но мозг отказывается понимать. Это как идти по улице и видеть, как все идут на руках, а ногами держат смартфон. В 2017 Oranav в коде и даже в картинках показал, что testpoint не нужен. Казалось бы, уже всё понятно? Но нет.
Это напоминает ситуацию, которую я уже упоминал, с ноутбучными контроллерами. Человек имел захват с smbus и мог сделать по I2C с самого начала, но решил сделать через задницу. И все этот способ "через задницу" так и повторили. И уже школьники стали публиковать решение через I2C, но способ "через задницу" теперь останется в истории в качестве примера, когда коммерция победила здравый смысл.
Также тут недалеко имеется тема с программатором для NAND на базе FX2LP. Так можно было начинать делать 15 лет назад, сейчас так делать нельзя. Нужно приделать к FX2LP EPM240 или EPM570 и делать через неё, если кто-то захочет. Для совместимости желательно использовать мою прошивку FX2LP, её исходный код будет выложен сразу после того, как кто-нибудь мне покажет ошибку в старом исходном коде, из-за которой не работала запись spi-flash (исправляется строчкой в 20 символов, "a = b").
Цитата
Pre EOL info = 00; - Not defined
Для старых eMMC в EXT_CSD есть область vendor data (32 байта на адресах 270..301), я где-то видел данные про неё, если кто-то найдёт описание - вставлю эти данные в health info. (при прошивке стираются естественно.)
"Шляпа" или "бутерброд" на EPM240. Размер 40х55 это размер FX2LP. ISP 3V3 и 1V8. Кнопку снимаем с FX2LP и туда разъём на 5V. В принципе всё. Да надпись есть.
KREMLIN, сейчас посмотрю, так всё красиво, но одну дорожку надо будет перетянуть для удовольствия Quartus (fx2clk), все антизвонные резисторы тонко соединить, уточню.
Вот пин 61, на который приходит CTL0 (FX2CLK), надо взаимно поменять с пином 62, который является специальным тактовым входом. На девбоарде просто пин 62 не выведен на штырьки, поэтому был использован 61, на что Quartus постоянно ругался. Сейчас ещё посмотрю.
Пин 77 для светодиода использован из-за девбоарда, его отменить, светодиод перенести на пин то ли 1, то ли 3, надо уточнить, где vccio 3.3 - туда. Напряжение 1.8 для светодиода плохо, но на девбоарде туда подключено, для теста нужен был. Светодиод мигает хорошо, очень удобен, ему нужно 3.3в. Смотрю дальше.
Пин 34 используется для переключения "низкой" скорости 500 кГц<->250 кГц. в принципе необязателен, можно отделить от соседнего и сделать площадку для блямбочки на землю. А вот пин 28 - обязателен джампер на землю с него. Надо отвести в сторонку и сделать штырьки. Если кварц (генератор) 50 МГц, то при разомкнутом ISP 25 МГц, а при замкнутом на землю 12.5 МГц. Это важный переключатель. Предельный кварц предполагается 80 МГц, буду пытаться отладить прошивку для 100 МГц (ISP 50), но при подключении проводками частота ISP выше 30-35 МГц не имеет смысла, а выигрыш перед надёжными 25 незначительный.
Также нужно обеспечить, чтобы пины ISP CLK (для 3.3 и 1.8) блямбочкой можно было объединить с соседним пустым, он будет задействован для этого.
Вообще сама плата выглядит лучше, чем я представлял, я почему-то короткую представлял, а на длинную уже влезает JTAG и, что немаловажно, модная надпись. Также грамотное использование выключателя. Очень хорошо.
Цитата
Пин 77 для светодиода
Давай его на пин 4, с учётом имеющейся компоновки, и чтобы не рядом с 2.
Если смущает, что вот, под изменённые ножки прошивки нету, то проект-то есть, открываешь в Quartus pin-planner, меняешь как надо, нажимаешь скомпилировать, и я гарантирую, что хотя бы на 12.5 собранная прошивка будет работать, а на 25 99%.
Также сейчас проверил - по ножкам надо выходы ISP подвинуть, так как сейчас получается несовместимо с EPM570, а хотелось бы полную совместимость, чтобы можно было EPM570 вместо EPM240 запаять. У кого-то может оказаться EPM570 ненужная, зачем добру пропадать.
Для совместимости с EPM570 пины ISP 1.8 необходимо сдвинуть вправо, то есть 91,90,89->(86)85,84,83. Пины ISP 3.3 необходимо сдвинуть влево 37,38,39->(33)34,35,36. В скобках указан пин, который будет параллелиться с соседним CLK для увеличения тока (наверно, можно сразу запараллелить). Переключатель низкой скорости (пин 34) будет вынесен в левый край, либо вообще отключен. Нужен только переключатель высокой скорости, понижающий частоту в 2 раза (пин 28). Например, если я неудачно подключился, но на половинной скорости работает нормально, то лично я лучше подожду, чем буду выяснять, где там и что.
Я думал, там старую немножко поправить. Главное, когда заказывать будешь, чтобы 10 штук на меня пошло отдельным заказом. Предполагаю, что полностью автономно заказ такой платы можно делать на 20 штук, но 20 мне много. Вообще на fx2lp можно ещё простых "шляп" понаделать, да и на FT232H тоже. Мой расчёт на EPM240 был точным, но я не ожидал, что для получения нужных характеристик от неё, понадобится ещё и возиться. Запитка от 5 вольт получается проще, чем отвязка ферритовыми бусинами от 3.3. Учитывая, что я надевал ферритовые трубки на питание, и это не сработало при малой индуктивности.
Пока идёт процесс добавления в программу работы с RPMB, учитывая заглушки функционала f64, которые в дальнейшем будут развёрнуты.
Если кто-то уже сейчас ремонтирует устройство с подгнившей eMMC, то рекомендую начинать использовать переключение в SLC без замены чипа (кроме случаев, когда вы уже выпаяли чип и этим совсем испортили его). Также для старых eMMC с непонятной историей, если планируется куда-то вставлять, то так же переключить в SLC максимальный размер, разрешённый чипом (enhanced).
Если кто-то уже сейчас ремонтирует устройство с подгнившей eMMC, то рекомендую начинать использовать переключение в SLC без замены чипа (кроме случаев, когда вы уже выпаяли чип и этим совсем испортили его). Также для старых eMMC с непонятной историей, если планируется куда-то вставлять, то так же переключить в SLC максимальный размер, разрешённый чипом (enhanced).
eMMC допускает переключение части флэш-массива в enhanced mode, что на самом деле slc. В этом режиме уже заранее находятся разделы boot1,2 и rpmb, поэтому они всегда в хорошем состоянии. Нас интересует раздел user. В ext_csd имеются параметры max enhanced size (который можно максимально поставить) и текущий (обычно ноль). Сначала нужно забэкапить user (можно картридером). Затем производим волшебные манипуляции, включающие SLC в разделе user с адреса 0. Операция аналогична разбивке разделов, абсолютно штатная для любой eMMC, но однократная (сделать можно один раз), поэтому надо быть внимательным (кроме Samsung). Размер eMMC уменьшится в 2 раза и, возможно, больше. Туда, конечно, не влезет считанный дамп целиком. Мало того, система может быть заточена под полный размер. Но это всё можно настроить, особенно учитывая, что RPMB,CID,BOOT сохранится. Для работы системы получившегося slc-размера хватит 100%. А если кто-то до сих пор так не делал - то причина та же, что и использование testpoint "отключите, раз, два, три.."
Нового, в использовании SLC режима, нет. Производитель, иногда использует такой подход, там где система не занимает много места - например аппараты SONY собранные на Линуксе. Но вот если мы возьмём микросхему KLM8G1GETF которая используется повсеместно и сократим её размер, на 50 -60 процентов, то 3-4 гигабайт, оставшихся после такого ужатия, в лучшем случае хватит только на систему - без запаса user area. А то и на это не хватит. Или SONY - использующие еммс 16 Gb. Система, с предустановленными приложениями, занимает 6-7 Gb.
Учитывая значительное снижение размера. Учитывая, что при таком изменении придётся переделывать, как минимум PART TABLE, а боюсь, что иногда и не только - использование такого режима, на мой взгляд, не целесообразно. Проще и правильнее, заменить еммс, если она уже изношена. Ну а новая еммс, отработает 5-7 лет. Учитывая стремительное устаревание и общую не надёжность всех этих устройств, то...
Но если есть устройства, чью жизнь хочется продлить, хотя бы в плане работы еммс, то да... Можно взять новую память, размером в два раза больше, перевести её в режим SLC и записать в неё ПО.