ARCHIVED: [Kernel] Picasticks OC kernel built from LG source for Optimus V

Status
Not open for further replies.

picasticks

Well-known member
Feb 28, 2011
136
58
0
Visit site
This kernel is a "stock plus" kernel that takes the LG kernel source, adds overclocking and the interactive frequency governor, and strips some unnecessary kernel debugging code and drivers. The idea is to have a fast-but-stable performance kernel based on the well-tested LG kernel config.

Currently, it also includes the TUN/TAP device driver compiled as the tun.ko module, so you can do IP tunneling (OpenVPN for instance), and the ext2/3/4 filesystem drivers (for instance, for use with Link2SD). Otherwise there is no added device support (I'm going for lean and mean), but I'm open to adding drivers as modules if there's a lot of people who want something.

For more information, check out this blog post. I have an Optimus S and this kernel originated as an S kernel, so there's also good background info in the Optimus S thread. Now that we've gotten LG to release clean VM670 source, I've done a compile for the V. Sprint brothers unite!

Who is it for? I recommend it as an upgrade if you're running the stock kernel. It's good for any LG-based ROM. If you're running a Cyanogen-based ROM like CM7 or AOSP, understand that use with any non-LG-based ROM is experimental and unsupported. Do not report any issues you run into as bugs! Zefie has built Xionia for use with CM7 and recommends that instead. To be more clear:
* This kernel (picasticks) is version 2.6.32.9 (Android Platform 8/2.2/Froyo) and intended for a 2.2/Froyo OS/ROM. If you run it on Cyanogen, expect problems. (When LG releases 2.3, I will go to 2.3 also.)
* Xionia is version 2.6.32.33 (Android Platform 9/2.3/Gingerbread corresponds to 2.6.35 kernel) and intended for 2.3/Gingerbread OS/ROM (i.e. Cyanogen at this point). If you run it on 2.2/Froyo, expect problems.

It uses koush's AnyKernel updater (which preserves whatever boot ramdisk is already on your phone) so you should be able to flash it with any ROM. A downside to this is that, to enable the interactive governor (instead of ondemand) you will have to do something ... see the S thread top post.

Keep in mind I don't have a V, so if you think you've found a bug, do your best to reproduce it and describe in detail. Note what ROM you're using, and be sure to try again after doing a dalvik+cache wipe. If you're overclocked, test again at 600 MHz ondemand. If it's not something I can reproduce, then it'll be up to you and other V users to pinpoint it.

Before I post the download link, let me repeat the standard disclaimer. This software is provided with no warranty and you choose to use it at your own risk. Be sure that you understand what you're doing and that you have backups (NAND backup, backup of your boot image, whatever) to be able to restore to your old kernel if you need to.

Download, copy to /sdcard, reboot to recovery and flash: picasticks-07a.zip

Version history:
picasticks-07a.zip 18 April 2011: Same as 06-a, the .zip updater adds feature to check for incorrect swapped Home/Menu keymap and revert to original keymap (see page 7 of thread for notes)
picasticks-06-a.zip 14 April 2011: Includes ext2, ext3 and ext4 Linux filesystem drivers built as modules
picasticks-06.zip 14 April 2011: Initial release for V (previous releases for S only)

Special test pilot brownie points go to whoever boots into this thing first!
 
Last edited:

overthinkingme

Well-known member
Feb 10, 2011
219
14
0
Visit site
Awesome! Thanks so much!

EDIT: please add a2sd support. My Link2sd app can't install the init script I believe, :/

Guess I was first :D

Sent from my VM670 using Tapatalk
 
Last edited:

picasticks

Well-known member
Feb 28, 2011
136
58
0
Visit site
Congrats to overthinkingme!

harukay you get congrats for first bug report!

Yes, one of the few differences between the phones is that the home and menu buttons are switched ... so if you take an S kernel and put it on the V, that's what happens. I was hoping/assuming that by compiling the V code for the V that the buttons would be in the right place. Looks like we were not so lucky. I know zefie and others have addressed this when they ported their S kernels to the V so I'll look into it.

Can someone else please verify that the buttons are switched?
 

picasticks

Well-known member
Feb 28, 2011
136
58
0
Visit site
EDIT: please add a2sd support. My Link2sd app can't install the init script I believe, :/

I am guessing you want support for a particular filesystem (ext2, ext3, ext4?). Are you using this Link2SD app? (or which one are you using?) Could you use a FAT32 partition with your Link2SD instead?

I just use the "move to SD card" in Manage Apps that's part of Froyo to do this, btw. Is there some advantage to using a separate app for this? (not a rhetorical question, I am genuinely curious.)
 

Delphis

Well-known member
Mar 21, 2011
86
12
0
Visit site
Good job getting it compiled.

I'll certainly be checking this out if it support ext2/3 filesystems. Good job including the TUN driver, that's one I need too.

I'm interested to see if it solves my problem with being unable to monitor battery current with different battery widgets. If it's more 'standard V' like, it's possible that might help.

I would like to find out how to compile C programs for the Android platform. What's the build environment you use for compiling this kernel?
 

Delphis

Well-known member
Mar 21, 2011
86
12
0
Visit site
I am guessing you want support for a particular filesystem (ext2, ext3, ext4?). Are you using this Link2SD app? (or which one are you using?) Could you use a FAT32 partition with your Link2SD instead?

I just use the "move to SD card" in Manage Apps that's part of Froyo to do this, btw. Is there some advantage to using a separate app for this? (not a rhetorical question, I am genuinely curious.)

Yea, with Link2SD you really need a native Linux filesystem. You can then move ALL the stuff for an app including the dalvik cache, since it keeps permissions correct by being on a Linux filesystem. You can also move the entries in /data/data (and symlink). I made a thread about it that talks about how to set it up. I certainly prefer it over doing the Move to SD (on FAT32). My phone has much more space because of it.

Thread about it: http://forum.androidcentral.com/opt...ing-larger-sd-cards-no-more-storage-woes.html
 

picasticks

Well-known member
Feb 28, 2011
136
58
0
Visit site
I'll certainly be checking this out if it support ext2/3 filesystems. Good job including the TUN driver, that's one I need too.

No ext2/3/4 or reiser or jfs or any other *nix filesystems at the moment, but I'll consider that a feature request from you to build those as modules.

I would like to find out how to compile C programs for the Android platform. What's the build environment you use for compiling this kernel?

I originally used the prebuilt toolchain from the froyo version of the Android NDK ... currently I'm using the "official" ARM toolchain, CodeSourcery G++, which you can download prebuilt Linux binaries for from CodeSourcery for free (G++ Lite). GCC 4.5.1 vs. 4.4.0 for the froyo NDK -- either one will work.

GCC 4.6 just came out which has support for Bionic, which is Google's stripped-down version of libc for Android (like how Debian have adopted EGLIBC), so if you are talking userland apps you might want to take a look at that. I'm not doing that, so literally that's about all I know about it. :)

If you are just doing the kernel, you will just need to set ARCH and CROSS_COMPILE (to point to your toolchain) and that's pretty much it. i.e. for the NDK compiler:

export ARCH=arm
export CROSS_COMPILE=~/path_to/android-ndk-r5b/toolchains/arm-eabi-4.4.0/prebuilt/linux-x86/bin/arm-eabi-

Hope that helps a little at least.
 

picasticks

Well-known member
Feb 28, 2011
136
58
0
Visit site
Yea, with Link2SD you really need a native Linux filesystem. You can then move ALL the stuff for an app including the dalvik cache, since it keeps permissions correct by being on a Linux filesystem. You can also move the entries in /data/data (and symlink). I made a thread about it that talks about how to set it up. I certainly prefer it over doing the Move to SD (on FAT32). My phone has much more space because of it.

OK, well I guess that counts as 2 votes so while I'm sitting here I might as well do a build with ext2-4 as modules. I'll post it in ~1 hour.
 

overthinkingme

Well-known member
Feb 10, 2011
219
14
0
Visit site
OK, well I guess that counts as 2 votes so while I'm sitting here I might as well do a build with ext2-4 as modules. I'll post it in ~1 hour.

I REALLY appreciate it :)
Native a2sd led me to low memory fast.
Thank you for our contributions, devs like you make android shine :D

Sent from my VM670 using Tapatalk
 

asadullah

Well-known member
Oct 23, 2010
480
182
0
Visit site
I just ask for making it stable everything working with overclock abilities. Thanks for making an overclocked kernel for the optimus v
 

picasticks

Well-known member
Feb 28, 2011
136
58
0
Visit site
OK, for those who wanted it, here is an alternate version with ext2, ext3, ext4 filesystem support as modules: picasticks-06-a.zip. I also put a link on the top post.

It looks like journaling support is built as separate modules so for ext3/4 you will also need jbd/jbd2 (also included).

Let me know if this works. (I kind of like the "no Optimus V" excuse, it saves a lot of time to just build things and post them with no testing. :) )
 

Nit3H8wk

Well-known member
Mar 2, 2011
72
1
0
Visit site
download does not work. I tried dolphin opera skyfire and default browser.

the sense themed rom was the problem it does not work with anything mediafire.
 
Last edited:

Kreatur3

Well-known member
Mar 2, 2011
660
40
0
Visit site
For people with button swapping issues. Until it is fixed in the kernel you can use the flash zip in the other kernel thread by mmarzz? sorry still waking up and too lazy to go look at your name spelling, no offense intended. I use it when flashing kernels with swapped buttons and it makes the fix painless. Hope this helps point you guys in the right direction. :)
 

picasticks

Well-known member
Feb 28, 2011
136
58
0
Visit site
Flashed the new release but mount script was still not able to be created.

Can anyone else verify a2sd?

Sent from my VM670 using Tapatalk
I haven't tried it for anything either, but my guess is that your link2sd app isn't loading the kernel modules, and you probably need at least ext2 support. You can load the ext2 module by doing "insmod /system/lib/modules/ext2.ko", and then try your script.
 

picasticks

Well-known member
Feb 28, 2011
136
58
0
Visit site
Would it be possible for you to add undervolting to this kernel?
Well, patches are always welcome, but that may be outside the scope of this kernel.

I would have to look into this (not near my Android machine), but it's possible that the stock kernel already has hybrid AVS (adaptive voltage scaling) so there would be no need for manual voltage scaling. There's also the question of what the chipset supports. I know that frequency scaling below 245 MHz doesn't work. Like I said, if you really want to get the ball rolling on this, patch and some test data are the way to go, or if you can't manage that then as close as you can get, the better. Code, chipset reference, etc.
 

obijohn

Well-known member
Mar 31, 2011
169
100
0
Visit site
Regarding button swapping issues, the kernel itself has the buttons mapped correctly. However, if you're flashing this over another kernel that changed the thunder_keypad.kl button map file, or if you were using ButtonRemapper to do it (which changes that file), that file overrides the internal kernel mapping. So it's now swapping the otherwise-correctly-mapped buttons.

picasticks, you might want to include the original kl file so that this isn't an issue for people installing this kernel who have a kl file with the buttons remapped to fix a kernel that didn't map them correctly.
 
Last edited:
Status
Not open for further replies.

Trending Posts

Forum statistics

Threads
942,403
Messages
6,913,908
Members
3,158,398
Latest member
Chelrie