IPB

Здравствуйте, гость ( Вход | Регистрация )

Форум перемещен на новый домен: forum.pda2u.ru - исправьте, пожалуйста, свои ссылки
> "Ковыряем" XIP, Вопросы, проблемы и их решения
Angel_Hranitel
сообщение 16.12.2008, 1:13
Сообщение #1


Проверенный пользователь
****

Группа: Разработчики
Сообщений: 360
Регистрация: 12.1.2008
Из: раснодар
Пользователь №: 204
Спасибо сказали: 45 раз(а)

Девайс: НР rw6815


Предлогаю в этой теме обсуждать вопросы и проблемы связанные с XIP'ом...

Знаю что есть темка в шаманствах, но не все там могут писать, по этому думаю целесообразным создать эту тему.

И, пожалуйста, без флуда!
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
 
Начать новую тему
Ответов
AGC
сообщение 12.3.2009, 22:34
Сообщение #2


PDA2U.RU Team
****

Группа: Admin
Сообщений: 4884
Регистрация: 25.11.2007
Из: СПб
Пользователь №: 32
Спасибо сказали: 1657 раз(а)

Девайс:RW6815/P320/Diamond


Еще раз о портировании XIP

Написал небольшую дополнительную инструкцию. ОБЯЗАТЕЛЬНО дополнительно читаем Разбираем XIP и Портирование XIPа с HP RW6815 на Ровер G5/Орсио N725.

Итак, поехали:

1. Получаем донорский XIP тем или иным способом в виде xip.bin

Если найденный файл XIPа уже называется xip.bin, то все отлично. Если файл xip_out.bin, просто переименовываем его в xip.bin. Если нужный XIP зашит в прошивку для какого-либо устройства, берем кухню под это устройство и в соответствии с инструкциями от кухни извлекаем xip.bin. Если XIP уже в разобранном виде, то идем дальше по нашей инструкции к соответствующему шагу.

2. Разбираем донорский XIP и меняем аппаратно-зависимые части

2.1. Кидаем файл xip.bin в папку с нужными инструментами (рис. 1). Нам понадобятся:
- XIPPort (XIPPort.exe + pkgcommon.dll) - для выполнения всех операций с XIP
- M'Reloc (M'Reloc.exe) - для релока аппаратных модулей нашего устройства

2.2. Запускаем XIPPort, последовательно нажимаем кнопки "dump xip.bin", "write maps" и "make pkgs" (рис. 2). После этого в папке с инструментами и xip.bin появится подпапка разобранного XIPа: OUT. Делаем ее резервную копию целиком как есть (упрощаем себе жизнь, сохраняем вариант уже разобранный на пакеты и с оригинальной картой распределения памяти и т.д.)

2.3. После этого жмем в XIPPort кнопку "undo", чтобы вернуть структуру подкаталогов XIPа (FILES и MODULES) в линейный вид.

2.4. Абсолютно аналогичные п.п. 2.1-2.2 операции проделываем над XIPоп от своего устройства (далее будет называть его родным XIPоп) в другой папке. Получим свой родной разобранный по пакетам XIP.

2.5. Теперь проделываем сильно хитрые и сложные операции по удалению из донорского XIPа аппаратно-зависимых файлов(IMG:http://forum.pda2u.ru/style_emoticons/default/smile.gif) Запускаем двухпанельных файловый менеджер, открываем на одной панели основную подпапку OUT разобранного донорского XIPа, а на другой панели - его резервную копию. Переходим в подпапки FILES и там и там (рис. 3). Входим в резервной копии в подпапку OEMXIPKernel и удаляем из разобранного донорского XIPа те файлы, которые были отображены в подпапке OEMXIPKernel. Полностью аналогичную операцию проделываем с подпапкой MODULES, т.е. открываем донорский XIP и его резервную копию, в резервной копии входим в OEMXIPKernel и удаляем из разобранного донорского XIP те папки и файлы, которые увидели в резервной копии в папке OEMXIPKernel.

2.6. Дальше проделываем операции добавления аппаратно-зависимых частей из родного XIPа в донорский. Для этого на одной панели открываем донорский XIP в подпапке OUT, на другой - родной XIP разобранный на пакеты в той же папке OUT. Идем в родном и донорском в подпапку FILES, далее в родном идем в подпапку аппаратно-зависимых файлов (для HP RW6815 это подпапка 1f23b941-38f8-def5-83a6-b0a8eadaa267, в общем случае все тот же OEMXIPKernel). Совершенно аналогично действуем с MODULES, т.е. копируем аппаратно-зависимые модули в донорский XIP.

3. Меняем настройки и делаем релокацию модулей в донорском XIPе

3.1. Копируем настройки распределения памяти из родного XIPа из OUT\romhdr.txt из начала файла до строки ulRAMEnd в донорский XIP в такой же файл:

dllfirst: D=01F901FD
dlllast: 02000000
physfirst: P=9AC00000
physlast: 9AFB5500
nummods: (00000000)
ulRAMStart: R=80580000
ulRAMFree: 805E2000
ulRAMEnd: 84000000

3.2. Меняем пока physlast на 9AFFFFFF, чтобы избавиться от проблем при автоматическом релоке.

3.3. В XIPPort над донорским XIPом жмем кнопку "realloc P" и далее "write maps".

3.4. Открываем в донорском XIPе файл OUT\map.txt и смотрим его на наличие строк восклицательных знаков означающих наличие пересечений в первых двух секциях до строки "80580000 - 80580000 L00000000 Start: start of RAM". Если они есть, то запускаем M'Reloc.exe и двигаем модули с дополнительной ручной правкой imageinfo.txt. В отличие от использования M'Reloc_nk.exe, ничего ручками пересчитывать не нужно, просто вводим сразу целевые значения. Принципы сдвигов и что именно сдвигать подробно описаны по ссылкам в начале данного сообщения. Делаем нужное число раз "realloc P" и "write maps", опять открываем map.txt, пока не уберем все пересечения.

3.5. Пересечения убраны, все Ок. Смотрим в самый конец map.txt:

9aec0cd0 - 9aec4675 L000039a5 filedata sysroots.p7b
9aec4675 - 9affffff L0013b98a NUL
9affffff - 9affffff L00000000 End: highest physical address

3.6. Правим в ROMHDR.txt physlast на 9aec4675, чтобы убрать лишнее место. Только лучше для красоты чуть округлить значение, например, до 9aec4680. Опять делаем "realloc P" и "write maps" открываем map.txt. Смотрим последний раз на наличие восклицательных знаков и т.д.

3.7. Ищем в map.txt строку с "rom_00 header", видим примерно это:

9ad6da9c - 9ad6daf0 L00000054 rom_00 header: dlls=01f901fd-02000000 phys=9ac00000-9aec4680, 23 modules, 11 files, 2 copyentries ext=9ac02b5c ram=80580000-84000000 cputype=000001c2

3.8. Первое значение в данной строке - 9ad6da9c - начало XIPа, которое надо прописать в s000 nk.exe. Для этого идем в MODULES\nk.exe, открываем через hex-редактор s000 и правим по смещению 1788h адрес начала XIPа (это для HP RW6815, для других устройств - см. по ссылкам, как определять), т.е. начиная со смещения 1788h прописываем четыре байта смещения в обратном порядке записи - 9C DA D6 9A для смещения 9ad6da9c.

3.9. Наконец-то жмем кнопку "build xip_out.bin" в XIPPort и получаем наш новый XIP.

Все, далее закидываем наш новый XIP в файл рома (для 6815 с помощью XIPPort в diskimage_Ver.nb0 по смещению 180000)


---

Siemens92, на всякий случай приложил портированный тот ксип, который указывал (21032). Но можешь попробовать сам портировать (IMG:http://forum.pda2u.ru/style_emoticons/default/smile.gif)
Прикрепленные файлы
Прикрепленный файл  1.gif ( 5.09 килобайт ) Кол-во скачиваний: 74
Прикрепленный файл  2.gif ( 13.28 килобайт ) Кол-во скачиваний: 71
Прикрепленный файл  3.gif ( 22.55 килобайт ) Кол-во скачиваний: 81
Прикрепленный файл  xip_out.zip ( 1.06 мегабайт ) Кол-во скачиваний: 48
 


Спасибо сказали:
Перейти в начало страницы
Вставить ник
+Цитировать сообщение

Сообщений в этой теме
- Angel_Hranitel   "Ковыряем" XIP   16.12.2008, 1:13
- - Angel_Hranitel   Взял хип, исправил в нем ЦитатаulRAMFree: 805E2000...   16.12.2008, 1:29
- - AGC   Angel_Hranitel, что то ты зверское сделал Это ты ...   16.12.2008, 15:52
- - Angel_Hranitel   хип от 6828... вообщем если портировать согласно т...   16.12.2008, 17:33
- - Angel_Hranitel   сталкнулся с такой ситуацией, взял последнюю верси...   17.12.2008, 14:40
- - judas priest   когда ковырял прошивку от ровера на предмет замены...   17.12.2008, 18:07
|- - Angel_Hranitel   Цитата(judas priest @ 17.12.2008, 18:07) ...   17.12.2008, 19:33
|- - AGC   Цитата(Angel_Hranitel @ 17.12.2008, 19:33...   17.12.2008, 19:43
|- - Angel_Hranitel   Цитата(AGC @ 17.12.2008, 19:43) http://fo...   18.12.2008, 21:27
- - judas priest   да.....хочу самсунговский ксип запихать в прошивку...   17.12.2008, 20:07
- - Angel_Hranitel   Открыл MAP.txt от 1. 6815_WM_5_01.12.00 (родной XI...   6.1.2009, 2:02
- - AGC   В принципе, там важно распределение памяти, посмот...   7.1.2009, 10:30
- - Iakoff   Добрый день. Ребята, помогите мне пожалуйста научи...   9.1.2009, 16:08
- - Angel_Hranitel   Начни с этой темы... расписанно все очень доступно...   9.1.2009, 23:31
- - Iakoff   Angel_Hranitel, так в этой теме портирование в пре...   10.1.2009, 11:52
- - Angel_Hranitel   ЦитатаAngel_Hranitel, так в этой теме портирование...   10.1.2009, 14:45
- - Angel_Hranitel   вот такой map.txt CODE00000000 - 01f901fd L01f901f...   10.1.2009, 22:11
- - AGC   Angel_Hranitel, увеличь кардинально physlast. Наве...   14.1.2009, 17:42
- - Angel_Hranitel   скажите пожалуйста, в каком модуле у Ровера находи...   20.2.2009, 22:49
- - AGC   Angel_Hranitel, по-моему, в nk.exe. По крайней мер...   21.2.2009, 0:18
|- - Angel_Hranitel   Цитата(AGC @ 21.2.2009, 0:18) Angel_Hrani...   21.2.2009, 17:38
|- - AGC   Цитата(Angel_Hranitel @ 21.2.2009, 17:38)...   21.2.2009, 18:47
|- - Angel_Hranitel   Цитата(AGC @ 21.2.2009, 18:47) Нет. Если ...   21.2.2009, 21:32
|- - AGC   Цитата(Angel_Hranitel @ 21.2.2009, 21:32)...   21.2.2009, 23:15
- - Angel_Hranitel   Пытаюсь портировать XIP... Вообщем при портировани...   22.2.2009, 22:09
- - AGC   Angel_Hranitel, должен тебя огорчить, такое бывает...   22.2.2009, 22:55
- - Angel_Hranitel   я пытался портировать XIP и SYS 21015. Любые вариа...   22.2.2009, 23:05
|- - AGC   Цитата(Angel_Hranitel @ 22.2.2009, 23:05)...   23.2.2009, 13:17
|- - Angel_Hranitel   Цитата(AGC @ 23.2.2009, 13:17) В таких сл...   24.2.2009, 0:07
- - AGC   Angel_Hranitel, так а откуда ты взял этот XIP? В с...   24.2.2009, 0:56
|- - Angel_Hranitel   Цитата(AGC @ 24.2.2009, 0:56) Angel_Hrani...   24.2.2009, 1:06
- - AGC   Angel_Hranitel, я про "оторвать" в сосед...   24.2.2009, 1:30
- - Siemens92   AGC или Angel_Hranitel портаните пожалута хип 2101...   2.3.2009, 21:03
|- - Angel_Hranitel   Цитата(Siemens92 @ 2.3.2009, 21:03) AGC и...   2.3.2009, 21:31
- - Siemens92   Цитата(Angel_Hranitel @ 2.3.2009, 21:31) ...   2.3.2009, 21:40
- - Angel_Hranitel   должно работать   2.3.2009, 22:41
- - Siemens92   Цитата(Angel_Hranitel @ 2.3.2009, 22:41) ...   2.3.2009, 22:49
- - Siemens92   Angel_Hranitel Скажи пожайлуста по какому адресу х...   2.3.2009, 23:07
- - Angel_Hranitel   попробуй сразу эту версию мне она больше понравил...   2.3.2009, 23:13
- - Siemens92   Хорошо завтро все зделаю и проверю!И если все ...   3.3.2009, 0:08
- - Siemens92   Цитата(Angel_Hranitel @ 2.3.2009, 23:13) ...   3.3.2009, 18:31
- - Angel_Hranitel   хип не может загнать в jtag потому что бут не тро...   3.3.2009, 21:56
- - Siemens92   Цитата(Angel_Hranitel @ 3.3.2009, 21:56) ...   3.3.2009, 22:20
- - Angel_Hranitel   я имел ввиду запустить SYS 21018 с XIP, например, ...   3.3.2009, 23:12
- - Angel_Hranitel   AGC, какими утилитами ты портируешь хип на WM6.5? ...   6.3.2009, 22:11
|- - AGC   Цитата(Angel_Hranitel @ 6.3.2009, 22:11) ...   6.3.2009, 23:27
- - Siemens92   Angel_Hranitel Портани вот этот хип пожайлуста...   8.3.2009, 21:10
|- - ElectricFlash   Цитата(Siemens92 @ 8.3.2009, 21:10) Angel...   9.3.2009, 2:11
|- - Angel_Hranitel   Цитата(Siemens92 @ 8.3.2009, 21:10) Angel...   9.3.2009, 11:11
- - Siemens92   Вот приложу я еще сус нашел на английском и на кит...   8.3.2009, 21:25
- - Angel_Hranitel   завтра сделаю... сегодня не в састоянии устал оче...   8.3.2009, 22:27
- - Siemens92   Страно как-то но я скачивал это хип с разных источ...   9.3.2009, 14:50
- - Siemens92   Страно как-то но я скачивал это хип с разных источ...   9.3.2009, 14:50
- - Siemens92   Angel_Hranitel Вот нашел вроде нормальный тож 210...   9.3.2009, 18:05
- - Angel_Hranitel   AGC? не мог бы ты помочь Siemens92 с хипом? меня с...   10.3.2009, 21:19
- - Siemens92   AGC пожайлуста портируй вот этот хип http://rs707....   11.3.2009, 18:56
- - AGC   Siemens92, Ок Ближе к ночи сделаю. Только баш на ...   11.3.2009, 19:05
- - Siemens92   Цитата(AGC @ 11.3.2009, 19:05) Siemens92,...   11.3.2009, 19:53
- - Angel_Hranitel   AGC, хип от WM6.1   11.3.2009, 21:47
- - AGC   Siemens92, СПАСИБО, БРАТ! Вот уж, блин, куда б...   11.3.2009, 22:51
- - AGC   На самом деле, все равно собирался давно переписат...   11.3.2009, 23:44
|- - Angel_Hranitel   Цитата(AGC @ 11.3.2009, 23:44) В общем, п...   12.3.2009, 7:36
- - Siemens92   Прошу опишите все в подробных диталях как портиров...   12.3.2009, 14:07
|- - AGC   Цитата(Siemens92 @ 12.3.2009, 14:07) Прош...   12.3.2009, 15:14
- - AGC   Еще раз о портировании XIP Написал небольшую допо...   12.3.2009, 22:34
- - Siemens92   Спасибо,что портировал на попробовать портануть са...   12.3.2009, 22:49
- - Angel_Hranitel   лишнее   12.3.2009, 23:17
|- - ElectricFlash   Цитата(Angel_Hranitel @ 12.3.2009, 23:17)...   12.3.2009, 23:22
- - Angel_Hranitel   подходит ли xip WM6.0 к WM6.1 или его надо с ...   23.3.2009, 22:22
- - Eddis   Скажите, если я засовываю в xip какую-нибудь dll и...   1.4.2009, 10:31
- - misterfix   может уважаемый AGC и Khumen объяснят что я делаю ...   8.4.2009, 2:58
- - AGC   misterfix, разные размеры, в принципе, могут быть ...   8.4.2009, 4:01
- - misterfix   AGC дело тут вот в чем - собираю тоже вручную по...   8.4.2009, 6:37
|- - AGC   Цитата(misterfix @ 8.4.2009, 7:37) AGC ...   8.4.2009, 15:38
- - AGC   misterfix, вот, собрал тебе маленький наборчик для...   8.4.2009, 15:58
|- - misterfix   Цитата(AGC @ 8.4.2009, 22:58) misterfix, ...   9.4.2009, 2:43
|- - AGC   Цитата(misterfix @ 9.4.2009, 3:43) Вот мо...   9.4.2009, 3:22
- - AGC   misterfix, а в моих последних ксипах, например, во...   9.4.2009, 2:59
- - Quarx   Замена в XIPe nk.exe на другой возможна? И что это...   29.5.2009, 11:44
|- - AGC   Цитата(Quarx @ 29.5.2009, 12:44) Замена в...   29.5.2009, 20:21
- - Corias   Цитатат.е. начиная со смещения 1788h прописываем ч...   30.6.2009, 9:57
|- - AGC   Цитата(Corias @ 30.6.2009, 10:57) Как нах...   30.6.2009, 10:26
|- - Yad   Цитата(AGC @ 30.6.2009, 11:26) Разбираешь...   6.7.2009, 11:41
- - HTC.NIKE   подскажите, пожалуйста. Поставил висту, и при запу...   5.7.2009, 18:34
- - AGC   HTC.NIKE, на всякий случай, для начала проверь/уст...   5.7.2009, 18:38
|- - HTC.NIKE   Цитата(AGC @ 5.7.2009, 19:38) HTC.NIKE, н...   5.7.2009, 18:41
- - AGC   HTC.NIKE, а от имени Администратора если запустить...   5.7.2009, 18:54
- - HTC.NIKE   AGC, Тоже нифига, таже ошибка и кстати, при запус...   5.7.2009, 18:56
- - Quarx   Хотел спросить по поводу " ulRAMFree: ...   5.7.2009, 20:37
- - AGC   Yad, спасибо, думаю, твоя информация всем пригодит...   6.7.2009, 17:15
- - Quarx   Вот после изменения Start, End и ulRAMFree стало К...   6.7.2009, 17:43
- - Corias   Quarx, предположим: 65 536 000 всего 8 192 000 p...   6.7.2009, 18:08
- - Quarx   PagePool я снизил до 4мб...   6.7.2009, 18:29
- - AGC   А радио и т.п. не забыли? P.S. А вот на P320 у ме...   6.7.2009, 20:01
- - dizz74   Да кст если радио не пользуюсь (гаранитура потерял...   6.7.2009, 20:17
|- - AGC   Цитата(dizz74 @ 6.7.2009, 21:17) Да кст е...   6.7.2009, 23:35
- - Quarx   За радио не прявязано какой либо отдельно дллки......   6.7.2009, 20:26
|- - dizz74   Цитата(Quarx @ 6.7.2009, 23:26) За радио ...   6.7.2009, 20:36
- - Yad   Люди, подскажите, а адрес uninitialized data of re...   8.7.2009, 7:39
- - Quarx   Тут вычитал интересную вещь! Если сделать Page...   9.7.2009, 19:31
2 страниц V   1 2 >


Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 17.3.2026, 6:00
return_links(); ?>