![]() |
|
|
![]() ![]() |
![]() |
![]()
Сообщение
#1
|
|
![]() Проверенный пользователь ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 937 Регистрация: 4.4.2008 Из: Украина Пользователь №: 1011 Спасибо сказали: 142 раз(а) Девайс:HTC;HP;Samsung... ![]() |
Обсуждения здесь запрещены, тема открыта временно лишь для выяснения неточностей и (или) ошибок!
Алгоритм работает на всех коммуникаторах с процессорами PXA27X и другими сериями PXA от Marvell/Intel,а также большинстве процессоров на ядре ARM В данном случае будет рассмотрен этот метод на примере ASUS p525 Методика восстановления основана на загрузке через JTAG исполняемого кода бутлоадера в RAM и передаче ему управления. В результате вы получаете временно работающий бутлоадер, и из него производите полную прошивку аппарата (бутлоадер + система). Итак, это предварительная версия инструкции, в дальнейшем она будет оформляться и дополнятся. I. Аппаратная подготовка: 1. кабель Wiggler ![]() между 8 и 15 пином на входе к ЛПТ перемычка, иначе OCD не будет работать с кабелем 2. Расположение контактов JTAG на плате ASUS p525 (спасибо Mishael) ![]() II. Программная подготовка 1. OCDemon 2. H-JTAG он нам понадобиться для конвертации *.bin файлов в *.Hex с которыми работет OCD, а также для проверки то кабель собра правильно процессор определяется. При конвертации надо задать стартовый адрес, ставим адрес загрузки файла ( в нашем случае 0хa0004000), если не знаем точный адрес, ставим адрес начала SDRAM - 0хa0000000 3. ![]() для рассщипления файлов ( в прошивке некоторых девайсов, например конкретно у Asus p525 каждые 0x200 байтов IPL и BOOT повторяются) Для восстановления бута в ASUS p525 вам эти последние пункты не понадобятся, я выкладываю готовый BOOT для загрузки в РАМ ![]() и плюс файл бута который надо записать на mSD и вставить перед запуском бута в девайс ![]() После того как собрали или купили кабель Wiggler (не забудьте про перемычку между 8 и 15 пином на входе к ЛПТ ) подпаиваем его к девайсу соответственно указаной выше распиновке и подаем питание на кабель (от 3.5 до 4.5 v), я запитывал от аккамулятора девайса подпаявшись к контактам на плате. несколько рекомендаций насчет пайки: используем тонкие многожильные провода типа МГФТ, подпаивать их желательно горизонтально, ложа на плоскость, сверху заклеить бумажным скотчем(малярной лентой), паяльник использовать маломощный (до 35 ВТ) с тонким жалом (0.1-0.3) Вставляем аккамулятор в девайс (и возможно, надо будет нажть кн. POWER), подсоеденяем ЮСБ-кабель. Далее запускаем OCD, (можно перед этим для контроля запустить H-JTAG чтоб убедиться, что всё собрано правильно и процессор определяется) в появившемся окне настройки выбираем OCD Interface Device >>Wiggler, target Processor >>INTEL и PXA27X нажимаем OK Запуститься интерфейс OCD командера, перед его запуском зажимаем и держим стилусом "reset", но я так не делал (возможно что или в распиновке на JTAG ошибка с nTRST или же OCD работает с nSRST и надо подпаять этот сигнал к кн. "reset"), я же после запуска OCD одновременно нажимал стилусом "reset" и "reset" в OCD после этого внизу в Hint Bare появиться статус процессора In_Debbug В меню "defaults" ставим галочку на "auto status check" Набираем команду pc и видим где сечйас находиться процессор, как правило это pc: 00000000 далее набираем команду pc a0004000 следующяя download и в появившемся окне указываем на наш файл EBOOT.hex.1 за несколько секунд файл загрузиться в РАМ теперь для проверки еще раз набираем pc должно показать pc: a00004000 набираем Go a0004000 и жмем Enter,через пару секунд зажимаем на девайсе одновременно кл."Cam"+"Rec"+"Power", появиться окно загрузчика и если вы уже зараннее вставили ЮСБ-кабель и mSD, то автоматиески пойдёт прошивка бутлоадеров, всё теперь можно прошить полной официальной прошивкой Более подробно каждый шаг для восстановления других девайсов я опишу позже, естественно для каждого девайса нужен свой файл бутлоадера и своя адресация в РАМ (но подозреваю что для Intelа адресация находиться гдето в этих же рамках 0xa0****** ) Адресацию бутлоадера и других файлов, можно вычислить дезассемблировав код с помощью дезассемблера, например IDA По поводу нахождения распиновки JTAG, во первых поискать в интернете, сравнить с другими схожими моделями, вполне возможно что распиновка будет идентична. Если же это не дало результатов, то наиболее достоверный способ, это выпаять процессор и по его распиновке вызвонить куда выходят нужные точки, возможно еще с помощью осцилографа, но это довольно сложно и не дает достоверных результатов... COPYRIGHT SAXON13 based on idea of Matvey from The Unofficial Mio A701 Forums Сообщение отредактировал SAXON13 - 8.7.2009, 19:15
Причина редактирования: дополнения
Спасибо сказали: actory, adimen, AGC, Akmis, alcogolik, alextu, alex_beda, Andre20, Andru_X, borey, BoZhe, chubchikodessa, dmitriy_ee, Dynamite, flash, GSMedecin, keeperst, kolotunbabay, konovalovizrb, lernik, licov_a, Mazanov777, Mishael, Nortel, oleg_kaa, ozon, qwerty54322, riddle, romaha, Rtehnik, Serge94, Sergey30, smeshnoyroma, Syricen, vlad25, vladbravo, volodin, БОРИСЫЧ, Змей@, |
![]() |
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 10.4.2025, 6:42 |