[Q] Kernels and Android Versions - Android Q&A, Help & Troubleshooting

I'm not understanding how kernels and ROMs connect. Can someone give me some extra insight?
[Hardware] <-- Unique to every phone
--
[Kernel] <--- Tells the OS how to talk to the hardware
--
[ROM] <--- Slightly confused. Is the OS in the Read only Memory, or has this term changed its "street" meaning?
I understand that most ROMs (e.g. CM7 and CM9) include both the kernel and the ROM, but can you flash these separately too?
I have a 1.5 year old thunderbolt that's rooted, and has CM7 which is based on gingerbread. I believe HTC has also released the kernel as open source, which is probably the reason I have CM7
Anyway, I guess what I'm looking for is an answer/guide/forum that explains why I can't install newer versions of android onto the already working/open source kernel I'm already running. Is it accurate to view the kernel as all the phone's drivers, or just the CPU driver? If that statement is true, why can't I load ICS or Jelly Bean onto my already existing set of drivers?
I'm thinking about starting a Wiki on this if 1) it doesn't already exist, and 2) I can wrap my brain around it enough to share with others!
Thanks to anyone with a response!

shadowrelic said:
I'm not understanding how kernels and ROMs connect. Can someone give me some extra insight?
[Hardware] <-- Unique to every phone
--
[Kernel] <--- Tells the OS how to talk to the hardware
--
[ROM] <--- Slightly confused. Is the OS in the Read only Memory, or has this term changed its "street" meaning?
I understand that most ROMs (e.g. CM7 and CM9) include both the kernel and the ROM, but can you flash these separately too?
I have a 1.5 year old thunderbolt that's rooted, and has CM7 which is based on gingerbread. I believe HTC has also released the kernel as open source, which is probably the reason I have CM7
Anyway, I guess what I'm looking for is an answer/guide/forum that explains why I can't install newer versions of android onto the already working/open source kernel I'm already running. Is it accurate to view the kernel as all the phone's drivers, or just the CPU driver? If that statement is true, why can't I load ICS or Jelly Bean onto my already existing set of drivers?
I'm thinking about starting a Wiki on this if 1) it doesn't already exist, and 2) I can wrap my brain around it enough to share with others!
Thanks to anyone with a response!
Click to expand...
Click to collapse
You are correct about the ROM, but ROMs also include the kernel (if it didn't, or no kernel was flashed separately, the device would not boot). Yes, other kernels can be flashed on your existing ROM, but it's not necessarily going to be compatible.
Sort of, but there's a lot more than that. See here and here. Later versions of Android will require newer drivers,etc. which the existing kernel won't provide (they'll be outdated). Back porting and additional coding is theoretically possible, but insanely difficult (many times). Even after this some things may still not work.

Thanks for the insight, I was able to get a lot deeper into this with those links. For anyone else wandering down a similar path, you might as well stop now! Here are a few links:
http://forum.xda-developers.com/showthread.php?t=1039217&page=2#17
http://www.cs.uwc.ac.za/~mmotlhabi/avmk.pdf
http://www.iteachandroid.com/2012/01/what-is-firmware-rom-and-firmware.html
So, if anyone else is still listening, I do have two more questions:
Do any phones have truly open source drivers? (a.k.a. higher probability of allowing old hardware to work with new android OS)
Is there any way to determine which phones will be supported by the custom-ROM community early on? I know the Nexus line doesn't have vendor modified code, is that the direction which would have the highest probability to stay at top of the Custom ROM curve without upgrading devices every year?
Thanks again for any insight! I hope I'm posting this in a Newb-Friendly forum!

shadowrelic said:
Thanks for the insight, I was able to get a lot deeper into this with those links. For anyone else wandering down a similar path, you might as well stop now! Here are a few links:
http://forum.xda-developers.com/showthread.php?t=1039217&page=2#17
http://www.cs.uwc.ac.za/~mmotlhabi/avmk.pdf
http://www.iteachandroid.com/2012/01/what-is-firmware-rom-and-firmware.html
So, if anyone else is still listening, I do have two more questions:
Do any phones have truly open source drivers? (a.k.a. higher probability of allowing old hardware to work with new android OS)
Is there any way to determine which phones will be supported by the custom-ROM community early on? I know the Nexus line doesn't have vendor modified code, is that the direction which would have the highest probability to stay at top of the Custom ROM curve without upgrading devices every year?
Thanks again for any insight! I hope I'm posting this in a Newb-Friendly forum!
Click to expand...
Click to collapse
For both your questions, the Nexus-line devices would be the way to go. They usually have everything working on new Android versions the soonest, and Google always releases their code, etc.

Hi
i can use linux kernel (zimage) to update android kernel if yes ,how ?
thnx

Related

[Q] AOSP or true custom ROM

I've been following the development of so-called ROMs for the Vibrant (and other SGS devices), but I have yet to see a single AOSP ROM. Even when Samsung released the original kernel sources for 2.1, there were no AOSP 2.1 ROMs. Why not? Is it because they don't know which BLOBs to pull for insertion or the proper vendor overlays?
Some developers have done great work with SGS kernels (especially supercurio and his Voodoo kernels ... eugene373's tend to always wipe the internal SD card unnecessarily ...). But, a kernel does not a ROM make ... therefore I ask, what is truly missing to build an AOSP ROM. I've gone through the sources, but I don't follow makefiles too well.
I know we have another month or so before Samsung is obligated to release their 2.2 kernel sources, but that should have no impact on 2.1 AOSP ROMs. Therefore, I ask "what is the hold up?" What is missing, and what might I contribute ...
Need 2.2 source code...
2.1 is a dead horse--why bother when 2.2/2.3 are out?
The reason to bother is to at least get AOSP running. Once its on 2.1, it'll be easier to get 2.2 AOSP running on it. But claiming 2.1 is a "dead horse" is the wrong path ... the real question still stands: after 9 months on the market their still are no AOSP ROMs.
MIUI
Now that vibrant 2.2 source is released ... we finally have a REAL AOSP port and my all time favorite from my old HD2 the MIUI.... so keep your heads up and wait for it to get finished.
Get a custom rom. There are so many good devs doing them don't waste your time on AOSP....... until they release the actual source code...... on April 22
sarim.ali said:
Now that vibrant 2.2 source is released ... we finally have a REAL AOSP port and my all time favorite from my old HD2 the MIUI.... so keep your heads up and wait for it to get finished.
Click to expand...
Click to collapse
Except, the 2.2 source for the Vibrant has not been released. The SGH-T959D that shows Froyo sources on Samsung's site is for the Canadian Fascinate, not the US T-Mobile Vibrant. Samsung has yet to release the 2.2 sources.
oka1 said:
Get a custom rom. There are so many good devs doing them don't waste your time on AOSP....... until they release the actual source code...... on April 22
Click to expand...
Click to collapse
Except the so-called "custom ROMs" are just modifications on the stock theme, a replacement kernel and a change of some of the supplied applications.
There is nothing close to a full "custom ROM" such as CyanogenMod or MIUI because we don't have Samsung's sources. What is passing for a "custom ROM" for the Vibrant are just repackaged files. It is akin to the "ROM cooking" that took place for the WinMo phones, not a truly ground-up build from source that is possible with Android.
EDT/Devs4Android has the MIUI build. From Source.
TW has a 2.2.1 in testing.
EDT has a 2.2.1 Beta released.
TW has a 2.3 AOSP in testing. From Source.
EDT has 2.2 AOSP in testing. From Source.
What you want is out there for you.
Watch the forums and reply when a call for Alpha testers is posted.
Hopefully it won't be long before you see a full TW/EDT/Devs4Android collaboration!
I think what the original poster is trying to ask (and I have the same question) is why were there never any real 2.1 AOSP, cyanogen5 for the vibrant. The source for 2.1 has been around for many months. Were some other proprietary bits missing, was the released source code such a mess that it was unbuildable, something else? With those questions in mind, why will things be any different when the 2.2 source comes out?
mattb3 said:
I think what the original poster is trying to ask (and I have the same question) is why were there never any real 2.1 AOSP, cyanogen5 for the vibrant. The source for 2.1 has been around for many months. Were some other proprietary bits missing, was the released source code such a mess that it was unbuildable, something else? With those questions in mind, why will things be any different when the 2.2 source comes out?
Click to expand...
Click to collapse
Yes, this is more towards what I was getting at. We do not have Samsung's kernel sources for 2.2. And, we do not have a Samsung provided vendor overlay.
When we receive these two pieces, then a true AOSP build will be possible. However, we do have the 2.1 kernel sources, so why wasn't a true AOSP build possible then? What was missing, and can we actually expect Samsung to release the overlay that's needed?
Actually, that's true. I know it was old but why didn't anyone build a 2.1 cyanogen or aosp rom? (Not to say its easy.)
Sent from my SGH-T959 using XDA App
A noob question, kindly can someone explain what is the vendor overlay stuff?
Many thanks!
Where have you been?
rpcameron said:
I've been following the development of so-called ROMs for the Vibrant (and other SGS devices), but I have yet to see a single AOSP ROM. Even when Samsung released the original kernel sources for 2.1, there were no AOSP 2.1 ROMs. Why not? Is it because they don't know which BLOBs to pull for insertion or the proper vendor overlays?
Some developers have done great work with SGS kernels (especially supercurio and his Voodoo kernels ... eugene373's tend to always wipe the internal SD card unnecessarily ...). But, a kernel does not a ROM make ... therefore I ask, what is truly missing to build an AOSP ROM. I've gone through the sources, but I don't follow makefiles too well.
I know we have another month or so before Samsung is obligated to release their 2.2 kernel sources, but that should have no impact on 2.1 AOSP ROMs. Therefore, I ask "what is the hold up?" What is missing, and what might I contribute ...
Click to expand...
Click to collapse
Dude theres been a true AOSP ROM for the Vibrant since like december and thats CM 6.1
Im running it now
rpcameron said:
I've been following the development of so-called ROMs for the Vibrant (and other SGS devices), but I have yet to see a single AOSP ROM. Even when Samsung released the original kernel sources for 2.1, there were no AOSP 2.1 ROMs. Why not? Is it because they don't know which BLOBs to pull for insertion or the proper vendor overlays?
Some developers have done great work with SGS kernels (especially supercurio and his Voodoo kernels ... eugene373's tend to always wipe the internal SD card unnecessarily ...). But, a kernel does not a ROM make ... therefore I ask, what is truly missing to build an AOSP ROM. I've gone through the sources, but I don't follow makefiles too well.
I know we have another month or so before Samsung is obligated to release their 2.2 kernel sources, but that should have no impact on 2.1 AOSP ROMs. Therefore, I ask "what is the hold up?" What is missing, and what might I contribute ...
Click to expand...
Click to collapse
For probably the same reason that many phones with non AOSP firmware running 1.5/1.6 did not bother with AOSP 1.5/1.6 when they were released around the time 2.1 source hit. Why bother developing at all for what is essentially an "out of date" OS.
The only people it seems who actively continue to develop for existing (as opposed to new) firmware are manufacturers and carriers. This stupidity should be left to the manufacturers who still do this.
One of the larger snags way back then (sits in his rocking chair on the porch) was a lack of understanding of the phones proprietary aspects and how to work around them. But we have a fairly clear understanding of Samsung's boot process now, and RFS can now easily be turned into a distant memory.
I would wager a guess that the apathy towards 2.1 will not repeat itself once we have 2.2 source widely available and the low level similarities between 2.2 and 2.3 should have Gingerbread being more than the experiment it currently is. It's been barely more than a week since Eugene's little present manifested and there are already proper and stable kernels available.
Keep in mind that the devs we do have, have done a phenomenal job of cleaning up, speeding up, and drastically enhancing our existing 2.2 release. And perhaps to the point where many will not really care, though I know many would still like to see CyanogenMod6/7 properly on this phone.
Master&Slave™ said:
Dude theres been a true AOSP ROM for the Vibrant since like december and thats CM 6.1
Im running it now
Click to expand...
Click to collapse
Um, that's not quite true. The CyanogenMod.com website lists 0 files available for download for either experimental or stable files. The CM6.1 you must be running is not a true CM build.
Also, CM is not AOSP, but rather AOSP with modifications.
phrozenflame said:
A noob question, kindly can someone explain what is the vendor overlay stuff?
Many thanks!
Click to expand...
Click to collapse
The vendor overlay tells the AOSP build system which proprietary files are needed from the device that are not available in source form. This includes things like GPS and video drivers, baseband firmware for wireless radios, &c.
hi everybody !
a month age i decided to compile a new rom for my Galaxy S absolutely from AOSP source ( branch 2.2.1_r1 ) after some compile-time problem and many painful steps to resolve ,eventually the rom successfully built and can boot it up flawlessly on emulator.
i create a nandroid backup of current rom and installed the compiled one. but i am facing new problem :
1- the phone successfully boots but after short while screen began
flicking several time and the phone go in deep sleep and never wakeup
( power button or menu button does not do any thing )
2- touch screen works only for some second that I can unlock the
phone
3- there is no network available
4- I have downloaded samsung opesource package for GT-I9000. it
contains a folder named 'platform' but when i merge these files to
AOSP , the compile process stops and fails again. if there any one can
help me which files from samsung source should i merge and how ? if
you now the answer and dont have spare time then some internet link or
online document is really useful .i have no problem studding and
reading and searching . reaching to target is my only hope .
I am really disappointed why there is not a good and complete step2step tutorial to compile an AOSP rom for galaxy s (GT-I9000) !!
such docs is available for phones like dell streak , desire , dream , magic , .... . i really want to to active these aspect on XDA forum and with help of all you ( mods and masters ) try to create such tutorial that any one in world can use to refer . i think XDA is the only reference on net to collect and create such help and document. please help me and leave PM or comment to agree ot disagree and from where can i start ?!! thank in advanced .
edit :
there is a google groups post that i send my question in Android-platform . if you prefer please join this group and active that post to ask any question related to 'galaxy s compile from source ' .
post located at http://groups.google.com/group/android-platform/browse_thread/thread/da5d6f18f3bd3c9b

[Q] Linux kernel 3.08 or 3.1 on Android possible?

After seeing that the Galaxy Nexus is so far running kernel 3.0.1, I was wondering if it is possible to update current kernels on existing devices to a 3.x kernel. I have a little experience in at least successfully upgrading Debian to 3.1 kernel, but compiling for android is a bit different it seems.
On my G2x, which is running 2.6.32.45, I attempted to compile a 3.1 kernel, and it refused to boot into CM7. I followed the CM kernel compilation guide, but to no avail. Would this most likely be due just to error on my part during compilation or configuration, or do I need to wait for LG to make their own 3.x kernel based ROM to derive the proper drivers?
Is it even possible at all to "upgrade" to a higher kernel version if the phone manufacturer has not done so themselves already? Thanks for any input!
Yes, you will have to wait until LG releases their version. No, its not possible to upgrade to a higher kernel version if the phone manufacturer has not done so themselves (you could try to compile one based on a higher version but that would have to be from some other manufacturer and most likely it will not work). To answer your title question, yes, it most likely will be done in higher versions of android.
Theonew said:
Yes, you will have to wait until LG releases their version. No, its not possible to upgrade to a higher kernel version if the phone manufacturer has not done so themselves (you could try to compile one based on a higher version but that would have to be from some other manufacturer and most likely it will not work). To answer your title question, yes, it most likely will be done in higher versions of android.
Click to expand...
Click to collapse
Thank you for replying so quickly and concisely!
That is a bit disappointing, but realistic I suppose. In the 3.1 kernel changelog there were a ton of Tegra based changes/fixes, so I figured I'd try it out on the Tegra based G2X. What is it that the newer kernels are missing that severely hinders upgrades on android as oppose to desktop (x86?) platforms?
In more realistic terms, the most likely way of being able to jump up to a higher kernel would be say, using the 3.0.1 kernel from the Galaxy Nexus dump as the source and use a current 2.6.32 config with it? I might try it out if it's a little more likely!
hobbla said:
Thank you for replying so quickly and concisely!
That is a bit disappointing, but realistic I suppose. In the 3.1 kernel changelog there were a ton of Tegra based changes/fixes, so I figured I'd try it out on the Tegra based G2X. What is it that the newer kernels are missing that severely hinders upgrades on android as oppose to desktop (x86?) platforms?
In more realistic terms, the most likely way of being able to jump up to a higher kernel would be say, using the 3.0.1 kernel from the Galaxy Nexus dump as the source and use a current 2.6.32 config with it? I might try it out if it's a little more likely!
Click to expand...
Click to collapse
The newer kernels aren't missing anything. In fact, they have many more features, optimizations, and fixes which do not allow them to work on earlier versions of android.
More likely yes, but still, it most likely will not work (since these earlier version of android won't support all what higher kernels and android versions support).
hobbla said:
After seeing that the Galaxy Nexus is so far running kernel 3.0.1, I was wondering if it is possible to update current kernels on existing devices to a 3.x kernel. I have a little experience in at least successfully upgrading Debian to 3.1 kernel, but compiling for android is a bit different it seems.
On my G2x, which is running 2.6.32.45, I attempted to compile a 3.1 kernel, and it refused to boot into CM7. I followed the CM kernel compilation guide, but to no avail. Would this most likely be due just to error on my part during compilation or configuration, or do I need to wait for LG to make their own 3.x kernel based ROM to derive the proper drivers?
Is it even possible at all to "upgrade" to a higher kernel version if the phone manufacturer has not done so themselves already? Thanks for any input!
Click to expand...
Click to collapse
Just ported this 3.1 kernel last night. I took the Linaro 3.1 Linux kernel, and integrated ashmem, pmem, binder, and lowmemorykiller.
http :// i271.photobucket.com/albums/jj141/landcruiserfjz80/kernel/2011-11-09_09-39-08_429.jpg
forcedinductionz said:
Just ported this 3.1 kernel last night. I took the Linaro 3.1 Linux kernel, and integrated ashmem, pmem, binder, and lowmemorykiller.
Click to expand...
Click to collapse
Care to upload it?
Theonew said:
Care to upload it?
Click to expand...
Click to collapse
It's for an OMAP3 platform. If you are looking to port a Tegra 2 BSP to a 3.1 kernel i'd be willing to help get it going.
forcedinductionz said:
It's for an OMAP3 platform. If you are looking to port a Tegra 2 BSP to a 3.1 kernel i'd be willing to help get it going.
Click to expand...
Click to collapse
That would be great! I've never considered Linaro before. From reading up on it, it seems to be an optimized kernel for ARM (and other mobile CPUs)? You might have to make a tutorial on how to customize your own kernel
hobbla said:
That would be great! I've never considered Linaro before. From reading up on it, it seems to be an optimized kernel for ARM (and other mobile CPUs)? You might have to make a tutorial on how to customize your own kernel
Click to expand...
Click to collapse
I'm about to deliver some Android changes to this tree. If you are serious about supporting Tegra2 please point me to your current kernel's source code. I'll begin porting the BSP and drivers.
https :// github.com/EmbeddedAndroid/linaro-android-3.1
forcedinductionz said:
I'm about to deliver some Android changes to this tree. If you are serious about supporting Tegra2 please point me to your current kernel's source code. I'll begin porting the BSP and drivers.
https :// github.com/EmbeddedAndroid/linaro-android-3.1
Click to expand...
Click to collapse
This looks great! Would you be including the Tegra 2 BSP and drivers into the embedded kernel? I (and any other Tegra device owners) really appreciate the help!
Here's the source for the device I have; LG G2X (P999) with a Tegra 250 (sorry about mediafire, LG doesn't allow hotlinking):
http :// www.mediafire.com/?9zt7suw7nivbr7o
If we wanted this to work on a Cyanogenmod based kernel, I guess you'd have to look at the Cyanogen Git. Here's the the P999 cyanogen git:
https :// github.com/CyanogenMod/android_device_lge_p999
You can look at getting set up with it easily here, I believe:
http :// wiki.cyanogenmod.com/wiki/Building_Kernel_from_source
Thank you for helping! If there's anything else I can help with, or resources you could post that would allow me to help you better that'd be great.
I am pulling down the sources now. It's been a busy week getting ICS up and running but now I have some time to play. I'll keep you posted on my progress.
How it's goin'?
forcedinductionz said:
I am pulling down the sources now. It's been a busy week getting ICS up and running but now I have some time to play. I'll keep you posted on my progress.
Click to expand...
Click to collapse
Sounds great! Again, if there's anything we can assist you with just let us know. Or, outlining the steps you're taking could allow us to help in the future
Sent from my LG-P999 using XDA App
Is everything OK?

[Q] how to port ics (serious learner)

Lemme get some things out of the way.. I am a noob. I have searched. I have read some of the results from the search. I am overwhelmed by the 20+ pages of results (lol). I am not 100% sure this is the correct forum for this (not sure where else would be ).. I believe this is one of those things where I need help based on my situation.. Ok, so here I go.
I wish to start porting ICS to my phone. That's my goal. I have general understanding of how linux works, but I do not know much about the android specifics of how they work, or what needs to be modified for this to work. I do not plan to use the kitchen tool as I wish to learn this the hard way. I believe this will help me become more understanding in what I am doing. However, at this point I don't and that's why I'm here. My phone model is irrelevant almost because its prepaid and usually the communities don't even recognize their existence.. at least that's how I feel about it. But I digress. My phone is the zte warp by boost mobile and I am here to learn hopefully the things that will get me started on porting ICS to this phone. I right now believe that the best thing for me to learn is how the android related files work because as it is, I only looked at guides on how linux works and I understand most of it. I'm not sure that's the best thing that will help me port ics, but I'm certain it is important.
Please help me figure out where I should start in learning how to port ICS to my phone basically.
Thanks XDA
anyone? I am quite serious about wanting to do and go into this but I have yet one thread that anyone's ever replied to.. (or post iirc) which puts a damper on me
Snake X said:
Lemme get some things out of the way.. I am a noob. I have searched. I have read some of the results from the search. I am overwhelmed by the 20+ pages of results (lol). I am not 100% sure this is the correct forum for this (not sure where else would be ).. I believe this is one of those things where I need help based on my situation.. Ok, so here I go.
I wish to start porting ICS to my phone. That's my goal. I have general understanding of how linux works, but I do not know much about the android specifics of how they work, or what needs to be modified for this to work. I do not plan to use the kitchen tool as I wish to learn this the hard way. I believe this will help me become more understanding in what I am doing. However, at this point I don't and that's why I'm here. My phone model is irrelevant almost because its prepaid and usually the communities don't even recognize their existence.. at least that's how I feel about it. But I digress. My phone is the zte warp by boost mobile and I am here to learn hopefully the things that will get me started on porting ICS to this phone. I right now believe that the best thing for me to learn is how the android related files work because as it is, I only looked at guides on how linux works and I understand most of it. I'm not sure that's the best thing that will help me port ics, but I'm certain it is important.
Please help me figure out where I should start in learning how to port ICS to my phone basically.
Thanks XDA
Click to expand...
Click to collapse
From my limited knowledge, I think it is a huge task undertaking, you can download Android source code from Google, the hard part will be the device driver development and porting for Linux kernel (and maybe portion of Android). If you are lucky, you can use the existing phone bootloader (or you have to port one). Understanding the inner of the phone (different chip set may need different device driver) will be another challenging task.
by the device driver development, you mean all the libs that go into the phone? Couldn't I just copy/paste the pre-existing libs that are already made for the phone? Also the phone im working with is a bit strange really.. noone has been able to compile the kernel from its source and get it to boot yet.. when it was compiled the zImage was different than that of the stock one.
And yeah, I have downloaded the aosp source.. I just need to know where to start at and the processes involved really
Snake X said:
by the device driver development, you mean all the libs that go into the phone? Couldn't I just copy/paste the pre-existing libs that are already made for the phone? Also the phone im working with is a bit strange really.. noone has been able to compile the kernel from its source and get it to boot yet.. when it was compiled the zImage was different than that of the stock one.
And yeah, I have downloaded the aosp source.. I just need to know where to start at and the processes involved really
Click to expand...
Click to collapse
To answer you question no the drivers and lib files are different for aosp based rooms then they are for the stock OEM from. The first step will be to get a working kernel. Without anything you do will be pointless
I'm somewhat interested in the same thing, and from what I've gathered, you'll need to do these things to begin ROM development:
1. Read every page on the AOSP site and grab a copy of the AOSP source. It probably wouldn't hurt to read the regular Android developer wiki as well.
2. Learn about Linux driver development:
http://lwn.net/Kernel/LDD3/ (this is apparently considered THE BOOK on Linux driver development)
http://www.freesoftwaremagazine.com/articles/drivers_linux
3. Learn pretty much every detail about your phone and its hardware, especially when it comes to how ROMs are installed on it. For example, my phone (the Droid X2) has a locked bootloader, so 2nd init has to be used to boot new ROMs, and this makes it so that we cannot update the kernel.
You can usually find this sort of information on your phone manufacturer's website. Sometimes they even post the source code to their phone's drivers, which is helpful.
4. Look at other ROMs (preferably for your phone) and see how they work. The source code is freely available for most popular ROMs.
For example: CyanogenMod keeps their source code in a public git repository: https://github.com/cyanogenmod
5. Get to work on porting!
I would highly recommend starting with something smaller, however, just as a start. One good jumping-off point is probably this guide: http://forum.xda-developers.com/showthread.php?t=1272270
If any part of this was wrong, or if I left something out, somebody feel free to correct me, I'm still a noob.
Thank you so much for your direction, however,, android kitchen.. im not sure about that because isnt that only ment for htc devices? My phone is made by zte
what device do you even have?
if it's stuck officialy on 2.1 or 2.2 there's no hope that if you even port it that it'll work
its the zte warp from boost mobile (prepaid). Btw if I compile an aosp ics launcher and put that on my phone whats the chances of that working?
edit: it uses 2.3.5
Well Sebastian responded on android forums, apparently zte is very bad at version control with their kernel sources. So when they complete one project, they use the same source for the next project, and what they release could be for anything. Apparently the blade source had the same issues, it took him a while to get them to correct the source
Sent from my N860 using Tapatalk
Yeah I noticed that there were ppl saying there were things similar but I'm not sure what will work or what won't.. guess its time to start a petition on zte to release the source code lol
edit: seems like zte's bein a bad company and violated the GNU GPL license for not providing a complete source code.. I compiled an email and sent it to someone who can proof read it and send it to the right person for this kinda thing.. danggit zte

[Q] General question regarding kernels and android releases

Hi! This is maybe a general dev question, but I'd like to get an answer anyway:
what is exactly the link between an Android release and the kernel it works upon?
I noticed most recent releases use 3.0+ Linux kernels, and others (like the DSCs) use the Phoenix Universal Kernel, which is based on a 2.6.35... So I wonder: is ICS/JB in any way dependant on "newer" kernels?
I understand the answer must be closer to "no", since the pre-alpha build also uses a fork of the PUK, but the fact that it uses a *different version* makes me wonder how much work does it take to get a kernel ready for a newer release, and most importantly... why?
Thanks a lot! Total n00b here, but eager to know more.
Newer kernel not required at least for ICS.
All GB/ICS kernels are based on this kernel (and it's a Dell's lie about using same sources for 407 release as SoD was fixed there without switching timer source):
http://opensource.dell.com/releases/streak/4.05_and_4.07/
kibuuka successfully applied kgsl/genlock patch and it's the only thing actually needed for ICS.
List (a bit old) of changes in Phoenix kernel and later derivatives:
http://forum.xda-developers.com/showpost.php?p=25291276&postcount=3812

[noob questions] ROM/Kernel - building/porting

I’ll start by admiting that, in the arts of cooking/building/porting android innards, I’m closer to being a complete noob than na intermediate user.
I own a Newman K1S, JB 4.2.2, MT6592, 2Gb/16Gb, 720p, and, sadly for me, it looks like the manufacturer (Newman Mobile, or Newsmy, who knows) pretty much disavows any knowledge of this model ever being built or sold. No reference to it, no community, no android updates or ROM releases.
Taking into account some MediaTek source codes for KitKat were made available earlier this year (even if unofficially), I was wondering:
So, question number 1 – Is it possible to build android 4.4 for my device straight from said sources? Or are they unreliable and it would be best not to attempt it?
And question number 2 – Being at the noob level, should I stay away from such a task? And, in this case, would I be better off porting a 4.4 ROM from a similar spec’ed device?
Also, while browsing needrom, I noticed that a 4.4 “official” ROM was posted for my device. However, having flashed it, I found that it produces no sounds from the external speaker (although with headphones it works fine). Same thing was experienced by other users, and there is no fix so far.
Which takes me to question number 3 – What may I try, in order to fix an issue like this? Does KK use the same sound drivers as JB, and maybe it’s only a matter of replacing them? (if so, I believe this is within my grasp, even if I must unpack the IMG files to reach the drivers)
Lastly, Newman K1S has a severe overheating problem when pushed, which I believe would be easily solved by underclocking it to 1.3 or 1.5, or maybe implementing an optimized kernel.
Final question – How do I manage to underclock with my current kernel, or, better yet, how do I port a custom, optimized kernel to my device?
Congratulations to everyone who managed to read this far, and thank you in advance for any help provided. I’ve spent the last few days reading tutorials and guides, only to become even more confused… I did manage to get android kitchen running on my Windows laptop, though!
Links to recent/updated guides that might be useful are appreciated, too.

Categories

Resources