0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Портирование прошивок с утройства на устройство с процессором MT657x

Портирование прошивок с утройства на устройство с процессором MT657x

Нельзя портировать прошивки, например с MT6575 на MT6577. И базовая, и стоковая прошивка должны быть для одного процессора.
Обе прошивки должны быть одной версии ОС

Перелопатив кучу сайтов и форумов в поисках нормальной инструкции по портированию прошивок с MT6577 на MT6577, нашел одну очень краткую и рабочую инструкцию. По ней у меня самого получилось потировать прошивку с одного устройства на другое. По другим инструкция при загрузке прошивка висла на логотипе.
Инструкцию написал пользователь back37 с форума http://forum.china-iphone.ru.
Вот тема, откуда я взял инструкцию. В ней вы найдете очень много полезной информации, нужной не только для процессоров MediaTek, но и для других.
Создал тему на 4PDA, чтобы инструкцию было легче найти (лично я очень долго искал). Инструкцию немного перефразировал, но суть та же.

Собственно сама инструкция:


Берем рабочую прошивку для своего устройства (БАЗА);
Берем портируемую прошивку для кастомного рекавери (ПОРТ).


В ПОРТ c заменой скидываем папки из БАЗЫ :
/system/vendor
/system/lib/hw
/system/lib/modules

и файлы
/system/etc/vold.fstab
/system/etc/vold.fstab.nand
system/usr/keylayout/generic.kl
boot.img

дописываем их в конец скрипта.


Прошивка получится в папке ПОРТА. Теперь все это нужно запаковать с обычным сжатием в zip (Если вы распаковывали). И обязательно подписать.


Прошиваем. Если висит на лого больше 10 минут, уже не загрузится. Надо править boot.img, а именно распаковать оба бута и скинуть папку rmdisk из ПОРТА в БАЗУ с заменой. Распаковать/Запаковать boot.img можно этой программой. Получившийся бут (если название new_image.img, переименуйте на boot.img) засунуть в архив с прошивкой и опять подписать.

Если в вашей прошивке после портирования что-то не работает, не факт, что после манипуляций, приведенных ниже, это заработает. Но попробовать стоит :yes2: .
Здесь написано, какие бинарники и либы отвечают за работу разных модулей(GPS, Bluetooth, Wi-Fi, радио и т.д.) Попробуйте позаменять их тоже.

Не работает GSM, 3G — меняем папку /system/etc/firmware
Не работает Wi-Fi — меняем файлы /system/bin/p2p_supplicant ; /system/bin/wpa_supplicant
Не работает камера — меняем /system/lib/libcameracustom.so
Проблемы со звуком — меняем /system/lib/libaudiosetting.so
Не работает радио — заменяем system/lib/libaudiosetting.so и libfmcust.so
Слышны хрипы/звуковые артефакты заменяем system/lib/soundfx
Не работают аппаратные клавиши меняем папку system/usr/keylayout

*Решение некоторых проблем (дополнение)

Не ловит связь-с папки system/etc/firmware вытаскиваем modem.img,если после этого не сеть все же не работает то берем с папки system/lib/modules файлы ccci.ko , ccci_plat.ko

Проблема с клавишей домой,не работает как задумано-с папки system/usr/keylayout берем файл Generic.kl и mtk-tpd.kl

Не работает wi fi-с папки system/lib/modules/ берем эти файлы mtk_stp_wmt.ko и mtk_wmt_wifi.ko ,затем идем в META-INF/com/google/android/updater-script ищем симлинк symlink(“/system/lib/modules/wlan_mt6620.ko и меняем значение на 6628 если у вас такой чип,если не знаете какой у вас чип,идем в базу и в build.prop ищем в строке wlan

Если проблемы с bluetooth то с папки берем файл system/lib/modules/mtk_stp_bt.ko если не работает то меняем эти два файла system/lib/libbluetooth_mtk.so
system/lib/libbluetoothem_mtk.so

Не работает радио — меняем system/lib/modules/mtk_fm_priv.ko и system/lib/modules/mtk_fm_drv.ko , если не работает, то меняем эти файлы
system/lib/libfmar1000.so
system/lib/libfmcust.so
system/lib/libfmjni.so
system/lib/libfmmt6616.so
system/lib/libfmmt6620.so
system/lib/libfmmt6626.so
system/lib/libfmmt6628.so
Если все же не работает меняем FMradio.apk

Не работает камера-с папки system/lib/hw/ меняем этот файл camera.default.so,если не помогает,то с папки system/lib меняем:
— libcamalgo.so
libcamera_client.so
libcameracustom.so
libcameraprofile.so
libcameraservice.so
не работает видеозапись меняем эти файлы libmhal и libMTKOmx в папке system/lib

Проблема с GPS- меняем эти файлы system/xbin/libmnlp и mnld

Черный экран,медленная анимация,медленный автоповорот-меняем этот файл hwcomposer.mt6577.so в папке system/lib/hw — замечание от Andrey567

Не работает компас, датчик приближения или что-то из этой оперы, меняем system/lib/hw/sensors.default.so

В теме нет куратора. Если в теме есть пользователь, желающий стать Куратором и соответствующий Требованиям для кандидатов, он может подать заявку в теме Хочу стать куратором (предварительно изучив шапку темы и все материалы для кураторов).
До назначения куратора, по вопросам наполнения шапки, обращайтесь к модераторам раздела через кнопку под сообщениями, на которые необходимо добавить ссылки.

Сообщение отредактировал vaalf — 13.05.18, 19:08

Портирование MIUI прошивок на MTK смартфоны (На примере MT6582)

Всем привет и возможно пока (ибо на днях в баню попаду)

Что же.. в этот раз напишу гайд по портированию прошивок MIUI с одного МТК девайса на другой, естественно что гайд будет о портировании MIUI 7 и только до версии 4.4 включительно.

Читать еще:  Cкачать Adguard Premium для Android на русском

Часть инфы нарыл на 4pda, другое — с собственного опыта.

Что же для этого нужно?

Итак, для начала вы должны получить рут права, далее в смартфоне включить отладку по USB, как правило этот пункт находится в меню разработчика.

1) Этап первый — MTKdroidtools

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

Заходим в программу и если все правильно сделали то нажать кнопку ROOT, чтоб получить root shell (когда вы его получите то прямоугольник в нижнем левом углу станет зеленого цвета).

Далее открываем вторую вкладку программы и выбираем БЭКАП

Начнется создание бэкапа, и далее вам будет предложено запаковать все в архив.

Этого делать не нужно, нажимаете НЕТ (ну или да, если так хочется).

После того как увидите оповещение о том что задание завершено — переходите на первую вкладку программы и выберите пункт «карта блоков»

Тут нам важно записать или запомнить какой номер у точек монтирования.

Раздел SYSTEM и раздел DATA.

Тут указано mmcblk0p5 для system (для примера).

Все это пригодится немного позже.

Отлично, бэкап создан и теперь настало время для модификации прошивки.

2) Скачайте прошивку MIUI для вашего процессора, от любой модели смартфона.

К примеру если у вас MT6582 то качаете то же самое.

Ни в коем случае не используйте бэкап сторонних смартфонов, даже тех же моделей, поскольку существуют различные «ревизии» у одной и той же модели.

На одном китайском galaxy s6 я нашел более 5 ревизий и 2 разных типа памяти.

К чему приведет скачивание не той ревизии? от нерабочей камеры, отсутствие картинки до бутлупа (зависания на логотипе).

3) Распаковывайте скачанную прошивку и для удобства откройте 2 окна проводника, со своим бэкапом и скачанной прошивкой.

Примерно это должно быть так

Да да, архив system надо распаковать.

Итак. а теперь переходим к замене фаилов.

Заменяем из папки с бэкапом в папку с скачанной прошивкой

папки lib/hw ; lib/soundfx ; lib/ssl копируем целиком с заменой.

меняем все .xml которые начинаются на android.hardware

etc/wifi ; etc/bluetooth — копируем целиком с заменой

Если вы скопировали эти фаилы с бэкапа в папку с новой прошивкой и заменили — значит пол дела сделано.

4) Распаковка boot.img и сборка

В архиве с скачаной прошивкой вы должны найти boot.img фаил.

Теперь создайте две папки с программами mtwintool.

В первую папку кидаете бут с бэкапа, во вторую бут из новой прошивки.

Так должна выглядеть папка программы, в папку IN кидайте бут фаил, в другую папку программы кидаете бут фаил от новой прошивки (которую скачали)

Запускаем программу открыв menu.bat (не забудьте когда откроете программу переключить язык на английский)

Тут выбираем сначала пункт 5 (init tools) жмем клавишу Y затем выбираем пункт 1, далее выбираем image unpack и там же выбираем пункт номер 1.

Теперь мы должны получить такую картину

добавились 2 папки, unpack — там где распакован boot, а PACK — это то где появится новый бут фаил.

Проделайте те же действия со вторым бутом (из новой прошивки).

Теперь заменяем фаилы.

пусть вас не смущает то что в некоторых прошивках нет фаила kernel_header.

fstab
fstab.fat.nand
fstab.nand
init.project.rc
init.no_ssd.rc этот файл может называться в другом ядре init.ssd.rc
init.usb.rc

так же не забываем о камере

открываем init.rc и находим там раздел #Camera

и копируем все с данного раздела из init.rc (бэкапа) в init.rc новой прошивки.

что копировать именно? пример моего init.rc

Теперь запускаем mtwintools в той папке в которую копировали фаилы с бэкапа и переходим к процессу запаковки.

Для этого в Mtwintools нужно выбрать пункт 1, затем нажать image pack и выбираем фаил бута.

Далее нам будет предложено выбрать метод запаковки, на мой взгляд лучшее это gzip.

Выбираем и ждем. после этого смотрим на размер созданного бут фаила в папке PACK, и если размер равен нулю, то открываем папку boot/cfg , фаил boot.cfg.

Меняем размер bootsize, ставим вместо 0x1000 другое значение, например 0x1200 и так далее, затем снова пытаемся создать бут, если он снова весит 0 килобайт, увеличиваем значение и так до тех пор пока бут не прийдет к нормальному обьему (главное чтоб не 0)

Так же есть вариант такой чтоб убрать значение bootsize, то есть сделать что то вроде такого — bootsize = ( то есть не писать никакого значения для этого параметра, оставлять пустым )

5) Редактирование скрипта

Открываем папку META-INFcomgoogleandroid

фаил updater-script открываем и находим значения вроде таких

format(«ext4», «EMMC», «/dev/block/mmcblk0p5», «0», «/system»);

Вспоминаем карту блоков, а точнее под каким номером у вас находится system и data.

Если в скрипте написано

format(«ext4», «EMMC», «/dev/block/mmcblk0p5», «0», «/system»);

mmcblk0p7 это system — то смело меняете с 5 на 7.

Читать еще:  Самый дешевый смартфон на Андроиде 2018 года

Менять нужно абсолютно все параметры где есть упоминание mmcblk0p(X) под вашу карту блоков.

Теперь перемещаете бут фаил в новую прошивку

и запаковывайте в ZIP. вот и вся система)

НО напоследок дам пару советов.

Если после прошивки у вас маленькие иконки и шрифт, либо наоборот крупные . то открывайте фаил build.prop

найдите там параметр ro.sf.lcd_density и измените его значение.

если такого пункта нет — добавьте.

Вот и все ребята,спасибо за внимание.

Рейтинг близок к -200 и возможно это последний мой пост)

Портирование прошивок с утройства на устройство с процессором MT657x

Внимание! Инструкция понятная и рабочая(сам ей пользуюсь).Нужна для телефонов с процессором MT657x, как правило китайских.

Для одних смартов есть кастом, а для других только сток и это не справедливо, но если делать всё по инструкции, то кастом будет у всех.Хорошая инструкция нужна для «красных»телефонов.Инструкцию нашёл чудом.

Отдельная благодарность Bobs’у, что разрешил разместить это.

Портирование прошивок для устройств с процессором MT657x

Нельзя портировать прошивки, например с MT6575 на MT6577. И базовая, и стоковая прошивка должны быть для одного процессора.

Обе прошивки должны быть одной версии ОС

Инструкцию написал пользователь back37 с форума forum.china-iphone.ru.

Предварительно прочитайте полностью.

Берем рабочую прошивку для своего устройства (БАЗА);

Берем портируемую прошивку для CWM (ПОРТ).

В ПОРТ c заменой скидываем папки из БАЗЫ :

Идем в META-INF/com/google/android ПОРТА, открываем updater-script.

Если есть строки:

дописываем их в конец скрипта.

Прошивка получится в папке ПОРТА. Теперь все это нужно запаковать с обычным сжатием в zip (Если вы распаковывали). И обязательно подписать signscript’ом(скачать под топиком).

Прошиваем. Если висит на лого больше 10 минут, уже не загрузится. Надо править boot.img, а именно распаковать оба бута и скинуть папку rmdisk из ПОРТА в БАЗУ с заменой. Распаковать/Запаковать boot.img можно этой программой. Получившийся бут (если название new_image.img, переименуйте на boot.img) засунуть в архив с прошивкой и опять подписать.

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

Здесь написано, какие файлики отвечают за работу разных модулей(GPS, Bluetooth, Wi-Fi, радио и т.д.) Попробуйте позаменять их тоже.

Не работает GSM, 3G — меняем папку /system/etc/firmware;

Не работает Wi-Fi — меняем файлы /system/bin/p2p_supplicant; /system/bin/wpa_supplicant.

Не работает камера — меняем /system/lib/libcameracustom.so

Проблемы со звуком — меняем /system/lib/libaudiosetting.so

Не работает радио — заменяем system/lib/libaudiosetting.so и libfmcust.so

Слышны хрипы/звуковые артефакты заменяем system/lib/soundfx

Не работают аппаратные клавиши меняем папку system/usr/keylayout

Также, кто умеет собиратьразбирать ядра пишите в комменты, либо название прог по разборкесборке ядер.

Портирование прошивок на MT65xx [Инструкция]

Инструкция по портированию прошивок на устройства MediaTek MT65xx

Что нам понадобится:

  • Установленное кастомное рекавери (TWRP, CWM, Carliv Touch и т. д.)
  • zip прошивка для рекавери которую хотим портировать с другого устройства:

  • На таком же чипсете (то есть MT6572 -> MT6572)
  • С таким же резрешением дисплея (то есть 480×800 -> 480×800)
  • С такой же версией Android (то есть 4.4.2 -> 4.4.2)

  • system.img и boot.img из вашей заводской прошивки
  • Инструкция:

    1. Создаём папку под названием STOCK и распаковываем туда содержимое system.img: Как распаковать system.img на Windows для создания кастомной прошивки

    2. Создаём папку под названием PORT и распаковываем туда содержимое из zip архива прошивки которую мы будем портировать

    3. Теперь из STOCK в PORTsystem копируем с заменой следующие файлы и папки:

    • Из папки vendor копируем всё что внутри папки в PORTsystemvendor
    • systemlibhwhwcomposer.mt6572.so (название файла может отличаться, например hwcomposer.mt6582.so, если чипсет MT6582)
    • systemlibmodulespvrsrvkm.ko (файла может не быть)
    • systemlibmodulesccci_plat.ko
    • systemlibmodulesccci.ko
    • systemliblibwpa_client.so
    • systembinwpa_supplicant
    • systemliblibcustom_nvram.so
    • systemetcfirmwaremodem.img
    • systemliblibaudio.primary.default.so

    4. Далее берём наш boot.img из стоковой прошивки и распаковываем его при помощи Boot and Recovery Repack by michfood, сохраняем из распакованного стокового boot.img файл kernel

    5. Дальше точно так же распаковываем boot.img из PORT и заменяем в нём kernel на тот который мы распаковали из стокового boot.img. Запаковываем boot.img и скидываем его снова в PORT (с заменой если там у вас старый boot.img, не забудьте переименовать именно в boot.img)

    6. Дальше открываем файл PORTMETA-INFcomgoogleandroidupdater-script при помощи любого текстового редактора, желательно Notepad++ и находим строки связанные с форматированием и монтированием раздела /system :

    Выделенное красным, нам надо заменить на точки монтирования которые соответствуют нашему устройству. Данную информацию можно легко узнать при помощи программы MtkDroidTools (залил в архив MtkDroidTools_v253.zip ). На скриншотах ниже видно, что «mmcblk0p6» надо заменить на «mmcblk0p4». После редактирования updater-script, сохраните изменения

    7. Так же, если в updater-script есть следующие строки, то удалите их:

    Портирование прошивок Android

    Тема, как портировать прошивку Android, довольно избитая, но не теряет актуальности. Наоборот, всё больше людей начинают ею интересоваться. В этой статье мы рассмотрим только портирование устройств с одинаковыми ядрами. Если вы хотите себе суперинтересную прошивку, то самое время начинать разбираться с «кухней» этого процесса.

    Пошаговая инструкция

    • компьютер с любой ОС;
    • WinRAR или подобный архиватор;
    • Notepad++;
    • два ROMа: портируемый (далее PROM – из которого будем брать «цацки») и базовый (далее BROM – на котором будем собирать).

    *BROM – как правило, родная прошивка.

    **Так как здесь будет рассмотрено ARM устройство, сперва нужно узнать, какой у вас процессор.

    Действие первое

    Cоздайте backup из директории system/app в любую папку на десктопе. Копируя файлы, вы поймёте, в чём дело, ведь если приступили к портированию, значит, наверное, не раз прошивали свой MID.

    Действие второе

    Удалите приведённые на картинке директории из BROM и, соответственно, вставьте вместо них папки из PROM.

    Действие третье

    Теперь файлы из первого действия забрасываем обратно в BROM.

    Действие четвёртое

    Заходим в папку system/lib BROM и копируем с заменой все библиотеки в соответственное хранилище PROM (не удивляйтесь, так проще). То же самое проделываем по путям /system/etc/init.d и /system/etc/permissions. Три вышеуказанные директории теперь можно уничтожить (в BROM), а на их место скопировать всё из PROM.

    Важно: откройте файлы build.prop в обеих ROM-ах через Notepad++. Этот усовершенствованный блокнот хорошо показывает табы. Последние должны быть один напротив другого, а запись ro.build.description= должна абсолютно совпадать, иначе прошить устройство у вас не получится вовсе. Если запись не такая, проредактируйте её. То же самое проделайте с updater-script, находящийся по пути META-INFcomgoogleandroid. Естественно, запись должна быть идентична с записью PROMа.

    Очень важно: совершенно нельзя менять symlinks. Вы можете изменить или исправить, то ли добавить ui_prints, run_programs, asserts и, конечно, ядро.

    Самое важное: в Updater-script BROM Format values должны быть для вашего устройства. Иногда нужно исправить в init.rc BOOTCLASSPATH или просто скопировать его из RBOOT. Потом, естественно, перепаковать ядро.

    Ну, всё! Портирование прошивок Android на базе ARM делается так. Удачи!

    Как портировать прошивки на Андроид?

    Портирование прошивок интересует многих продвинутых пользователей, которые хотят адаптировать свое устройство для другой среды с сохранением её полезных свойств. Обычно основная цель этого процесса — сделать прошивку на своём гаджете «интереснее» и расширить её функционал. Давайте рассмотрим, как всё это происходит на технике Android с платформой ARM.

    Каждый из пользователей хотел бы добавить в свой гаджет что-то оригинальное

    Что нужно для портирования прошивок?

    Для осуществления этого процесса требуются следующие составляющие:

    • Приложение Notepad или другой текстовый редактор (впрочем, эта программа считается наиболее удобной и продуманной среди остальных).
    • Архиватор WinRar.
    • Компьютер, через который осуществляется весь процесс.
    • Два ROM`а с одинаковыми ядрами — один является источником для передачи данных прошивки, на другом мы будем собирать их для программного обеспечения.

    Как происходит портирование прошивки?

    Прежде всего, мы создаём backup папку на компьютере, копируя с директории system/app на ПК такие файлы с расширением .apk:

    Затем, на устройстве, где мы будем собирать прошивку (его другое название — BROM) мы удаляем эти файлы, а вместо них копируем из источника, который ещё называется PROM следующие директории:

    Ещё на базовый ROM мы копируем в папку /system/lib библиотеку libandroid_runtime.so. Теперь мы снова перемещаем в BROM прежде удалённые файлы из первого действия.

    В последующем мы делаем копию таких библиотек из базового ROM’а в PROM, как:

    Обратите внимание, что копирование производится с заменой существующих на другом оборудовании данных, а не в качестве их дополнения. Теперь мы удаляем три эти директории на BROM и на их место копируем всё из PROM`а.

    Переходим к работе с редактором Notepad и выполняем следующие действия:

    • Открываем на каждом ROM`е файл build.prop и размещаем оба окна друг напротив друга.
    • Сверяем, чтобы запись ro.build.description= совпадала на обеих устройствах, иначе не удастся выполнить прошивку. Если нужно, редактируем строку так, чтобы записи в PROM и BROM были идентичны.
    • Переходим по пути /META-INF/com/google/android и теперь открываем для сверки файлы под названием updater-script. Если они не идентичны, то корректировать их необходимо так, чтобы в BROM`е совпадало значение, которое указано в портируемом ROM`е.

    Примечание. Вы можете редактировать или добавлять такие параметры, как ядро или permissions, asserts, ui_prints, run_programs, но ни в коем случае не меняйте значение symlinks.

    Последнее, что необходимо сделать — проверить в скрипте updater параметр Format values на базовом ROM`е (указанные данные должны подходить для вашего оборудования). Если у двух ядер разные производители, обязательно распакуйте ядро и скопируйте из портируемого ROM`a данные BOOTCLASSPATH на BROM по адресу init.rc.

    После всех выполненных действий прошивка окажется в базовом ROM`е, а вы сможете дополнить её по своему усмотрению. Как видите, весь процесс занимает немного времени и не требует особых знаний. Поэтому вы вполне можете справиться с портированием прошивок самостоятельно.

    Ссылка на основную публикацию
    Статьи c упоминанием слов:
    Adblock
    detector