[Q] Building a kernel to a certain version of android - Huawei Ideos X5 U8800

So we have ICS which runs on 3.0.8 and previously ran on 2.6.35, also I've seen a lot of devices running ICS on 2.6.32 kernel. So my questions are:
How to know what changes must be done in kernel to make it compatible with higher versions of android? (for example 4.2.2 with .32 kernel)
How to know whether kernel modules (drivers) are compatible with higher versions of android or not?
Why don't we still have a JB port if it's all is possible?.. Just joking.
Thanks in advance!
P.S.: Excuse me if I name anything wrong or if I'm saying anything wrong -- I'm not a developer, I'm trying to learn.

would like to know that too, dunno why there is just one developer working on wifi drivers for jelly bean huawei x5...

rukadesigns said:
would like to know that too, dunno why there is just one developer working on wifi drivers for jelly bean huawei x5...
Click to expand...
Click to collapse
Because there is an exhaustion of developers for the u8800? I'm going to release something soon as well, been playing with AOSP Gingerbread tree for a few weeks now.
There aren't really _many_ changes required to upgrade the kernel, you most likely just need to apply the upstream kernel patches for it. It will surely cause problems, but most of them shouldn't be too hard to fix if you have some programming knowledge. I might look at this later myself.
I think we dont have a proper port of JB just because there is a lack of real developers. People seem to be trying to port roms from Honor/Desire, but they will never be as functional as roms built from the real device tree. I think Blefish is the only one working on a real rom.

Related

[Q] what is Kernel

Gents,
I need your help about "kernel", as I know when installing Android I need the folder named Android and the data.img.
But the kernel what is that?
Thanks for reading and more for helping.
The kernel is the core of the Android OS. Windows too runs on a kernel. Every build already includes one, and usually the most up-to-date or stable version, so you shouldn't have to worry about it, unless you want to update your kernel some time in the future.
I've been running Android for several months now and I've not updated the kernel once.
Still there is somthing to say
First I want to thank you for giving me some of your time.
The answer is clear, but why there is update always (now is 8.6)?
and what the kernel is including, is it the same of Android folder?
I hope I will find some more time.
Check out here for a bunch of explanations of terms that are commonly used around here
http://forum.xda-developers.com/showthread.php?t=852660&highlight=glossary
The reason that the kernels are updated alot is that the people who build the kernels find flaws in them through testing them, and through the feedback they recieve here on XDA.
Then they work to try and find ways to fix those flaws. Sometimes in fixing one flaw, a new one emerges. Generally it is a good idea to use the latest version of whatever kernel came with the build.

[Q] Why do a BootLoader Unlock is needed?

I read couples of threads and realize that if a CM mod is wanted, MS2 must have its bootloader unlock.
Since most work is done in /system partition, why do a bootloader modify is needed?
According to the update.zip, we can modify /system partition already, so why do we need bootloader unlock?
CyanogenMod needs its own kernel.
I guess that, since cyanogen is based on gingerbread now,
it runs with a more up-to-date kernel than the milestone's.
The locked bootloader and the efuse thing prevents updating the kernel.
It's possible that someone, using Cyanogen source, makes a backport running on our kernel, but I think it's a huge work...
However, the clever guys from freemymoto.com have created a hack that is capable of launching an other kernel after the legit one starts.
If salvation comes (Cyanogen alleluia ), it will certainly come from this project.
Actually, the hack works on DroidX, and Droid2. So it is 99.9% sure that with some work, it may run on milestone 2 as well.
So, to get Cyanogen work on MM2, we need :
- A very good developer, with android (of course !), linux kernel and kinit knowledge, able to port freemymoto's hack, and Cyanogen
- Hardware drivers for the Milestone (bluetooth, lan, gsm, 3g, touchscreen...)
If we find the golden dev, I personnally think that CyanogenMod could be out for milestone2 sooner than what most people think...
momus87 said:
CyanogenMod needs its own kernel.
I guess that, since cyanogen is based on gingerbread now,
it runs with a more up-to-date kernel than the milestone's.
The locked bootloader and the efuse thing prevents updating the kernel.
It's possible that someone, using Cyanogen source, makes a backport running on our kernel, but I think it's a huge work...
However, the clever guys from freemymoto.com have created a hack that is capable of launching an other kernel after the legit one starts.
If salvation comes (Cyanogen alleluia ), it will certainly come from this project.
Actually, the hack works on DroidX, and Droid2. So it is 99.9% sure that with some work, it may run on milestone 2 as well.
So, to get Cyanogen work on MM2, we need :
- A very good developer, with android (of course !), linux kernel and kinit knowledge, able to port freemymoto's hack, and Cyanogen
- Hardware drivers for the Milestone (bluetooth, lan, gsm, 3g, touchscreen...)
If we find the golden dev, I personnally think that CyanogenMod could be out for milestone2 sooner than what most people think...
Click to expand...
Click to collapse
I LOVE YOUR REPLY!
Well, this is the first reply to me in this forum.Ya...nobody reply me before...so bad..
Milestone has also a locked bootloader, but a CM7 port running on it. That is what makes me want to do something on my MS2.
I'm a C++ programmer, so I learn everything about this these days.
Thank you, really.
And I think I'd read all the freemymoto.com site RIGHT NOW~~
Well, if you think you can be the golden dev, you just made my day...
If you try this, I (and almost everybody here) will at least help providing the hardware drivers.
But the first step is to make the hack work on MM2...
Edit : For the milestone1, the bootloader security has been compromised using a leaked unofficial rom build,
which lead to custom kernels, without needing a hack like freemymoto's.
In fact, freemymoto's hack is based on a milestone1 project, which was abandoned after the rom leak.
It circumvents both bootloader lock and efuse by starting a second kernel after the first one.
(What I couldn't figure out is what happens of the first one... Still in memory? Still using some ressources?)
I read the site yesterday, however sadly, I don't have any experience about writing drivers of cell phone.
So I just sent a e-mail to them to ask if I can provide any help and what to do.
Hope I can help. I'll try my best.
For about the second kernel...I guess I have to read source to know what happened to them...
Anyway, thank you for your reply. At least I get a way to help^^
I didn't mean that we will have to write the drivers from scratch. But we will have to find them.
Hopefully, most of them are open-source. Wifi/bluetooth per example, is handled by a wl1271 chip. Drivers are available on texas instruments website...
You should get in touch with Pizzaroll, who is also trying to make the hack work on milestone2
It's really good news that there maybe a hack bootloader, i like my mm2 but it is really a pity that no much ROM.
liuyanghejerry...
Polish team try to broke bootloader with Boinc (many computers calculate 1 thing), maybe You and Yours friends can join to project?
In China lives maaaaany peoples, this can be speed up calculations
I don't think that distributed computing is the solution...
Even if the boinc project lets us find the signing key, we will have to do the same for the efuse thing.
The freemymoto's hack is a solution to circumvent both of these protections, and doesn't need any computing.
We only need someone to modify some parts of the code to make it work on Milestone2.
Tomszyn said:
liuyanghejerry...
Polish team try to broke bootloader with Boinc (many computers calculate 1 thing), maybe You and Yours friends can join to project?
In China lives maaaaany peoples, this can be speed up calculations
Click to expand...
Click to collapse
Currently I'm studying kexec method now, thanks to PizzaRoll and momus87's help^^
Well, in fact, I like to program and burn my brain. However, the Boinc method seems not really interesting...
Well Boinc is the best solution if you want to use bruteforce.
But even with a whole army of core i7, bruteforcing a 1024bits key is unthinkable actually...
Is this eFuse thing harder to break than the one used in iPhone? If it is then Mr Jobs should adopt a similar approach.

Linux announces new kernel version 3.0

The father of Linux (Linus Torvalds) announced today an update to the linux kernel to a new version 3.0 and Android OS is based on the linux kernel.
Once this new kernel will be released i feel a lot of hot fresh and interesting development going on, dont you think ??
p.s.: for those that dont know what a kernel is .. the linux kernel is the core which is used on ALL LINUX based distributions.
"So what are the big changes?
NOTHING. Absolutely nothing. Sure, we have the usual two thirds driver
changes, and a lot of random fixes, but the point is that 3.0 is
*just* about renumbering, we are very much *not* doing a KDE-4 or a
Gnome-3 here. No breakage, no special scary new features, nothing at
all like that. We've been doing time-based releases for many years
now, this is in no way about features. If you want an excuse for the
renumbering, you really should look at the time-based one ("20 years")
instead."
Linus
Click to expand...
Click to collapse
So, nothing special as you see
oops! current stable kernel is 2.6.39.2

[Q] What does it take to build AOSP 4.x for the A7+?

I would really like to get the OS updated on this device, I'm sure I'm not alone.
I've been following many of the guides on this forum, or youtube videos, but with no luck.
Is there anyone who can help me to figure this out better?
Building AOSP or Porting Cyanogen mod would be ideal, is this possible?
I have had the original a7 since it was released and the major hangup has always been, the kernel. The kernel source for 2.2 froyo has been released, but, no one has made or ported a kernel past that. Dexter the great did a lot with only that kernel, CM7 and Honeycomb, but limited because the old kernel. We need a 3.0 kernel for CM9/10 to really move. There are similar tegra devices that have Honeycomb and beyond, but swapping kernels has been reported to only partially work. I hope that it will happen one day, this baby is powerful.
So beyond my ranting we need, device tree, drivers, and a kernel.
I have been trying myself to push all sorts of Linux for Tegra (ubuntu, gentoo, and geexbox) as well as trying to figure out how dexter had started running ICS on his before he dropped the project.
What is known: this is an abnormal Harmony tegra 2.
What you need to know for APX: A7+ uses hsmmc interface, so all nvflash designed for nand or emmc will inherently fail (or at least has been the case thus far)
I dont know how exactly this is, but due to its odd nature most prepackaged or script made bootloaders will fail. I'd love to see ICS or JB on this device for sure, but making an APX backup would need a new bootloader, or at least a new boot.img for sure.
I'm a tinkerer, with very little programming skill. I can google as good as anybody though lol.
Somebody needs to design an uber cross-compiler that can just transform the kernel to 3+ so we can stop wishing for new firmware and just have it lol

[Q] Development Guidance

I have been active in the Linux community for years. Yet, I am completely lost with Android. Let me offer some assumptions. Some will be true and some are probably false. Would some kind person please point out my errors?
Versions of the android o/s include a kernel and the base applications
Applications get their hooks from the kernel which is why the ICS browser probably won't run on Froyo.
Applications are generally hardware agnostic
Therefore, it is the kernel that determines the version of android.
Therefore, if I successfully compile a new kernel to the version that ICS is using, I can migrate the ICS base apps and I am running ICS.
No need for diplomacy. Moreover, this is an intellectual exercise - my phone runs just fine with Froyo
Take a look:
http://www.slideshare.net/gxben/as-2013-jelly-bean-device-porting-walkthrough
nagato.fm said:
Take a look:
http://www.slideshare.net/gxben/as-2013-jelly-bean-device-porting-walkthrough
Click to expand...
Click to collapse
Thanks. Good stuff. I recall Zores from Mplayer which I still use.

Categories

Resources