|
|
  |
JTAG Wiggler |
|
|
|
Jul 20 2013, 14:50
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 3-07-13
Пользователь №: 77 374

|
Цитата(energizer @ Jul 21 2013, 00:19)  а может Вы не поставили драйвер giveio ?? в аттач прилепил ;-)
это значит что пока не получается и проблему нужно искать действительно, после установки драйвера программа заработала... однако она не показала ни ай ди проца, ни смогла достоверно распознать jtag пины (((
|
|
|
|
|
Jul 20 2013, 14:54
|
Участник

Группа: Участник
Сообщений: 33
Регистрация: 11-07-13
Пользователь №: 77 483

|
Цитата ни смогла достоверно распознать jtag пины ((( она хоть что нибудь показала?? и кстати у вас стоит перемычка - моя програмка пока не имеет защиты от замыканий входных и выходных линий - в смысле она может на это не правильно реагировать .. а в целом я сильно сомневаюсь в работоспособности текущего варианта схемы..
Сообщение отредактировал energizer - Jul 20 2013, 14:56
|
|
|
|
|
Jul 20 2013, 15:20
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 3-07-13
Пользователь №: 77 374

|
Цитата(energizer @ Jul 21 2013, 00:54)  она хоть что нибудь показала?? Да, что то там вывела об успешном окончании работы... ошибку выдала только на этапе определение ID Code... ну и пины расставила неправильно ((( Перемычку SRST убрал, как и советовалось. Цитата(energizer @ Jul 21 2013, 00:54)  в целом я сильно сомневаюсь в работоспособности текущего варианта схемы.. Но ведь H-JTAG распознал устройство??? Пусть без адреса в том виде что вы предположили, но что то распознал Сбросил ТАР настройки на дефолт, после чего процессор стал определяться так:
Сообщение отредактировал drova326 - Jul 20 2013, 15:40
|
|
|
|
|
Jul 20 2013, 19:36
|
Участник

Группа: Участник
Сообщений: 33
Регистрация: 11-07-13
Пользователь №: 77 483

|
ну вот и отлично- вы увидили настоящий id своего проца - значит вигглер работает- теперь дело за Вами - пробуйте метод восстановления который считаете наиболее удачным ( я так понимаю вы к этому готовились и сделали разведку) и просьбу напомню о дампе (а лучше о скриншоте NOICE в 32 битном представлении)
|
|
|
|
|
Jul 21 2013, 04:38
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 3-07-13
Пользователь №: 77 374

|
Цитата(energizer @ Jul 21 2013, 05:36)  и просьбу напомню о дампе (а лучше о скриншоте NOICE в 32 битном представлении) Я кажется уже что то намудрил ((( вот что пишет нойс при подключении: ----------------------------------------------------------- Loaded RDI DLL E:\Program Files\H-JTAG\H-JTAG.dll H-JTAG Debug Interface for ARM In-Circuit Emulation. Version 1.50 Module 1) ARM ARM926EJ-S WinRDI Controller Capabilities 0x9A7348: APC WinRDI Target Capabilities: 0xC7:0xFF CallEx RT TX Synch Target Info 0x219010: Thumb DCC NonStop Watchpoint Info 0x0: SingleStep: 0x0 Selected Target: Generic big-endian ARM using hardware breakpoints Has 2 hardware breakpoints Specified CPU frequency 400.000000 MHz Target type ARM. Target buffer 128 bytes Breakpoint instruction: BE 00 ----------------------------------------------------------- а вот то что вы просили как то странно выглядит:
при этом в окне Data все как то рандомно от подключения:
Аааа, что то совсем моск закипает, вчера до 7 утра проседел в надежде хоть что то понять... Прошивку для телефона скачал многофайловую и из нее выдернул:
APBOOT_S5830XXKPE_CL185571_REV03_user_mid_true.tar.zip ( 609.13 килобайт )
Кол-во скачиваний: 60В этом файле как я понял загрузчик, который мне нужно запихать в РАМ телефона... во всяком случае именно этот файл я указывал в программе флешере (ODIN) когда раньше менял прошивки напротив BOOT. Если заглянуть в этот файл, то он представляет собой TAR архив, в котором еще несколько файлов.... я так понял мне нужно из этих файлов, а именно arm11boot как то залить в РАМ? или весь APBOOT-файл нуно поместить в рам телефона? Или это уже не здесь обсуждается?
Сообщение отредактировал drova326 - Jul 21 2013, 04:42
|
|
|
|
|
Jul 21 2013, 08:40
|
Участник

Группа: Участник
Сообщений: 33
Регистрация: 11-07-13
Пользователь №: 77 483

|
на беглый взгляд есть неточности в настройке- наверное всетаки он маленький энд во вторых есть програмный глюк самого отладчика - если нижнее(которое отображает фрагмент памяти) окно шире 10 строк оно отрубается и заполняется вопросами.. на счет загрузчиков для конкретно вашего тела я их даже в глаза не видел - на самом деля я думал что Вы знаете что делать собираетесь- потому как в прошлых постах Вы уверенно сказали что программная часть не проблема -вот я и подумал что Вы сделали домашнуюю работу ;-) чек лс ;-)
|
|
|
|
|
Jul 21 2013, 22:07
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 3-07-13
Пользователь №: 77 374

|
Цитата(energizer @ Jul 21 2013, 18:40)  на самом деля я думал что Вы знаете что делать собираетесь- потому как в прошлых постах Вы уверенно сказали что программная часть не проблема Ну, то что я на ваших глазах делал виглер как бы подразумевает, что я не работал со средствами загрузки устройств через него))) Я сказал не проблема, потому что в компах я понимаю чуть больше чем в сборе схем))
|
|
|
|
|
Jul 22 2013, 05:20
|
Местный
  
Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987

|
Я вижу, за выходные у вас большиое продвижение произошло. Вроде подключились H-JTAG'ом к процессору, а отладчиком NOICE - к H-JTAG'у.... Но, если честно, у меня осталась некоторая неуверенность, что кабель в полном порядке,- видимо, навеянная тем описанием, где что-то оживает в зависимости от уровней на других линиях (поскольку в кабеле, подключенном только к LPT, как я вам рекомендовал для начала отладки, такого просто не должно быть).
Вам на месте, конечно, виднее, но все же.. Вы точно уверены, что с аппаратной частью у вас все ОК? Правильный ID может вычитываться, например, с работающим TDO и неработающим TDI (недавно в другой теме был как раз такой случай).
Я не великий знаток ARM'ов, поэтому не могу сразу предложить конкретную инструкцию, как проверить работоспособность всей этой отладочной системы. Но идея может быть такая - если есть доступная внутричиповая ОЗУ, из которой процессор может выбирать команды на исполнение (т.е., память, которая может играть роль памяти инструкций, а не только памяти данных), то можно было бы загнать туда простенькую программку на 5-10 команд, и попробовать ее пошагово исполнить. Кстати, а чтение-запись регистров у вас работает?
И еще. Если будете делать еще один выпуск печатной платы Вигглера, неплохо бы внести доработку, обеспечивающую работу с V_target меньше нынешних 2.6В (с распространенными уже сейчас 1.8 В). Если интересно, могу поделиться мыслями (для этого надо организовать для TDO другое подтягивающее напряжение, что-то вроде упоминавшегося на ранней схеме PC_VCC, но немного хитрее).
|
|
|
|
|
Jul 22 2013, 06:41
|
Участник

Группа: Участник
Сообщений: 33
Регистрация: 11-07-13
Пользователь №: 77 483

|
Цитата Я сказал не проблема, потому что в компах я понимаю чуть больше чем в сборе схем теперь я понял... у нас... а точнее у Вас боольшие проблемы :-( в данной теме соображать в компах совсем не обязательно- нужно соображать в программировании arm да еще и в части контроллеров нанд.. суть проблем в таком случае мне даже сложно будет Вам обьяснить.. но все кто пытался восстановить бутлоадеры на платформе квалкома s1 и выше с ними сталкнулись (имеется в виду не профф коробки а всякие вигглеры и j-линки) .. я например пока вообще не представляю как работать с этим nand чипом точнее сказать кое что представляю но этого мало ..если увас смарт гнусмас то там скорее всего OneNand установлен что еще веселее - никогда с ними не встречался и даже отдаленно не представляю как его можно конфигурить и как с ним работать.. Цитата Вам на месте, конечно, виднее, но все же.. Вы точно уверены, что с аппаратной частью у вас все ОК? вот в этом я на99 уверен - потому что колонка состояния регистров ядра правильная -а данные от туда можно получить только используя TDI - без этого сигнала можно получать на выходе tdo только id таргета и нечего более - причина банальна -после сброса по trst или 5 клоков tms большенство контроллеров устанавливает в качестве выбранного регистра именно регистр id и при подаче клоков clk выдавливает данные именно из него и при этом не важно что на tdi Цитата обеспечивающую работу с V_target меньше нынешних 2.6В (с распространенными уже сейчас 1.8 В). Если интересно, могу поделиться мыслями (для этого надо организовать для TDO другое подтягивающее напряжение, что-то вроде упоминавшегося на ранней схеме PC_VCC, но немного хитрее). я бы с удовольствием посмотрел на Ваш вариант доработки- у людей полно вигглеров постоенных на 244
|
|
|
|
|
Jul 22 2013, 08:34
|
Местный
  
Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987

|
Регистры видятся, говорите... А не происходит ли при их считывании чего-нить подозрительного, и не являются ли эти значения какими-нибудь значениями по умолчанию, которые дебаггер подсовывает, когда толком не может пообщаться с тагетом,а (при этом толком ни на что не ругаясь)? Я всякое уже видел. А вот то, что в NoICE сейчас происходит, не вижу. Потому и вопросы... Может, я дую на воду, обжегшись на молоке... но пока drova326 сомнения не рассеял....
Кстати, еще одна вещь, которая мне не нравится. На сайте NoICE говорится, что из ARM'ов он знаком только с семейством ARM7TDMI, а здесь у нас налицо представитель более позднего ARM9. Все ли NoICE корректно отрабатывает, готов ли он с 9-ми ARM'ами дело иметь? Может, надо взять более подходящий отладчик?
|
|
|
|
|
Jul 22 2013, 08:53
|
Участник

Группа: Участник
Сообщений: 33
Регистрация: 11-07-13
Пользователь №: 77 483

|
Цитата Регистры видятся, говорите... А не происходит ли при их считывании чего-нить подозрительного, и не являются ли эти значения какими-нибудь значениями по умолчанию, если бы я сам заглянул я бы наверное сразу признал что там настоящее а что не очень похоже на правду :-)) - есть область которая внешним видом выдает свою структуру - она с адреса 0хA0A00000 должна быть..наверное ... дефолтных значений в панели регистров нет - если конект кривой там заполняется панел вопросами или иногда откровенной фигней я много времени провел в изучении квалкомовских камней на базе arm9 - и заглядывал в нутрь именно через noice - глюки в нем кроме отображения памяти ( не хочет показывать память на нижней панели если она выше 10 строк) не встречал- удобный и быстрый отладчик - и перочинный ножик есть для него ;-) .. тот камень который подключен у drova326 по сути наверное всетаки уже выше и arm9 - S1 - это arm11 //но та часть команд которая предусмотрена для него расширением вроде в данном процессе не используется.. хотя я совершенно не против если drova326 применит более современный и "подходящий" к ядру инструмент -однако придется наверное сменить не только отладчик но и сервер интерфейса - hjtag тоже не заявляет поддержку для виглера камней старше arm9 //
Сообщение отредактировал energizer - Jul 22 2013, 09:15
|
|
|
|
|
Jul 22 2013, 11:39
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 3-07-13
Пользователь №: 77 374

|
Может конечно виглер работает и не правильно, но смотрите: в интернетах есть статьи, подобные этой. Тут описан процесс как восстанавливали телефон. Пользуясь инструкциями в данной статье я пробовал через Noice в адрес 0х1000000 запихать arm11boot как бинарник... после несколько минут ожидания заливки в нойс с указанной области можно было наблюдать этот файл... отркрывал в хекс, все сходится... но Go From не привел к включению устройства (а я то наивный думал все будет просто). Скажите, это совпадение, или все же виглер все таки заливает что ему подсунешь? осталось выяснить что? если что могу достать еще один идентичный телефон, чтобы залить в него копию. Что скажете?
Сообщение отредактировал drova326 - Jul 22 2013, 13:32
|
|
|
|
|
Jul 22 2013, 12:14
|
Участник

Группа: Участник
Сообщений: 37
Регистрация: 10-12-08
Из: Ульяновск
Пользователь №: 42 362

|
Телефон как я понимаю сдох при неудачной прошивке. И вы мучаясь с виглером пытаетесь сэкономить на ремонте. Я вас немножко обрадую... Что бы восстановить бут на этом телефоне (не могу разглядеть модель, но оч похож на S5830) надо прошить NAND память. Это Вы сможете сделать только научившись писать программы под данный проц. Т.к. Вы не можете найти виртуальный адресс начала ОЗУ, то написать загрузчик для записи NAND вы точно не сможете. На старых аппаратах прокатывало вычитывание содержимого ОЗУ с рабочего тела и заливка в мертвый аппарат + нужно было находить адрес старта программы. На новых телефонах такое в большинстве случаев не прокатывает. Более того на самсунгах при неудачной прошивке не всегда достаточно восстановить загрузчик, бывает что надо восстанавливать поврежденную файловую систему. Вам только поможет один из платных продуктов или мастерская в которой есть один из них. http://gsmserver.ru/shop/gsm/riff_box_jtag.phphttp://gsmserver.ru/shop/gsm/omnia_repair_...ag_adapters.phphttp://gsmserver.ru/shop/gsm/z3x_easy_jtag.phphttp://gsmserver.ru/shop/gsm/gpg_jtag_box.phpЕсли у вас S5830 (но не S5830i или S5830G), то ради эксперимета слил ОЗУ начало 0x0000000 размер 0x01000000 ( взял с запасом) тел введен в режим прошивки при остановке проца указатель адреса стоит на 0x00543A68 ( вам можно попробовать стартануть с этого адресса, но не факт что прокатит) В архиве arm11boot - то что прошито в телефоне, 0x01000000.bin - дамп ОЗУ. Если сравнить дамп и бут, то можно увидеть что есть отличия, чем это обусловлено я не знаю. У этого телефона CPU ID: 0x503C10E1 http://yadi.sk/d/uQbBtgKa758V8
Сообщение отредактировал tillman - Jul 22 2013, 12:44
Прикрепленные файлы
S5830.rar ( 4.86 мегабайт )
Кол-во скачиваний: 15
|
|
|
|
|
Jul 22 2013, 12:35
|
Участник

Группа: Участник
Сообщений: 33
Регистрация: 11-07-13
Пользователь №: 77 483

|
Цитата(tillman @ Jul 22 2013, 16:14)  Вам только поможет один из платных продуктов или мастерская в которой есть один из них. да эти коробки точно помогут :-) но раньше такое говорили и о других камнях - те что помладше от квалкома, однако нашлись люди которые в этом смогли разобраться и бесплатно опубликовали тулзы и туториалы.. по этому если у человека есть интерес с этим разобраться нужно оказывать посильную помощь а вариант платного восстановления он и сам наверняка занет.. сам телефон скорее всего уже стоит меньше денег чем услуги тех кто их восстанавливает. да и покупка проф бокса для телефонов дело затратное и не нужное никому кроме профф ремонтников.
|
|
|
|
|
Jul 22 2013, 12:51
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 3-07-13
Пользователь №: 77 374

|
Цитата(tillman @ Jul 22 2013, 22:14)  Если у вас S5830 (но не S5830i или S5830G), то ради эксперимета слил ОЗУ начало 0x0000000 размер 0x01000000 ( взял с запасом) тел введен в режим прошивки при остановке проца указатель адреса стоит на 0x00543A68 ( вам можно попробовать стартануть с этого адресса, но не факт что прокатит) В архиве arm11boot - то что прошито в телефоне, 0x01000000.bin - дамп ОЗУ. Если сравнить дамп и бут, то можно увидеть что есть отличия, чем это обусловлено я не знаю. У этого телефона CPU ID: 0x503C10E1 http://yadi.sk/d/uQbBtgKa758V8Первые серьезные заявки на победу))) Тиллман, огромное спасибо за дамп) Телефон действительно S5830. И кстати убил я его как раз залив что то от S5830i
|
|
|
|
|
  |
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|