We’ve previously covered step-by-step guides on how to compile your own kernel from source. Simply compiling some readily available source code though is only half the battle. For there to be any benefit of compiling and flashing your own kernel, you’re going to need to make some modifications. Which particular changes you make is of course entirely up to you, and there are a huge number of improvements that can be made at kernel level to improve the performance of any given device. If you’re at the stage of having compiled your own kernel but are a little unsure of where to go from there, XDA-University has a guide which will be of interest to you.
The tutorial covers the process of adding CPU governors, I/O schedulers and the ability to overclock the device’s CPU to your kernel. These are among some of the more basic modifications that you can make, but they are also some of the most sought after by users. All the required steps are clearly outlined and backed up with easy to follow code examples that will have you modified and ready to compile in no time. You will of course need to be familiar with Github in order to document your changes and remain GPL compliant. If you need a refresher course, be sure to check out this excellent guide to becoming a Git wizard.
Be sure to head on over to XDA Univesity and check this one out if you want to take your own kernel to the next level, as this provides a great jumping off point for further more advanced developments.
Some devices just refuse to die, no matter how long they’ve been around. That said, a team of devoted developers has come together to bring the Linux kernel 3.0.8 to every 2011 Xperia device. The last official kernel release from Sony (Ericsson) for 2011 Xperia Devices was version 2.6.32.
XDA Recognized Developer nobodyAtall based this kernel on the ‘M7630AABBQMLZA404033I’ CAF tag, which is ‘the latest tagged release for this arch and is linux 3.0.8.’ The supported devices and the developer behind each one are as follows:
The kernel for each of the listed devices is available for download and testing from the kernel thread. The kernels for the Mini, Live with Walkman, Pro and Neo and Neo V are said to be bootable and usable, with near 100% functionality, while the rest are still at various stages of development (at the time of writing). More detailed status for each of these kernels can be found in the discussion thread.
April 11, 2013 By: Will Verduzco
OK. It’s no big secret. The HTC One is a great and exciting device. You’ve heard us talk about it—everything from the launch event and preliminary benchmarks to giving the device and its carrier variants a place on our forums. Now, we have kernel source for some One variants, which is great news for those looking to start development work for HTC’s latest flagship. And since the device was only recently launched, with many carrier variants still pending release, HTC has done a great job of keeping to their GPL requirements.
In addition to the One, HTC also saw fit to
release update kernel source for the Droid DNA to match an OTA that was released back in early February. In other words, the company is now GPL compliant with binaries released two months ago. The DNA, if you may recall, was released quite some time ago. Available since November of last year, it took nearly five months for the device to become GPL compliant. Better late than never, but we can’t help but think how much further along the development community would be for the device, had the GPL obligations been fulfilled earlier. In fact, we’ve even seen better from certain relatively obscure manufacturers.
Let’s just hope that in the future, the One that we’re waiting for isn’t an HTC device’s (up-to-date) kernel source code. Those looking to get in on the goods can find them in the links below.
Update: As pointed out by reader and “HTC Champion” Leigh, my previous statements were somewhat mistaken. Article text has been updated accordingly.
If your Android device has an unlocked bootloader, it’s undeniable the usefulness of having a custom kernel on your device. With no release of Linux Kernel version 3.4 from Samsung as of yet, it’s great to see developers on XDA all contributing to make this possible for a mid-range Samsung device, the Galaxy S Plus GT-i9001.
The mastermind behind this creation is XDA Senior Member educk, who rebased support for the i9001 on the 3.4 kernel baseline, ahead of a release from Samsung. The kernel is still in the alpha stage of development with improvements and features such as:
Standard functions of the i9001 such as the camera, Wi-Fi, 3G and calls are reported to still be working with no bugs and faults as of now.
Accepting contributions from the development community, educk has done and is doing a remarkable job with this project for the Android community. Make sure to head over to the original thread for more details and discussions.
February 12, 2013 By: jerdog
One of the most highly-anticipated devices debuted at CES 2013 is the Sony Xperia Z. With a 5″ 1080p screen with a ~441 ppi, sitting atop a quad-core 1.5GHz Qualcomm S4 Pro with 2 gigs RAM and a 13.1 MP camera, there’s no doubt that anticipation is warranted. With the device recently released in Japan, and a worldwide release date is speculated to be in the next few weeks, what is this? Kernel source already?
This year, Sony Mobile has already demonstrated with their commitment to supporting the open source developer community. The most recent previous example is their kernel source code release for their alpha Jelly Bean build for the Xperia T (massive GPL-compliance anyone?). Now, they’ve released the kernel source code for the Xperia Z, which hasn’t even gone on sale around the world yet. Sure Sony isn’t the first OEM to do this, but they have a track record of releasing complete, compilable, and working kernel source (cough, cough Samsung). They also have shown consistency at releasing source immediately (sneeze, HTC). And to top it off, they just plain release the source (ahem, Rockchip, Huawei, and countless others) like the GPLv2 requires you to.
So if you are in the mood for compiling a kernel for a new, top-of-the-line device even though you don’t have it in front of you, head on over to Sony Developer’s Open Source Downloads site. Obviously, you won’t be able to test out the source, but it can provide a good indication of what they have planned for a device that is slated to be the big one for Sony Mobile in 2013.
January 26, 2013 By: jerdog
Here at XDA, we take the responsibility of carriers and OEMs to provide timely updates to their devices (and to honor their GPL requirements) seriously. There are those who do a good job (Samsung is one of them), those who don’t always do a good job (HTC, Motorola, LG), and those who do a terrible job (Huawei, ZTE, Rockchip to name a few). But there is one who right now is doing a terrific job, and that is Sony Mobile.
Back at the end of 2012, we selected Sony Mobile as our OEM of the Year for many reasons. One of those had to do with their public support of the developer community. Another was the release of beta OS builds for impending updates, shared on XDA by Sony staff in order to seed the ROM development pipeline. In addition, they were very active in supporting AOSP for the Sony Xperia S in the Google AOSP device tree, released the AOSP binaries, and eventually branched out to open their own Github for future AOSP development.
On Friday, Sony continued their string of community contributions by releasing an ALPHA build of Jelly Bean (Android 4.1.2) for the Sony Xperia T. This build is most definitely an alpha, meaning that many of the core components do not work, so it is not meant to be flashed or even mucked around with by the end user. It is meant solely for custom ROM developers to take and use and help make it better in preparation for Sony’s upcoming official build of Jelly Bean for the Xperia T. In order to flash this you will need to use their EMMA tool and your device must have its bootloader unlocked, or else the device will boot to a black screen and you will need to return to stock via Sony’s Update Tool. More information can be found at their Developer World blog. Again, this is not for the end user.
Sony evidently wasn’t content just to be the only OEM to provide OFFICIAL alpha builds for their devices. They ALSO released the kernel source for the alpha build. No other company in our memory has ever done this. Sure, one could argue that it is their obligation to release the kernel source under GPL requirements because they distributed the alpha build. But let’s keep in mind that we’re talking about an ALPHA build—something that is essentially in the infant-stages of its evolution, and not a production build or a finished product.
Let’s also keep in mind that instead of letting it leak like other manufacturers do, and thus not need to adhere to the GPL because they can claim ignorance and that they themselves aren’t the one distributing, they are embracing the fact that the GPL is not harmful. They are stating their case that this is how OEMs should work with the community. They are saying that this sort of thing encourages trust and a sense of togetherness between the community and the OEM, which in turn trickles down to the consumer’s good will towards the OEM. It’s a veritable marketplace “circle of life.” (You’re welcome for having planted the Lion King firmly in your subconscious for the next few hours.)
Other OEMs, like Samsung, frequently release incomplete kernel source that will not build (GPL violation); or fail to release the kernel source for a production build that they later retract even though it was distributed and is live in the wild on consumer’s devices (GPL violation). Or in the case of HTC, just plain ignore the GPL and wait for petitions to be filed or lawyers to be engaged before releasing the kernel source for a software version that is now out of date (GPL violation).
Let this be a lesson to the OEMs out there: When you choose to embrace the very ecosystem that has driven your profits high, and endeavor to work with that ecosystem in a mutual give-and-take, you will see positive results and karma that far exceeds your expectations. Or you can choose to neglect the very base that at one time made you the top smartphone manufacturer in the world and ultimately see your profits and market share slide into the abyss where there is little to no hope of return. Your choice. Choose wisely.
March 20, 2012 By: Ian Stacy
HTC has always had a good relationship with its users, by industry standards. They’ve made several game-changing decisions in the past year, including unlocking device bootloaders and confirming Ice Cream Sandwich support for a wide range of handsets, including some that were lower range than most competitors bothered to support. Now, continuing in an effort to improve that relationship, HTC is challenging the idea that the company is slow to deliver source code for its devs and fans!
HTC ‘s relationship with the community definitely grew tighter this past weekend when the company released the Ice Cream Sandwich Kernel Source for the HTC Sensation, the HTC Sensation XE and the HTC Vivid. Developers can now get their hands on the code necessary to truly compile functioning ROMs that fully utilize the device hardware. This is great news for all HTC fans, as the source for the rest of the ICS line will undoubtedly follow!
The heads-up was first spotted in our forums for the Sensation here thanks to XDA Senior Member erto90 and for the Vivid here thanks to Senior Member come at me bro. Developers, head on over to the HTCDev download page here to nab the new kernel sources. You can also follow HTCDev on Twitter if you’d like to thank them!
March 11, 2012 By: ElCondor
It is an issue many with older devices face: once the battery percentage hits the 15% or so, the device simply shuts down without any notice. What’s the reason for this problem? Battery aging. The process of battery aging isn’t inherently the cause, but as XDA Forum Member theGanymedes points out, it is the fact that your Desire thinks your battery is actually brand new. TheGanymedes puts it this way:
… your device thinks it has more capacity, when it’s actually empty (which occurs at 15-20% depending on the battery) and shutting down at weird percentages.
You’ve probably heard of ‘battery calibration’ before. It is a mod widely used for solving this exact problem. However, TheGanymedes points out that there are issues in the code of specific kernels that are the key to a properly calibrated battery. Fixing those issues would make an end to these 15% shutdowns. Luckily, the developer has come up with a patch and flashable zip that to do just that. These files and all (technical) details can be found in the development thread.
You may remember that during the HP TouchPad fire sale, a few slates slipped out with a primitive Android Froyo build on them. Well, HP doesn’t seem to know how the tablets hit shelves with Android on board, but its decided to release the source code for the OS. Devs had previously called on the company to hand over the code, but the request was refused since HP had never intended for TouchPads to ship them with Android, so they didn´t were obligated to concede by the open-source requirements.
As a gesture of goodwill to the community, I would say more for a certain amount of pressure from it, Hewlett Packard webOS has reversed course and let the TouchPad specific kernel to appear on the Internet for Devs to play with making their lives easier when developing for that device.
You may remember our previous articles regarding the Touchpad, when it was on sale for a cheap price, then when we discussed about WebOS future and later on when the first Android ports arrived. Long before this announcement thanks to XDA Devs a lot of work has been done and you can even enjoy of a CyanogenMod on it.
Do you have a Touchpad?, if so would you install this kernel on it?, please leave your comments and thanks for reading.
Heres the source link if you are interested in testing it.
January 31, 2012 By: Former Writer
Finding ways to wake a phone besides the old power button can be a challenge for some phones. For those who still have phones with the Blackberry style navigation ball or the front touch pad, such as the HTC G2, there are mods out there that will give you the ability to unlock your phone using those. So what about phones without any physical front buttons?
This is a problem that XDA Senior Member bponury is working to fix for at least those carrying the HTC EVO 3D. bponury has created a kernel module that will allow screen unlocking capabilities on the EVO 3D using screen swipe gestures instead of the traditional power button. The app developer has also added the functionality to lock the screen the same way, using screen gestures.
To add to the convenience, you can find the mod in the Android Market here, which makes installation a breeze. Just grab your HTC EVO 3D, make sure it’s rooted and then go to the link and install. It’s just that easy. Additionally, there’s even a how to video in the description that shows you how to make the screen turn on and off using the mod.
For those who want to give it a shot, simply follow the Market link above with your rooted EVO 3D and give it a test run.
January 17, 2012 By: Will Verduzco
Ever since the release of the Samsung Galaxy S in June of 2010, enabling USB Host has been a hot topic. While remaining a hopeful situation for a year and a half, success has remained just one or two steps out of reach. Luckily, the tribulations of developer life simply cannot stop the developers of this site from overcoming OEM-imposed device limitations.
Loosely based on a previously released set of USB host drivers that were later adapted to work with the Samsung Galaxy Tab, XDA Recognized Developer sztupy baked his modifications into teamhacksung’s ICS Build 14 kernel. As such, the new kernel will only work with that particular ROM. Currently, only USB 2.0 devices work, precluding the use of USB HID devices such as keyboards and mouses. In the words of the developer:
What is working:
USB 2.0 devices seem to work fine. This includes flash drives, and other accessories like Canon DSLRs. This concludes all USB 2.0 devices I have at home.
What does not work:
USB 1.x devices doesn’t seem to work. This includes almost all HID devices (like keyboard and mice).
Also you will need to power the devices externally, as the phone doesn’t give out power on the OTG connector.
USB device enumeration is also broken sometimes, and it will not re-enumerate mass storage devices after they have been connected. (This means you cannot connect another Android phone as a mass storage device. WM phones are fine though). The built in root hub will never re-enumerate devices, they have to be already connected to the phone when you switch to host mode for them to work.
Do I need a hub to get it working?
No, if you only want to connect one device you can connect it straight to the phone (if you provide it with +5V power). This means you can connect the one end of a Y cable to a power source, the other end to your device and the third end to the phone’s OTG cable, and it will work. On the other hand a lot of things are broken on the S3C’s root hub implementation meaning you will probably get better results and less crashes if you hook up your devices through an external hub.
Looking to get in on the USB Host action on your ICS-powered Samsung Galaxy S i9000? Head over to the kernel thread to get started. Are you an SGS kernel or ROM developer looking to port the patches to your own release? If so, look no further.
January 14, 2012 By: Former Writer
Everyone that wants to be involved with development has got to start somewhere, and for users who own an Samsung Galaxy S II Epic 4g Touch, there’s a place for you.
XDA Member shanenielson1234 has written a thorough set of instructions for the aspiring developer who wants to learn how to compile a kernel. This has been attempted before by others, but they include things like a script that does all the work for you which leaves the aspiring developers no room to learn and no room to modify.
This method is more complete and requires the users performing the tutorial to go through each step themselves in order to get a feel for how it is really done. It opens the doors for those who want to improve on that process by writing their own script or allows modification of files within the kernel, which is something a compile script just won’t let you do.
For the complete tutorial, download links to essential kernel compiling files, and discussion with users who have begun or completed this tutorial, you can find everything you need in the original thread. Before you begin, though, be sure you’re running Ubuntu (or some distro of Linux) or at least have it operational in a Virtual Box. Also, as part of the tutorial, you’ll be flashing your kernel to your phone after you make it and flashing kernels is always a little dangerous. So be sure you do the usual flashing preparation, such as creating a Nandroid backup, before you begin.
basically this should encourage other devs to start working on the device now that they know its rooted, has recovery and can run custom kernels
The kernel itself seems pretty on par with DooMLoRD’s other kernel work, which is to say it’s loaded with features and is just all around awesome. Some of the features include:
CPU overclocked to 2.052 Ghz
CPU underclocked to 192 Mhz
GPU overclocked to 320 Mhz
for safe booting CPU is capped at bootup to 1.536GHz/384MHz (max/min)
slightly undervolted (atleast for stock frequencies)
uses LZMA compression
added lots of fixing/patches (including CPU HOTPLUG notifications/CPU unaligned access) thanks to faux132
VDD CPU voltage control (@ /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels)
compiled using Snapdragon optimizations
enabled few file systems support:
insecure kernel (ro.secure=0 & USB debugging enabled by default)
/system mounted as RW
Did anyone else notice the 2.052 GHz overclock capability on the CPU?
For those lucky enough to be carrying an HTC Jetstream who wants to check out this awesome kernel, you can find the full feature list, instructions, shout outs and download links in the original thread. The installation instructions aren’t hard to follow, but if you’re not familiar with the Fastboot on this device, you should probably should be before attempting to flash the kernel.