Hello! I've taken an interest in kernel and rom development, so I'd appreciate it if someone could give me tips and/or link/write tutorials that explains things about kernel modification (overclocking, bug fixing etc), custom rom making (how to add features, bug fixing etc).
Also is it possible to update/make a newer kernel from the source, like source is available for 4.5, would it be possible to update it to 4.6?
Any help/tip/tutorial is appreciated.
Ps: I don't know if this thread belongs here, as I'm new here.
Thanks, .
Related
I'm really interested in learning how to build from the AOSP code. I've found some tutorials on how to do so, so that's not the problem. I'm wondering if anyone knows of any good resources for how to make the tweaks such as MMS enhancements, battery percent mod, etc. I've seen some things on here stating to flash an update.zip but I'm wondering how to manually do it in the code.
Any help would be appreciated as I can't find the references on here if any.
Look at cyanogen's git. Or any other modders git if they have one.
Let's say that I wanted to get into android rom development, what would be a good place to start to learn. I've downloaded several e-books about android development, but they all pertain to writing applications for android OS, not really getting into modding the OS itself. I suspect I'd need to learn about linux then translate that knowledge to android?
Anybody have any good places to start or good reference materials?
It appears that none of the cyanogenmod team is even going to do anything with the Captivate, they're all working on I9000 and Vibrant, totally ignoring the Captivate. So, I thought I'd get in there and try and learn.
Building Android from source - their own site is the best for instructions on how to build android: http://source.android.com/
Building Captivate requires downloading the sources, building the kernel using the build_kernel.sh after you've fixed the toolchain paths. Or you can just use the usual linux kernel building method that the script actually does underneath.
Then you need to build eclair (or froyo). Samsung has opensourced most of the code but not all so you need to figure out how to merge vanilla eclair source into Samsung's tree, and build it. There is a readme in the source from Samsung about what to change in the build files.
You're going to be doing a lot of googling . . . I haven't figured out all the details of the Samsung eclair build so you're on your own there. Maybe others can chime in.
-Atin
atinm said:
Building Android from source - their own site is the best for instructions on how to build android: http://source.android.com/
Building Captivate requires downloading the sources, building the kernel using the build_kernel.sh after you've fixed the toolchain paths. Or you can just use the usual linux kernel building method that the script actually does underneath.
Then you need to build eclair (or froyo). Samsung has opensourced most of the code but not all so you need to figure out how to merge vanilla eclair source into Samsung's tree, and build it. There is a readme in the source from Samsung about what to change in the build files.
You're going to be doing a lot of googling . . . I haven't figured out all the details of the Samsung eclair build so you're on your own there. Maybe others can chime in.
-Atin
Click to expand...
Click to collapse
Thanks. Thats what I'm talking about, a lot of what you said seems Greek to me. I'd like to learn how to do all that. I guess, just read a lot from the google source website?
My advice would be to first learn how to go muck in the linux kernel and the Android sources in general. The Captivate code has been hacked some by Samsung so it doesn't quite follow all the rules about where files are supposed to go (there is no vendor tree for example) but at least it is a start. The google source site is the best for instructions on how to do vanilla stuff that's not hardware specific. Google around for more specific instructions related to the particular problem you are trying to solve after that.
Building working stuff at this level isn't easy. Unless you are somewhat experienced or willing to spend a lot of time learning and making mistakes, I'd say leave this to people who have some experience at this level and come back to it when building for the Captivate is well understood and the knowledge has been distributed enough so lots of people can help you when you have specific questions (no one likes answering general "how to" stuff on a device specific thread).
-Atin
Hello. I don't know if this is the correct forum to post my question (I would rather put it in the Android Development section) but as I don't want to contaminate the quality of that forum with (maybe) stupid questions, I will ask here. If a moderator feels it's not the right place, please feel free to movemy post wherever.
I started building Galaxy Note's (N7000) ICS kernel following the Howto from here XDA forum.
I am looking for the JB Kernel source at samsungs website but couldn't find it. Just ICS and GB versions. Where do the developers get the JB kernel source from?
I also would like to integrate CWM recovery on my kernel build, but couldn't find any info/howto/tutorial.
I guess I have to integrate the sources found at https://github.com/ClockworkMod/www.clockworkmod.com with the kernel. Could someone point me in the right direction?
I have Linux experience and had build custom kernels for my own computers, so that, linux batch scripting, C/C++ is no problem.
Thank you very much in advance.
Today I was trying to get an USB gamepad working (with no luck so far) but in my search I came across this CM change: http://review.cyanogenmod.org/#/c/63293/. Which would allow me to use my beloved WiiMote again, after it stopped working in android 4.3+. However in the comments of that commit it mentions that it requires kernel support.
Since I don't have the required hardware available atm to build it myself and don't have the required number of posts yet to ask in the KMA kernel thread itself I'm asking here:
Is anyone willing and able to compile a custom KMA kernel (http://forum.xda-developers.com/xperia-z/orig-development/kma-cm-11-101-sony-kernel-blobs-t2708325) with the above needed kernel configs enabled?
(Or at least reference my request/thread in the KMA thread, so if/when Thomas has the time and willingness he might be able to do it, so it becomes available for all his kernel users)
For reference:
The XDA thread for the Carbon rom is: http://forum.xda-developers.com/xperia-z/development/rom-carbon-rom-kk-unofficial-built-t2727592
An assumption I made is that the rom syncs with the CM11 CyanogenMod/android_external_bluetooth_bluedroid repository. If there is some way I can check this, please enlighten me where to look.
The needed kernel configs are: CONFIG_HIDRAW=y and CONFIG_HID_WIIMOTE=y.
I am basing my assumption that they are not enabled on the following:
For the KMA kernel:
https://github.com/daeiron/android_...b/cm-11.0-new/arch/arm/configs/yuga_defconfig
For the default kernel of my rom:
https://github.com/Alx31/android_ke....0/arch/arm/configs/cm_fusion3_yuga_defconfig
I've done some searching and found many dated and non-specific references on building AOSP for your device. I didn't even find anything referencing lollipop. I was wondering if somebody had written up some device specific instructions for the m7. I'm looking for information like pulling in the correct binaries and kernel source.
91ludesit said:
I've done some searching and found many dated and non-specific references on building AOSP for your device. I didn't even find anything referencing lollipop. I was wondering if somebody had written up some device specific instructions for the m7. I'm looking for information like pulling in the correct binaries and kernel source.
Click to expand...
Click to collapse
Which ROM are you looking for? I found the instructions for building CyanogenMod for the Nexus 6 to be helpful when I rebuilt CM7 for the original Droid Incredible. I don't see any reason it can't be extended to the M7 and lollipop--I can indicate the appropriate changes, if that's helpful.
wiki.cyanogenmod.org/w/Build_for_shamu
I'm just wanting to build straight from aosp with maybe a custom kernel source.
91ludesit said:
I'm just wanting to build straight from aosp with maybe a custom kernel source.
Click to expand...
Click to collapse
Ah. Well, I'm not an expert by any means, but I don't think it's quite that straightforward. The Android source released by Google has no support for any devices except Nexus devices. Various ROMs, CyanogenMod being the biggest, have created open-source device trees to support additional devices. In the source tree for the device that I built for (Droid Incredible), for example, there is code for "liblights", "libsensors", a kernel module, some firmware, some configuration tweaks for various system apps like Camera and Torch--and a configuration file for the kernel. So if you want to compile AOSP for your m7, you'll have to port all that code over to the AOSP tree.
You might find it valuable to try building CM12 for your device. If you can do that successfully, then you can start tweaking with the kernel config that CM provides to suit your needs. Building CM is also very well documented, and once you've done that, it's more clear how you'd go about trying to build AOSP, and you can use the stuff that CM has done to help you port to AOSP if you want.
Here's Google's information on building straight AOSP:
https://source.android.com/source/building-devices.html
Here are CyanogenMod's guides on building for m7 and tweaking the kernel config:
http://wiki.cyanogenmod.org/w/Build_for_m7
http://wiki.cyanogenmod.org/w/Doc:_integrated_kernel_building
Here is an XDA Developer guide to porting a device from one AOSP-based ROM to another:
http://xda-university.com/as-a-developer/porting-aosp-roms-using-source-code
Thanks for the info, that's what I was afraid of. I was wanting to build something like the Google play edition, but with all the latest security updates.