Kernel developers - are they nuts? - Optimus One, P500, V General

Hi!
I just want to vent my anger
Has anybody noticed that there are a minimum of four "parties" that work on an android kernel tree?
First there is the android open source project.
Then there is the CodeArora project.
There is also a kernel tree at Cyanogenmod.
And last but not least we have the "manufacturer" kernel tree.
AOSP has got a common tree and an individual tree for each architecture- just like Cyanogenmod.
CodeAurora has got multiple(!) trees for a single architecture.
The manufacturer seems to use some of CodeAurora's trees in the majority of cases.
Ah- I forgot the "original" linux kernel tree
This way we never get the most efficient and most stable kernel.
Just my two cents

you're right, but not only the kernel is used. LG takes code from codeaurora project - have seen this in code from the frameworks base tree^^
but on the other side: better they use community code as own code that didn't works perfect

WTF? LG really takes his sources from CodeAurora?!?!?

Well since code aurora is dedicated to qualcomm SoCs if i were a kernel developer i wud start with that tree..one question though does codeaurora contain gb kernel (.35) source for our msm7227 ??? u guys checked it out ???even if they theres a lot of other hardware that are going to need proprietary drivers i guess... THird world peripherals make porting tougher.. its just my take correct me if i m wrong

sarfaraz1989 said:
Well since code aurora is dedicated to qualcomm SoCs if i were a kernel developer i wud start with that tree..one question though does codeaurora contain gb kernel (.35) source for our msm7227 ??? u guys checked it out ???even if they theres a lot of other hardware that are going to need proprietary drivers i guess... THird world peripherals make porting tougher.. its just my take correct me if i m wrong
Click to expand...
Click to collapse
my kernel patches are taken from the codeaurora .35 source, but i can't adopt the complete kernel. there is a "must understand" and "must have many time" to do that

andy572 said:
my kernel patches are taken from the codeaurora .35 source, but i can't adopt the complete kernel. there is a "must understand" and "must have many time" to do that
Click to expand...
Click to collapse
That is exactly the problem!
I cannot really judge which patch from which tree is good- because I have not the time to read through Qualcomm's manuals (if they are public at all) and the kernel source.
If they would concentrate on one tree everything would be fine (ok- if you look at the "chaos commits" in the git repositories you become sick )

@caveman u working on a P500 kernel ??? how is porting so friggin easy for HTC devices..Do they have open source driver /generic hardware or what i mean a few of em even got a honeycomb partial port forget 2.3 ....

sarfaraz1989 said:
@caveman u working on a P500 kernel ??? how is porting so friggin easy for HTC devices..Do they have open source driver /generic hardware or what i mean a few of em even got a honeycomb partial port forget 2.3 ....
Click to expand...
Click to collapse
LG have some specific (old) hardware - they are using qualcomm hardware, but it's to old for newer kernel sources. the other problem is low cost hardware like the display - ms6000 is never used today, new devices are using samsung displays.
look at the wlan/smd chip - bcm4325 is never supported, bcm4329 is newer and is in kernel .38 too ... do you know, what i mean?
old hardware drivers are rare in kernels - never used drivers gets removed from tree, so there is no chance to bring it back.

ofcourse that's why it's called EVOLUTION
so it looks like u were right about getting a new phone

ciolnadu said:
ofcourse that's why it's called EVOLUTION
so it looks like u were right about getting a new phone
Click to expand...
Click to collapse
yes, it's marketing strategy and its ok - but why should i buy me a new device, when my is doing a good job?

andy572 said:
but why should i buy me a new device, when my is doing a good job?
Click to expand...
Click to collapse
+1 agreed 100% with andy.

andy572 said:
LG have some specific (old) hardware - they are using qualcomm hardware, but it's to old for newer kernel sources. the other problem is low cost hardware like the display - ms6000 is never used today, new devices are using samsung displays.
look at the wlan/smd chip - bcm4325 is never supported, bcm4329 is newer and is in kernel .38 too ... do you know, what i mean?
old hardware drivers are rare in kernels - never used drivers gets removed from tree, so there is no chance to bring it back.
Click to expand...
Click to collapse
Do you mean the drivers sources were in the old kernel and are removed in the new one? If so, I mean we have the old sources, why is it so difficult to port them to the new kernel sources? I am not a kernel developer so probably I am missing something

rivett said:
Do you mean the drivers sources were in the old kernel and are removed in the new one? If so, I mean we have the old sources, why is it so difficult to port them to the new kernel sources? I am not a kernel developer so probably I am missing something
Click to expand...
Click to collapse
code isn't moved but deleted.

Has anybody found out the CodeAurora git commit on which LG's V10r is based on?

Related

hero 2.1 source code

hi guys, did HTC ever release the source code for the 2.1 update?
No. htc are bell-ends and don't even release driver source code, let alone code for their "superior" gui. Hence why it takes a while to port newer versions of android to the hero. Developers have to implement loads of dirty hacks and backports using kernel binary blobs they manage to extract from the 2.1 upgrade.
TheReverend210 said:
No. htc are bell-ends and don't even release driver source code, let alone code for their "superior" gui. Hence why it takes a while to port newer versions of android to the hero. Developers have to implement loads of dirty hacks and backports using kernel binary blobs they manage to extract from the 2.1 upgrade.
Click to expand...
Click to collapse
well thats just bad news!!
but they did afaik release source code for the kernel for many of their phones didn't they, what i would like to know is what does this mean to developers, what can they do with the kernel source?
The kernel is just a modified linux kernel, which has been open source since the early 90's.
Developers can do quite a bit with the kernel, is is basically the bridge between hardware and software.
However, despite running Debian since Etch was the latest stable release, my knowledge of the linux kernel is limited, so you would have to ask a developer for specifics.
TheReverend210 said:
The kernel is just a modified linux kernel, which has been open source since the early 90's.
Developers can do quite a bit with the kernel, is is basically the bridge between hardware and software.
However, despite running Debian since Etch was the latest stable release, my knowledge of the linux kernel is limited, so you would have to ask a developer for specifics.
Click to expand...
Click to collapse
thanks for your help
info on webkit source please..
i was at HTC's Developer Center and i noticed that HTC released the "webkit source code" for several "Sense UI" models, including the HTC Droid Eris, which very much shares our beloved Hero's specs...
i was wondering is this webkit compatible with our GSM Hero, and why didn't HTC release the webkit source for the GSM version?
the reason i'm asking is because i want to take out libwebcore.so alone and patch it, and replace the one in Hero...

[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 build CM11 for a legacy device?

I have a LG P350 which development has stopped but i want to keep it updated, i have my computer ready for building, also i have kernel sources, Cyanogenmod 11 and 10.1 sources too, (I don't know exactly if 10.1 sources could help) and i know that i need to apply patches to work on Armv6 but i don't know how to apply them to the source code, also i don't know if i would just need the pure source code to build or i need to do more modifications to it and finally, i don't know if the rom would work with 2.36 kernel which it's the most stable one for this device, i'm very new in this but i know that i can keep update my little phone, thank you all in advance for help.
DiegoConD said:
I have a LG P350 which development has stopped but i want to keep it updated, i have my computer ready for building, also i have kernel sources, Cyanogenmod 11 and 10.1 sources too, (I don't know exactly if 10.1 sources could help) and i know that i need to apply patches to work on Armv6 but i don't know how to apply them to the source code, also i don't know if i would just need the pure source code to build or i need to do more modifications to it and finally, i don't know if the rom would work with 2.36 kernel which it's the most stable one for this device, i'm very new in this but i know that i can keep update my little phone, thank you all in advance for help.
Click to expand...
Click to collapse
Hello, looking at your situation here is what I can conclude. First off you will need to change things for building on ARMv6 architecture, check this out for example. But your biggest problem will be that Android 4.0+ uses Linux kernel version 3.0+, and with the 2.36 kernel you have a lot of things will be broken and need fixing. That being said if your up for the challenge for it cause that's what were all about .
shimp208 said:
Hello, looking at your situation here is what I can conclude. First off you will need to change things for building on ARMv6 architecture, check this out for example. But your biggest problem will be that Android 4.0+ uses Linux kernel version 3.0+, and with the 2.36 kernel you have a lot of things will be broken and need fixing. That being said if your up for the challenge for it cause that's what were all about .
Click to expand...
Click to collapse
Well, i got this http://forum.xda-developers.com/showthread.php?t=2144790 that is the most similar phone talking about hardware, it has 3.0 kernel working well so i thought i could port it, i found this http://stackoverflow.com/questions/15961306/porting-kernel-from-another-device so i think i would have less problems due hardware similarities (Look here http://www.gsmarena.com/compare.php3?idPhone1=3516&idPhone2=3735 ) so, if i have cm11 pure sources, i add this kernel sources and some patches i would have it booting? Sorry for this very dumb question but, i didn't get at all about the armv6 part, how to apply patches, which i would need and all that, i really want to learn about this so thank you for this answer and the next ones :good:
DiegoConD said:
Well, i got this http://forum.xda-developers.com/showthread.php?t=2144790 that is the most similar phone talking about hardware, it has 3.0 kernel working well so i thought i could port it, i found this http://stackoverflow.com/questions/15961306/porting-kernel-from-another-device so i think i would have less problems due hardware similarities (Look here http://www.gsmarena.com/compare.php3?idPhone1=3516&idPhone2=3735 ) so, if i have cm11 pure sources, i add this kernel sources and some patches i would have it booting? Sorry for this very dumb question but, i didn't get at all about the armv6 part, how to apply patches, which i would need and all that, i really want to learn about this so thank you for this answer and the next ones :good:
Click to expand...
Click to collapse
The best way to start is use the ARMv6 branch of Cyanogenmod 11, replace the CM 10.1 in the previous linked build guide with cm-11.0 ("repo init -u git://github.com/androidarmv6/android.git -b cm-11.0"), and then to direct the build to use your kernel take a look at this guide on integrated kernel building with Cyanogenmod.

[Q] Build a Custom ROM using only kernel source?

The HTC Desire 310 runs on a MediaTek SoC, and HTC only has the source code for the kernel. Is it possible to build a Custom ROM like CM for the device? And what are the drawbacks of doing this?
Lynuxen said:
The HTC Desire 310 runs on a MediaTek SoC, and HTC only has the source code for the kernel. Is it possible to build a Custom ROM like CM for the device? And what are the drawbacks of doing this?
Click to expand...
Click to collapse
Basically all a ROM development takes is a kernel source ,a device tree(how the source has to build your ROM {resolution,kernel source command lines....etc are set here}) , a vendor tree( usually proprietary shared libraries got from stock ROM ). Once you've got all these all you have to so is type make bacon. But since its mediatek its pretty hard to build anything since mediatek ril/libraries are not open source.
So doing this blindfolded won't work.
Lynuxen said:
So doing this blindfolded won't work.
Click to expand...
Click to collapse
Won't work, unless you set up a device tree for your SoC. MT6589 device tree may work for building only recovery but nothing further.
Yes, as @MasterAwesome said you need actually 3 components: Vendor tree, kernel source and device tree. Making vendor and device tree from scratch is hard.
GeekyDroid said:
Yes, as @MasterAwesome said you need actually 3 components: Vendor tree, kernel source and device tree. Making vendor and device tree from scratch is hard.
Click to expand...
Click to collapse
Hard, but not impossible? I really want to invest my time in something like this. Pretty long shot, will something like a method for reversed engineering the vendor and device tree work?
Lynuxen said:
Hard, but not impossible? I really want to invest my time in something like this. Pretty long shot, will something like a method for reversed engineering the vendor and device tree work?
Click to expand...
Click to collapse
Vendor tree is pretty easy to setup. You'd want to start with the CyanogenMod version which is similar your current android version. If your device has kitkat download cm11 sources. Read their docs about setting up a device tree(its not that hard). Vendor tree is basically just your stock ROM use it as a base to get your libs which are required for your ROM to start(logcats are helpful here). Since you have a similar SoC, you can use my device tree as a reference https://github.com/MasterAwesome/a210_device_tree/tree/master/micromax/a210. Initially just build a kernel and check if it works. And I have guides for kernel and ROM building,you could check it out.
MasterAwesome said:
Vendor tree is pretty easy to setup. You'd want to start with the CyanogenMod version which is similar your current android version. If your device has kitkat download cm11 sources. Read their docs about setting up a device tree(its not that hard). Vendor tree is basically just your stock ROM use it as a base to get your libs which are required for your ROM to start(logcats are helpful here). Since you have a similar SoC, you can use my device tree as a reference https://github.com/MasterAwesome/a210_device_tree/tree/master/micromax/a210. Initially just build a kernel and check if it works. And I have guides for kernel and ROM building,you could check it out.
Click to expand...
Click to collapse
Massive thanks MasterAwesome. :highfive:

Need help to fix front camera & Bluetooth for mediatek cm12.1

Recently i have ported a cm12.1 beta 7 stable v2 rom
Everything is working fine except for front camera & Bluetooth
Plz can anyone know how to fix this?
I have tried many lib files, but non of them r working
Plz help on it to fix this issue
Anyone plz
Your issue is gonna be a kernel issue and without the source there is nothing you can do. It is a common issue with devices running that chip set. That's why developers don't touch devices with it.
zelendel said:
Your issue is gonna be a kernel issue and without the source there is nothing you can do. It is a common issue with devices running that chip set. That's why developers don't touch devices with it.
Click to expand...
Click to collapse
My phone is Symphony h150. Its mediatek mt6582 chipset.
I don't know about any source file. But i think not.
So ur telling me that there's no way
rabin69x said:
My phone is Symphony h150. Its mediatek mt6582 chipset.
I don't know about any source file. But i think not.
So ur telling me that there's no way
Click to expand...
Click to collapse
Yes I'm saying that without a proper kernel then there will be things that just can't be fixed. Normally things like the camera and wifi radios. You might be able to hack your way through it but it will take weeks of searching through the code.
The kernel source code is the base code that is required by law to be published for any device that runs a Linux kernel (any android device) the issue with that chip set is they are based in China and dont respect copyright laws or the GPL.
rabin69x said:
My phone is Symphony h150. Its mediatek mt6582 chipset.
I don't know about any source file. But i think not.
So ur telling me that there's no way
Click to expand...
Click to collapse
If it's still actual for you (2 years, but still...), mediatek has laid off some kernel and AOSP sources for mt65xx series. Also check out this repo: github.com /bq/aquaris-E5, it has some code for your chip and other Mediatek stuff.
Also you have few other options:
Build your ROM around existing (official) kernel, adding more drivers as .ko's. I've had certain success adding some USB drivers like that.
Use some .so's from your original ROM. Sometimes manufacturers don't provide sources for libcamera.so/libcamera_client.so (camera), libhardware.so/libhardware_legacy.so (wifi and some minor stuff, like vibromotor)

Categories

Resources