Jump to content

[GUIDE] How to port a ROM


Guest gnufabio

Recommended Posts

Guest pritish sahoo

Hi users. Consider this post as my last post. I'm leaving liquid and liquid community...I'm buying a Galaxy Nexus as soon as it comes out. It seems a fantastic device. I also have to keep up my work on Asus Transformer.

So this post is my last present to the community, I really hope someone will keep up the Liquid development.

The question I have most seen in this forum is How can I port a ROM? Well, first of all keep in mind that there isn't a way to port a ROM. I can tell you what you should change, not what you need to change. The following list is the list of the file I changed to get the CM 6.1.1 fully working. Obviously you should take them from a working Acer Liquid's rom (like my CM 6.1.1 v3 or LiquidNext) and then add/replace them in the rom you want to port.

/system/app:

Bluetooth.apk → To fix the bluetooth problem

Phone.apk → To fix the proximity sensor issue

Added liquid settings & GApps

/system/bin:

Since you probably use the old sensor, you need to add all the *_yamaha files.

brcm_patchram_plus → To fix the bluetooth

dhcpcd

netd → To fix the wifi hotspot (you MUST change also /lib/libhardwarelegacy.so too, else you will get a bootloop)

rild → To get the network working

servicemanager → To get the sensors working

vold → To get the vold working

/system/etc:

the entire firmware folder to get wifi and sensors working

the init.d folder to tweak the rom

the permissions folder, added missing xmls

the entire wifi folder to get the wifi working

gps.conf → To improve the GPS

hosts → To fix ads

media_profiles.xml → To fix problems with camera and camcorder

vold.conf and vold.fstab → To fix vold, if you don't change them the rom won't boot.

/system/framework:

Added com.google.android.maps.jar to fix problems with the apps which uses GMaps.

You can find there the files to tweak with smali to get some stuff working. For example, if you want to get the prox. sensor working well, you need to edit the PowerService class in services.jar.

/system/lib:

the entire egl folder

the entire hw folder

the entire modules folder

all the libOmx* .so files → To get the camcorder working

all the libaudio* .so files → To get the audio working (if you don't change them, it won't boot)

libandroid.so

libauth.so

libcamera.so and libcameraservice.so → These depends on the ROM.

libcm, libcommondefs.so, libdiag.so, libdll.so, libdsm.so, libdss.so, libeffects.so, libg*.so

libhardare_legacy.so

libloc*.so

liblog.so

libmedia.so

libmmgsdilib.so, libmmipl, libmmjpeg.so, libnfc_ndef.so, libnv.so

libms3c_yamaha.so → To fix the sensors

liboemcamera.so → To fix the camera & camcorder

liboncrpc.so, libpbmlib.so, libqmi.so, libqueue.so

libril*.so

librtp_jni.so

libsensor*.so

libspeech.so

libsqlite_jni.so

libstagefright_*.so → These are usually not required

libt99.so

libvoicesearch.so

libwebcore.so

libwms.so

libwmsts.so

/system/sd:

The placeholder file. → To get sd working

/system/usr:

the entire 'keychars' and 'keylayout' folders

/system/vendor:

The entire folder.

/system:

Edit build.prop and add/change the following strings:

ro.product.board=salsa
ro.hw_version=4
rild.libpath=/system/lib/libril-acer-1.so

Obviously you also need to change the kernel and, if needed, you must also edit the BOOTCLASSPATH in the init.rc file in the ramdisk. Please refer to other tutorials for this.

Notes:

  • Pay attention to the updater-script. Sometimes all the problems are due to wrong permissions in it. Give a look to the updater-script of working roms to know more about it.
  • This is the most important thing: LOGCAT. If you don't use it, you will never port a ROM. You MUST read the logcat to know what's wrong in your ports.
I hope you will find this post usefull and that you will receive the necessary knowledge. But to learn all this thing what you need is to keep trying.

Good bye community smile.gif

Hello sir..

I am a dev of micromax a65( spreadtrum sc6820)(GB)

I successfully ported lewa os for my device

But network is not coming & imei showing null...

Any idea to fix this issue?

Link to comment
Share on other sites

Guest pritish sahoo

Hi users. Consider this post as my last post. I'm leaving liquid and liquid community...I'm buying a Galaxy Nexus as soon as it comes out. It seems a fantastic device. I also have to keep up my work on Asus Transformer.

So this post is my last present to the community, I really hope someone will keep up the Liquid development.

The question I have most seen in this forum is How can I port a ROM? Well, first of all keep in mind that there isn't a way to port a ROM. I can tell you what you should change, not what you need to change. The following list is the list of the file I changed to get the CM 6.1.1 fully working. Obviously you should take them from a working Acer Liquid's rom (like my CM 6.1.1 v3 or LiquidNext) and then add/replace them in the rom you want to port.

/system/app:

Bluetooth.apk → To fix the bluetooth problem

Phone.apk → To fix the proximity sensor issue

Added liquid settings & GApps

/system/bin:

Since you probably use the old sensor, you need to add all the *_yamaha files.

brcm_patchram_plus → To fix the bluetooth

dhcpcd

netd → To fix the wifi hotspot (you MUST change also /lib/libhardwarelegacy.so too, else you will get a bootloop)

rild → To get the network working

servicemanager → To get the sensors working

vold → To get the vold working

/system/etc:

the entire firmware folder to get wifi and sensors working

the init.d folder to tweak the rom

the permissions folder, added missing xmls

the entire wifi folder to get the wifi working

gps.conf → To improve the GPS

hosts → To fix ads

media_profiles.xml → To fix problems with camera and camcorder

vold.conf and vold.fstab → To fix vold, if you don't change them the rom won't boot.

/system/framework:

Added com.google.android.maps.jar to fix problems with the apps which uses GMaps.

You can find there the files to tweak with smali to get some stuff working. For example, if you want to get the prox. sensor working well, you need to edit the PowerService class in services.jar.

/system/lib:

the entire egl folder

the entire hw folder

the entire modules folder

all the libOmx* .so files → To get the camcorder working

all the libaudio* .so files → To get the audio working (if you don't change them, it won't boot)

libandroid.so

libauth.so

libcamera.so and libcameraservice.so → These depends on the ROM.

libcm, libcommondefs.so, libdiag.so, libdll.so, libdsm.so, libdss.so, libeffects.so, libg*.so

libhardare_legacy.so

libloc*.so

liblog.so

libmedia.so

libmmgsdilib.so, libmmipl, libmmjpeg.so, libnfc_ndef.so, libnv.so

libms3c_yamaha.so → To fix the sensors

liboemcamera.so → To fix the camera & camcorder

liboncrpc.so, libpbmlib.so, libqmi.so, libqueue.so

libril*.so

librtp_jni.so

libsensor*.so

libspeech.so

libsqlite_jni.so

libstagefright_*.so → These are usually not required

libt99.so

libvoicesearch.so

libwebcore.so

libwms.so

libwmsts.so

/system/sd:

The placeholder file. → To get sd working

/system/usr:

the entire 'keychars' and 'keylayout' folders

/system/vendor:

The entire folder.

/system:

Edit build.prop and add/change the following strings:

ro.product.board=salsa
ro.hw_version=4
rild.libpath=/system/lib/libril-acer-1.so

Obviously you also need to change the kernel and, if needed, you must also edit the BOOTCLASSPATH in the init.rc file in the ramdisk. Please refer to other tutorials for this.

Notes:

  • Pay attention to the updater-script. Sometimes all the problems are due to wrong permissions in it. Give a look to the updater-script of working roms to know more about it.
  • This is the most important thing: LOGCAT. If you don't use it, you will never port a ROM. You MUST read the logcat to know what's wrong in your ports.
I hope you will find this post usefull and that you will receive the necessary knowledge. But to learn all this thing what you need is to keep trying.

Good bye community smile.gif

Hello sir..

I am a dev of micromax a65( spreadtrum sc6820)(GB)

I successfully ported lewa os for my device

But network is not coming & imei showing null...

Any idea to fix this issue?

Link to comment
Share on other sites

Guest pritish sahoo

Hi users. Consider this post as my last post. I'm leaving liquid and liquid community...I'm buying a Galaxy Nexus as soon as it comes out. It seems a fantastic device. I also have to keep up my work on Asus Transformer.

So this post is my last present to the community, I really hope someone will keep up the Liquid development.

The question I have most seen in this forum is How can I port a ROM? Well, first of all keep in mind that there isn't a way to port a ROM. I can tell you what you should change, not what you need to change. The following list is the list of the file I changed to get the CM 6.1.1 fully working. Obviously you should take them from a working Acer Liquid's rom (like my CM 6.1.1 v3 or LiquidNext) and then add/replace them in the rom you want to port.

/system/app:

Bluetooth.apk → To fix the bluetooth problem

Phone.apk → To fix the proximity sensor issue

Added liquid settings & GApps

/system/bin:

Since you probably use the old sensor, you need to add all the *_yamaha files.

brcm_patchram_plus → To fix the bluetooth

dhcpcd

netd → To fix the wifi hotspot (you MUST change also /lib/libhardwarelegacy.so too, else you will get a bootloop)

rild → To get the network working

servicemanager → To get the sensors working

vold → To get the vold working

/system/etc:

the entire firmware folder to get wifi and sensors working

the init.d folder to tweak the rom

the permissions folder, added missing xmls

the entire wifi folder to get the wifi working

gps.conf → To improve the GPS

hosts → To fix ads

media_profiles.xml → To fix problems with camera and camcorder

vold.conf and vold.fstab → To fix vold, if you don't change them the rom won't boot.

/system/framework:

Added com.google.android.maps.jar to fix problems with the apps which uses GMaps.

You can find there the files to tweak with smali to get some stuff working. For example, if you want to get the prox. sensor working well, you need to edit the PowerService class in services.jar.

/system/lib:

the entire egl folder

the entire hw folder

the entire modules folder

all the libOmx* .so files → To get the camcorder working

all the libaudio* .so files → To get the audio working (if you don't change them, it won't boot)

libandroid.so

libauth.so

libcamera.so and libcameraservice.so → These depends on the ROM.

libcm, libcommondefs.so, libdiag.so, libdll.so, libdsm.so, libdss.so, libeffects.so, libg*.so

libhardare_legacy.so

libloc*.so

liblog.so

libmedia.so

libmmgsdilib.so, libmmipl, libmmjpeg.so, libnfc_ndef.so, libnv.so

libms3c_yamaha.so → To fix the sensors

liboemcamera.so → To fix the camera & camcorder

liboncrpc.so, libpbmlib.so, libqmi.so, libqueue.so

libril*.so

librtp_jni.so

libsensor*.so

libspeech.so

libsqlite_jni.so

libstagefright_*.so → These are usually not required

libt99.so

libvoicesearch.so

libwebcore.so

libwms.so

libwmsts.so

/system/sd:

The placeholder file. → To get sd working

/system/usr:

the entire 'keychars' and 'keylayout' folders

/system/vendor:

The entire folder.

/system:

Edit build.prop and add/change the following strings:

ro.product.board=salsa
ro.hw_version=4
rild.libpath=/system/lib/libril-acer-1.so

Obviously you also need to change the kernel and, if needed, you must also edit the BOOTCLASSPATH in the init.rc file in the ramdisk. Please refer to other tutorials for this.

Notes:

  • Pay attention to the updater-script. Sometimes all the problems are due to wrong permissions in it. Give a look to the updater-script of working roms to know more about it.
  • This is the most important thing: LOGCAT. If you don't use it, you will never port a ROM. You MUST read the logcat to know what's wrong in your ports.
I hope you will find this post usefull and that you will receive the necessary knowledge. But to learn all this thing what you need is to keep trying.

Good bye community smile.gif

Hello sir..

I am a dev of micromax a65( spreadtrum sc6820)(GB)

I successfully ported lewa os for my device

But network is not coming & imei showing null...

Any idea to fix this issue?

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.