Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форумы PDA2U.RU _ Реанимация KПK и коммуникаторов _ Samsung S3650 помогите с экспериментом по jtag

Автор: lindros 20.1.2010, 14:21

здравствуйте все
на столе лежит s3650 с убитым в смерть софтом
телефон не входит в download mode не видится никак компом
решил поэкспериментировать с jtag
процессор Broadcom bcm21331
подключился
внутри ARM926EJ-S 0x07926f0f
путем экспериментов вычислил, что карта памяти такая:
ram 0x00000000 32kb
ram 0x80000000
boot лежит с адреса 0x80f00000
флэш Samsung k522h1hacc
читается все ок
а вот записать, естественно в него не могу, так как нет никакой документации на этот новый проц :cry:
нужно знать его регистры, что бы инициализировать процесс записи в флэш

Я думаю тема актуальная
у многих скоро будут такие кирпичи после неудачных прошивок мастеров, любителей ставить галки boot...
очень хочется пообщаться с грамотными, знающими вопрос людьми
схемы подключения и программы могу предоставить

Автор: SAXON13 20.1.2010, 15:39

а какой программой ты пользуешся?
В принципе на твой проц, подойдет этот метод: http://forum.pda2u.ru/topic348.html
в нем ничего не записывается, ну я думаю разберешся, адреса и файлы загрузчика естественно под твой аппарат, адреса можно узнать дезасемблировав файлы загрузчика...

Автор: lindros 21.1.2010, 15:11

Цитата(SAXON13 @ 20.1.2010, 15:39) *
а какой программой ты пользуешся?
В принципе на твой проц, подойдет этот метод: http://forum.pda2u.ru/topic348.html
в нем ничего не записывается, ну я думаю разберешся, адреса и файлы загрузчика естественно под твой аппарат, адреса можно узнать дезасемблировав файлы загрузчика...

СПАСИБО за ответ
пользуюсь Н-JTAG + NOICE
но самое интересное, что в RAM я тоже ничего записать не могу sad.gif
я думаю есть какая то защита
информации на этот проц ноль
вот нарисовал схему подключения

 

Автор: SAXON13 21.1.2010, 20:20

Вряд ли защита стоит, хотя возможно
но скорее всего что или файл или адрес неправильный...
А откуда известно что в РАМ ничего не заливается, ты смотриш что там по этим адресам сразу после заливки?

Автор: lindros 22.1.2010, 0:16

Цитата(SAXON13 @ 21.1.2010, 20:20) *
Вряд ли защита стоит, хотя возможно
но скорее всего что или файл или адрес неправильный...
А откуда известно что в РАМ ничего не заливается, ты смотриш что там по этим адресам сразу после заливки?

конечно смотрю
я всю память просканировал от 0x0 до 0xffffffff на запись-считывание
адреса RAM ROM вычислил на рабочем аппарате
подключил к нему JTAG и вынял всю память с 0x80000000-0x8fffffff
c 0x80f00000 лежит бутлоадер точь в точь такой, как в оригинальной прошивке от самсунга
вот с RAM сложнее
с 0x0-0x7fff это 32 килобайта потом глухо
и область RAM c 0x2000000-0x3ffffff это 32 мегабайта
я, к сожалению, на рабочем не пробовал ничего записывать sad.gif
а на этом трупе в области 0x80000000-0x8fffffff и 0x2000000-0x3ffffff ничего нельзя ни записать не прочитать, NOICE теряет связь с процем и вываливается ошибка!

Автор: SAXON13 22.1.2010, 16:11

так и будет NOICE в РОМ ничего писать не будет, надо лить в РАМ
изучай загрузчики через дисассемблер, смотри куда они грузятьься в РАМ и лей туда, возможно надо будет после заливки для старта зажать кл. входа в бут
В РАм можеш спокойно и на рабочем пробовать лить, ведь ничего не прошивается, как только ты отключаеш питание всё сбрасывается...

Автор: lindros 23.1.2010, 0:40

Цитата(SAXON13 @ 22.1.2010, 16:11) *
так и будет NOICE в РОМ ничего писать не будет, надо лить в РАМ
изучай загрузчики через дисассемблер, смотри куда они грузятьься в РАМ и лей туда, возможно надо будет после заливки для старта зажать кл. входа в бут
В РАм можеш спокойно и на рабочем пробовать лить, ведь ничего не прошивается, как только ты отключаеш питание всё сбрасывается...

завтра принесут рабочий аппарат, попробую в него лить
а пока ясно только одно, что доступа в ram проц не дает в убитом виде
нужна какая то инициализация хитрая
пока нет документации хоть какой это трудно вычислить

Автор: SAXON13 23.1.2010, 0:50

Так надо адреса знать куда лить, а не заливать куда нибудь...

Автор: lindros 24.1.2010, 11:56

Цитата(SAXON13 @ 23.1.2010, 0:50) *
Так надо адреса знать куда лить, а не заливать куда нибудь...

после ночи с живым телефоном получилось инициализировать RAM!
без этой операции процесор ничего не давал записать в нее
теперь могу записать туда загрузчик, но пока не знаю точку входа в него.
кто силен в асемблере для ARM?
помогите
вот файл загрузчика который телефон кладет с 0x80f00000

 boot80f00000_100000.rar ( 99.7 килобайт ) : 10

Автор: arcc 24.1.2010, 21:02

Цитата(lindros @ 24.1.2010, 18:56) *
после ночи с живым телефоном получилось инициализировать RAM!
без этой операции процесор ничего не давал записать в нее
теперь могу записать туда загрузчик, но пока не знаю точку входа в него.
кто силен в асемблере для ARM?
помогите
вот файл загрузчика который телефон кладет с 0x80f00000

 boot80f00000_100000.rar ( 99.7 килобайт ) : 10


Если система WM то с вероятностью 90% у девайса должен быть режим загрузчика .
В этом режиме прямая адресация с 000 ,есть еще режим виртуальной памяти но это когда загружается WM т.е поидеи должно быть 3 загрузчика .
Обычно самый первый который с 0000 инициализирует память и настраивает ее в зависимости от дальнейших действий .
Т.е твои действия такие -загнать рабочий девайс в ражим загрузчика (режим прошивки ) и посмотреть где что лежит с 000 и далее .Режим загрузки (запуска WM )тебе ненужен .

Автор: Serg55 24.1.2010, 23:56

Цитата
Если система WM то с вероятностью 90% у девайса должен быть режим загрузчика .

В нем нет WM, s3650 обычный телефон, собран на Broadcom bcm21331.

Автор: lindros 25.1.2010, 16:15

Цитата(arcc @ 24.1.2010, 21:02) *
Если система WM то с вероятностью 90% у девайса должен быть режим загрузчика .
В этом режиме прямая адресация с 000 ,есть еще режим виртуальной памяти но это когда загружается WM т.е поидеи должно быть 3 загрузчика .
Обычно самый первый который с 0000 инициализирует память и настраивает ее в зависимости от дальнейших действий .
Т.е твои действия такие -загнать рабочий девайс в ражим загрузчика (режим прошивки ) и посмотреть где что лежит с 000 и далее .Режим загрузки (запуска WM )тебе ненужен .

arcc , спасибо за участие.
это телефон без винды
но в нем есть режим загрузчика
входить в него нужно зажимая 3 кнопки (громкость+камера+вкл)
я пришел к выводу, что задумано изначально с этим телефоном у самсунга так :
1 инициализируют память sdram
2 загружают в ram 32кб nand preloader и запускают (bcmboot.img )  bcmboot.rar ( 29.24 килобайт ) : 18

3 туда же льют nand loader запускают
4 в sdram льют большой основной бут и запускают (boot2.img)  boot2.rar ( 99.16 килобайт ) : 11

5 если зажать кнопки входим в бут режим если нет идем дальше на загркзку из флэши системы

из вышесказанного получается тоже 3 бута
но их все нужно стартовать правильно
для этого нужно хорошо знать ARM асемблер и IDA
я всю жизнь мечтал выучить, но так безграмотным, наверно, и помру.
выкладываю загрузчики тут
может кто натолкнет на нужные адреса
спасибо

Автор: arcc 25.1.2010, 22:22

Цитата(lindros @ 25.1.2010, 23:15) *
но в нем есть режим загрузчика
входить в него нужно зажимая 3 кнопки (громкость+камера+вкл)

Ну так я тебе и говорю -на рабочем девайсе загони его в режим загрузчика и посмотри где что лежит .Впринципе тебе этот режим и нужен на нерабочем девайсе ,далее как запустишь на нерабочем девайсе этот режим ты сможеш перешить девайс обычным методом .

На рабочем искать проще чем разбиратся в ассемблере ,где не всегда точно можно сказать что и где лежит .Кстати я тоже не большой спец .Просто был опыт .Все остальное обычная аналогия .

Автор: segacool 25.1.2010, 22:37

Каким образом инициализировал РАМ?

Автор: lindros 26.1.2010, 2:21

Цитата(arcc @ 25.1.2010, 22:22) *
Ну так я тебе и говорю -на рабочем девайсе загони его в режим загрузчика и посмотри где что лежит .Впринципе тебе этот режим и нужен на нерабочем девайсе ,далее как запустишь на нерабочем девайсе этот режим ты сможеш перешить девайс обычным методом .

На рабочем искать проще чем разбиратся в ассемблере ,где не всегда точно можно сказать что и где лежит .Кстати я тоже не большой спец .Просто был опыт .Все остальное обычная аналогия .

arcc, так я все это и сливал с рабочего, труп ведь даже в SDRAM не пускал.
тут есть тонкость в том , что на рабочем все эти файлы грузятся и выполняются по порядку как надо автоматом как задумал самсунг(но мы этих адресов и порядка не знаем)и в итоге открыт SDRAM и RОМ.
А труп, если даже я и открываю SDRAM и лью все по своим местам, как в живом в download режиме, не хочет стартовать , потому что Я НЕ ЗНАЮ откуда стартует первый лоадер и второй, поэтому и ROM остается не инициализирован и труп остается трупом.

Цитата(segacool @ 25.1.2010, 22:37) *
Каким образом инициализировал РАМ?

инициализировал SDRAM первым загрузчиком из маленького 32кб RAM

Автор: segacool 30.1.2010, 12:38

Аппарат восстановлен lindros, технология восстановления секретна

Автор: SAXON13 31.1.2010, 0:44

Цитата(lindros @ 25.1.2010, 16:15) *
arcc , спасибо за участие.
это телефон без винды
но в нем есть режим загрузчика
входить в него нужно зажимая 3 кнопки (громкость+камера+вкл)
я пришел к выводу, что задумано изначально с этим телефоном у самсунга так :
1 инициализируют память sdram
2 загружают в ram 32кб nand preloader и запускают (bcmboot.img )  bcmboot.rar ( 29.24 килобайт ) : 18

3 туда же льют nand loader запускают
4 в sdram льют большой основной бут и запускают (boot2.img)  boot2.rar ( 99.16 килобайт ) : 11

5 если зажать кнопки входим в бут режим если нет идем дальше на загркзку из флэши системы

из вышесказанного получается тоже 3 бута
но их все нужно стартовать правильно
для этого нужно хорошо знать ARM асемблер и IDA
я всю жизнь мечтал выучить, но так безграмотным, наверно, и помру.
выкладываю загрузчики тут
может кто натолкнет на нужные адреса
спасибо


Проверь эти адреса:
0x2800007C
0x280008E0
0x2800000

Автор: segacool 31.1.2010, 14:52

Цитата(SAXON13 @ 31.1.2010, 1:44) *
Проверь эти адреса:
0x2800007C
0x280008E0
0x2800000

Ему это уже не надо, а я не могу память инициализировать

Автор: lindros 10.2.2010, 1:03

Цитата(SAXON13 @ 31.1.2010, 0:44) *
Проверь эти адреса:
0x2800007C
0x280008E0
0x2800000

Если кому интересно, как я добился этого :
нашел память ram по адресу 0x8400000
загрузил туда первый прелоадер и запустил
потом открылась dram и положил туда по адресам 0x80000000
0x80f00000 0x83200000 boot2.img
стартанул с 80000000 с зажатыми кнопками для входа в бут режим
вот и все
получаем аппарат для програмирования по усб стандартным флэшером
кто понимает тот поймет вышесказанное

Русская версия Invision Power Board (http://nulled.cc)
© Invision Power Services (http://nulled.cc)