Thursday, November 19, 2015

How To Port Lollipop Based ROMs for MTK Kitkat Devices

How To Port Lollipop Based ROMs for MTK Kitkat Devices
mtk-porting-guide-lollipop

Lollipop Screenshot
Only For Mediatek SOCs

This guide applies to same chipsets:

Example:
MT6577 to MT6577
MT6592 to MT6592
MT6572 to MT6572
MT6582 to MT6582


And works also for different SOC with same GPU


Before starting this tutorial, please make a backup of your ROM
I am not responsible for any damage to your device, this guide is for expert users.


You Need:

- Winrar, 7-Zip or similar
Notepad++
- Tool for unpack/repack MTK boot.imgs
- Your Stock KitKat ROM
- One Lollipop ROM for port
- Brain 



Step 1.- Unzip the port lollipop ROM and also the Stock ROM. Rename the lollipop ROM folder to Port ROM



Step 2.- Delete this files or folders in Port ROM folder and replace with your files from Stock ROM:



Code:
-system/etc/firmware  <-- Folder
-system/lib/modules* <--- Folder
-system/usr/keylayout/Generic.kl <--- File
* In some ROMs this folder doesnt' exist

Step 3.-Open system/lib/hw folder in Stock ROM folder, then select & copy all files and paste to inside the system/lib/hw folder in Port ROM replacing files.

Note: if you porting a ROM from a different SOC, delete this files before in port rom, like this: audio.primary.mt65xx.so, audio_policy.mt65xx.so, gralloc.mt65xx.so, hwcomposer.mt65xx.so, ligths.mt65xx.so, sensors.mt65xx.so etc.



Step 4.-Rename your stock kitkat boot.img to stockboot.img and the boot.img from Port ROM folder to portboot.img. Now unpack the boot.imgs, in ramdisk folder from decompiled portboot.img open the fstab (ramdisk/fstab or fstab.mt65xx) file with Notepad++ and edit (compare with the fstab.mt65xx of your decompiled stockboot.img) and save. Use the kernel 3.4.67(zImage)from your decompiled stockboot.img and the ramdisk folder from decompiled portboot.img, recompile it and put this new boot.img in Port ROM folder.




Step 5.- Open the updater-script in META-INF from port rom, open it with Netepad++. Edit the format &mount points(compare with your updater-script from stock META-INF)

Example:
Code:
format("ext4", "EMMC", "/dev/block/mmcblk0p7", "0", "/system");
format("ext4", "EMMC", "/dev/block/mmcblk0p5", "0", "/data");
mount("ext4", "EMMC", "/dev/block/mmcblk0p7", "/system");


Step 6.- Zip the Port ROM folder and flash it in recovery mode and enjoy.


Fixing Bugs

No audio in loudspeaker?

Replace libaudio.primary.default.so from stock ROM to Port

Storage Bug

Decompile the framework-res.apk, go to res/xm/storage_list.xml and edit it like the storage_list.xml from framework-res.apk of your Kitkat ROM, also edit the fstab.mt65xx in boot.img(compare with the fstab.mt65xx of your kitkat boot.img)

Bluetooth

Replace libbluetooth_mtk.so and libbluetoothem_mtk.so from stock ROM to port.

Sensors

Replace libsensors.so file from stock ROM to port.

Wifi

Replace libwifi-service.so from stock ROM to port


Camera

all files that start with libcam....so


Credits:
ZonaMRM
XDA

No comments:

Post a Comment