Kernel Source Code Question - Android Q&A, Help & Troubleshooting

Hi! I have the BLU Energy X 2, and I am looking into building CyanogenMod from source. I have asked BLU for the source code to the kernel, but they didn't have it yet. Is this because there is some sort of grace period (maybe 1 year?) before they can release it? The phone was released in February 2016. Also, would I be able to use the Energy X kernel for my Energy X 2 CyanogenMod build? They have the same chipset, same kernel version, practically everything except the camera. If not, where can I get a prebuilt kernel that will work?
Thanks!

Well, you could always try.. However camera would definitely not work... Has nothing changed? GPU? Android kernel version??

Yes, nothing has changed.

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?

ICS Thoughts

Just rambling here. In order to get ICS ported to the Venue, we need compatible kernel drivers. It appears, from what I can find on the 'net, that Qualcomm isn't releasing drivers for the QSD8250 for ICS. Looking around XDA, I see the HTC Desire (GSM), also based on the '8250, has a working ICS beta found here: http://forum.xda-developers.com/showthread.php?t=1403113. This appears to use a Tiamat kernel, http://tiamat-dev.com/tiamat_bravo/. Using the AOSP 4.0.x repository, the Dell info from http://opensource.dell.com/releases/venue/v4.06/ and the Tiamat kernel, is it possible to pull together an ICS port? I wish I had more experience with this type of stuff...
Dell used the CAF 8260 GB sources when building 4xx roms, they simply backported whatever they need to from their already working 3xx codebase for whatever was needed (i assume)
CAF itself dropped support for 8x50 in their GB codebases, but the 8x60 is close enough it didnt really matter ultimately.
Much of the drivers arnt even in the kernel, they're in the android userland which is Apache and not gpl, hence the driver issue.
Which ever method you (presumedly do) to get the kernel booting under ICS doesnt really matter, but the more difficult/time-consuming methods will ultimately be more useful for porting to newer kern versions.
Don't forget the Nexus One and, IIRC, the HD2 also use the 8250
I would think this would help too: http://www.xda-developers.com/android/qualcomm-releases-adreno-2xx-gpu-binaries-for-ics/
Too bad the development work is well outside my capabilities. Maybe our Korean friends are working on it though.
Guys.!!! Dell venue n dell streak 5got same rom n environment hardware too just diffrence is venue is Hdpi n dell streak is Mdpi .so why do nt we join hands n make ics work for dell or on other hand u can take advantage of our dell streak 5 formus there r few good roms like longhorn 2.8 with Hdpi support for dell Venue and Dcs 1.1.which supports both hdpi n mdpi just need to edit build.prop n may be kernel....whish u all safe cooking ...n Friends in need friend indeed ..
Max
Sent from my Dell Streak using xda premium
Sent from my Dell Streak using xda premium
Folks, I can see that Qualcomm released Adreno 200 drivers for ICS several months ago (Mar) (https://developer.qualcomm.com/mobi...phics-optimization-adreno/tools-and-resources).
Information in the above page also says that, the drivers has been tested on CAF M8960AAAAANLYA1030. As I noticed, whenever we get the source code from Code Aurora, there is also a kernel directory included. Do you think that we can start from that kernel to port ICS to Venue?
chacona said:
Folks, I can see that Qualcomm released Adreno 200 drivers for ICS several months ago (Mar) (https://developer.qualcomm.com/mobi...phics-optimization-adreno/tools-and-resources).
Information in the above page also says that, the drivers has been tested on CAF M8960AAAAANLYA1030. As I noticed, whenever we get the source code from Code Aurora, there is also a kernel directory included. Do you think that we can start from that kernel to port ICS to Venue?
Click to expand...
Click to collapse
Yes we can,
But I aint that good into dev
This mobile has what it requires to run ICS
The kernel itself ultimately doesnt matter, as long as it has the right code changes merged in.
The current S5 ICS kernel's lineage is:
S5/405 (dell) -> Phoenix kernel/GB (n0p) -> Phoenix/cm7.2 (hPa) ?-> Phoenix/cm9 (hPa) -> Phoenix/AOSP (kibuuka)
Only the final step involved merging in any changes to make it work with ics, ultimately it's based mostly on the phoenix GB kernel which itself is based on the S5's 405 kernel
S5 405 = S5 408 = V 406 = V 408, they're all the same kernel (with ifdefs/configs for the S5/V).
I'd imagine getting a V kernel to boot ICS period is 85% of the work as the S5's froyo/GB kernels can directly boot V froyo/gb roms, and the reverse would likely hold.
The kernel 405/6/7/8 from Dell can be built successfully, however there are known issues such as after charging, we won't be able to boot the kernel up. I do not have a Streak, so I wonder whether those issues are fixed well in Phoenix kernel Manii? Can you show me how to get the source for the latest phoenix kernel that you're using with your Streak AOSP? Maybe I will try to build with Venue myself to see how things work!
phoenix kernel/ICS - Github
It's currently in the process of being merged back in.
You could try diffing S5 405 with V 406 and seeing what's changed in the source, they're nearly identical, but I dont expect them to be bit identical
TheManii said:
phoenix kernel/ICS - Github
It's currently in the process of being merged back in.
You could try diffing S5 405 with V 406 and seeing what's changed in the source, they're nearly identical, but I dont expect them to be bit identical
Click to expand...
Click to collapse
Sounds interesting, that's exactly what I did in my custom overclocked kernel. However, I will be able to save some time by using their kernel directly. In fact, I think that 405/407 kernel is not very different from 406 since my build for 405 also ran on DV too.
I will try with their "master"/experimental14 branch kernel first (to CM 7.2.0). Thanks for your information!
chacona said:
I will try with their "master"/experimental14 branch kernel first (to CM 7.2.0). Thanks for your information!
Click to expand...
Click to collapse
Will be waste of time as only streak-specific file is board-qsd8x50_austin.c, other changes are device-independent.
Changes that essential to run ics with hwa:
kgsl3.8 - kernel-side drivers are in drivers/video/msm - direct drop in instead of one that's shipped with stock 405 kernel
include/linux/msm-kgsl.h - to make kgsl3.8 build
(not really)*streak-specific*changes to arch/arm/mach-msm/board-qsd8x50_austin.c - changes in hardware init routines needful for kgsl3.8 (updated data structures, powerrail). In short - do a diff for board-qsd8x50_austin.c between Phoenix and ics branches to find out what's changed - to be honest - changes are generic for qualcomm devices, so direct copy/paste of changes into your device's board file will do the job
Other patches that were applied to ics branch are optional (cpu governors, io schedulers, netfilter specific changes (these are only needed if you need ics' mobile data usage collecting/limits features)) or affect streak-specific drivers only (and are not ics-specific).
So, in short - update your device's board file and use ics branch - that would be enough.
kibuuka said:
So, in short - update your device's board file and use ics branch - that would be enough.
Click to expand...
Click to collapse
Do you think I can start with the stock kernel, download the ICS tree including the kernel, then do the diff/merge between device's board file from ICS kernel to Dell kernel? After that, the original Dell kernel is patched with new stuffs for ICS, and can be used with ICS ROM?
i can also provide you with all patches made for streak against aosp source tree for shortening your mileage and instructions for a quickstart (my streak is broken at the moment, so i've suspended my development activities and got spare time for that)
please mention kernel for streak's ics is being built separately at the moment (i've got plans incorporating it in aosp build process, but it will take some time)
when i've messed with streak kernel making it ics-friendly i've realised that most of stuff can be made cross-compatible between two devices.
It's 95% the kernel, the only thing left is to turn off the rotation patch and swap out the BCM4325 for BCM4239 drivers.
On stock 3/4xx i can directly load venue roms on my S5 and only wifi is broken. (with a S5 kernel) Everything else works.
TheManii said:
It's 95% the kernel, the only thing left is to turn off the rotation patch and swap out the BCM4325 for BCM4239 drivers.
Click to expand...
Click to collapse
rotation is triggerable through kernel configuration menu. check.
as of wifi - is there any known-to-be-trustable list of hardware components for venue?
The V is just an S5 without the hdmi and whatever provides usb hosting.
The only other notable change is the wifi chip.
All the other sensors are compatable, and so is the modem+ril.
(I was able to get 3g working, but not wifi due to the chip being different)
I dont think anyone has done a (good quality) teardown on the V though.
Most I can offer is to pull details android gives back while it's on.
I'm guessing that's how CM7.2 was ported, since hPa didnt actually own a V,
he just took his S5 build, and flicked a few switches.
(it helped a lot that CM7.2 doesnt need any kernel changes to boot, it's just the stock 408 one with a modded ramdisk)
He only had access to a V for like a day or so.
kibuuka said:
i can also provide you with all patches made for streak against aosp source tree for shortening your mileage and instructions for a quickstart (my streak is broken at the moment, so i've suspended my development activities and got spare time for that)
please mention kernel for streak's ics is being built separately at the moment (i've got plans incorporating it in aosp build process, but it will take some time)
when i've messed with streak kernel making it ics-friendly i've realised that most of stuff can be made cross-compatible between two devices.
Click to expand...
Click to collapse
Hi Kibuuka, that sounds good, could you please share?
One more thing I would like to ask is, the stock kernels 405/407 and 406 have issues regarding power (sometime I can see the issue that after charging, screen goes black and we can only quit that situation by removing the battery). How did you address it? (I notice that your kernel works well on my CM7, without that issue - or is just simply because it has not happened yet?)
n0p did enormous amount of work addressing sleep of death issue (which, i believe is one you refer to), so dsc kernels (opposed to stock ones) are free of this bug. Ask him for details (i wasn't involved to dsc development at the point he managed to fix it) as he's best source of information on SoD issue fix you could find
As of aosp patchset - will upload it during weekends.
For whatever it's worth, as soon as we get a working ICS level kernel, I plan on porting TWRP and CWM-touch.
Those require ICS kernels (or rather it's a great deal more difficult to make them run on GB kernels) and I cant port them until then.
I've already gotten TWRP and CWM-touch working on the S7, and plan on porting TWRP to the S10 now.
Edit: come to think of it, I actually have TWRP running on a 5xx kernel (which is HC), i'll try simply porting and seeing what happens

[Q] Custom kernel without source?

I know it's early in the game for kernels as we usually have to wait for source code to be released. However my coworker with the One S flashed a new kernel (found here: http://forum.xda-developers.com/showthread.php?p=26922757 ) and I was wondering if, being that it uses an S4 as well, this could be ported over to our wonderful EVO's.
Just food for thought...

Question Oneplus Nord 2 kernel version ?

Which kernel version has the Nord 2 ? I am asking because i want know about the status of the GKI kernel implementation.
https://source.android.com/devices/architecture/kernel/generic-kernel-image
Hi @ALX3K,
As you can see here: https://github.com/OnePlusOSS/android_kernel_oneplus_mt6893/blob/oneplus/MT6893_R_11.0/Makefile#L2
It have 4.14.186 (Petit Gorille).
Greetings,
Wow how did you find it?
I thought because of merger with color os and in preperation to android 12 (oxygenos 12) there would use the newer kernel 4.19 or 5.4. Its even recommended from the android developers.
Maybe in oos12 we get a newer kernel would be interessting to know. I still cosider to buy a Nord 2 to play for some months with it. But now not sure. Example like this shows us why the merger of color os and oxygenos make sense. More developers and so on.
ALX3K said:
Wow how did you find it?
I thought because of merger with color os and in preperation to android 12 (oxygenos 12) there would use the newer kernel 4.19 or 5.4. Its even recommended from the android developers.
Maybe in oos12 we get a newer kernel would be interessting to know. I still cosider to buy a Nord 2 to play for some months with it. But now not sure. Example like this shows us why the merger of color os and oxygenos make sense. More developers and so on.
Click to expand...
Click to collapse
Because 1+ is GPL complain.
About the kernel version, I dont think the new change in 1+ with the merge with ColorOS in Android 12 will bring new kernel version, because that come from MTK BSP, and normally, QCOM and MTK only bump the minor version code, like 4.14.XXX only.

Categories

Resources