Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,728,510 Members 55,087 Now Online
XDA Developers Android and Mobile Development Forum

[Kernel][Sense] 2.6.35.14 - Gingertiny-v2 (Updated 04/25/13)

Tip us?
 
tiny4579
Old
(Last edited by tiny4579; 25th April 2013 at 03:59 PM.)
#1  
Recognized Developer - OP
Thanks Meter 4015
Posts: 7,442
Join Date: Jan 2011
Default [Kernel][Sense] 2.6.35.14 - Gingertiny-v2 (Updated 04/25/13)

Changelog

Notes on the new interactive governor below.

04/25/13
  • interactive governor updates from Tinykernel (Galaxy Nexus)
  • new sysfs path for fast charge - still compatible with incredicontrol
  • additional TCP congestion scheduler options with a default scheduler of cubic

10/04/12
  • New interactive governor backported from Incredikernel GB. Smartassv2 still default
  • Removed rarely used CPU governors

08/10/12
  • added mamarley's fastcharge USB patch to enable fastcharge without needing to unplug the charger
  • enabled KSM (Kernel Samepage Merging) - no change needed to make it active

03/11/12
  • Added Lazy governor - credit to Ezekeel
  • Enabled Smartass and Conservative governors

02/25/12
  • Disabled smartass,interactive,conservative governors
  • Disabled CFQ and BFQ governors as they were found not to be a efficient on flash devices
  • New I/O scheduler - SIO
  • New CPU governor - lagfree
  • smartassV2 is default governor again
  • Tweaked deadline scheduler for performance
  • Applied different zram patch, should be more stable, and removed memory tweaks in zram script (have to disable/enable to reset)

12/31/11
  • Patch kernel to 2.6.35.14
  • Tweak intellidemand and interactiveX governors for battery life
  • Ext4 patch for performance
  • Add ZRAM and swap support and add script to toggle ZRAM - see bottom of OP for more info

12/25/11
  • Increase min and max voltages by 25 for all non-OC frequencies
  • Added faux123′s intellidemand governor (thanks faux123!) - similar to ondemand but with screen off
  • Added imoseyon’s interactiveX governor (thanks imoseyon!) - interactive with screen off

12/01/11
  • Revert config setting that was causing freezing issues
  • Allow overvolting up to 1375 for more stability in overclocking
  • Revert default smartassv2 settings back to those of pre-11/6 kernel
  • Fix permissions on sysfs which were causing force closes in some apps
  • Use new ondemand,performance, and conservative governors

11/19/11
  • Tweak ondemand governor
  • Interactive governor fix
  • Update BFQ to v3-r1
  • Add and enable Tiny Preempt RCU (should perform even better than Tiny RCU)

11/10/11
  • Adjust smartassv2 scaling (see github for details)
  • Fix touchscreen issue that occurs on some devices
  • config: set tiny rcu (lower memory footprint)
  • add 1152000 and 1190400 CPU frequencies - only try if you're adventurous
  • various behind-the scenes fixes

11/06/11
  • Add interactive governor
  • Add smartass governor
  • Increase smartassv2 ideal wake frequency to 998Mhz - should help performance (if you don't like, underclock to 768 - this may change in a future release)
  • Add BFQ I/O Scheduler
  • HAVS+Sysfs interface (use Incredicontrol or boot scripts - see incredikernel.com and incredikernel thread for more information)
  • Fixed wifi not starting on certain ROMs such as McTwist - hopefully

11/02/11
  • Added unified panel driver from incredikernel and gingertiny-v1 for better responsiveness
  • Added msm_vibrator from gingertiny-v1 for smoother haptic feedback with smartass
  • Enabled TUN VPN support

10/31/11
Features:
  • Rebased on HTC official Incredible gingerbread .13 kernel
  • Audio Boost (Thanks Chad0989 for letting me use your source for this)
  • USB Fast Charging (Thanks Chad0989 for letting me use your source for this)
  • compressed kernel further for better support with boot manager
  • support for 128Mhz as well as overclock up to 1113
  • 3/5 point multitouch support on supported devices
  • lowered wifi voltage
  • OC up to 1.113Ghz
  • Built in modules for cifs, smartassv2, conservative, ext4, ntfs (read only)
  • HTC's perflock removed
  • Ext4 driver used to mount ext2/3 filesystems (default in cyanogenmod and incredikernel)
  • Enabled swap support (need app like swapper from market to utilize)
  • SD Card and EMMC mount should work properly on all Sense ROMs now.
  • incorporated some tweaks from incredikernel
  • support for wifi-n (2.4ghz only - hardware limitation)
Audio Boost and USB fast charging are disabled by default in this version (I don't like audio boost). You can enable audio boost in the same way you enable USB fast charge.

10/23/11
  • Ext4 driver used to mount ext2/3 filesystems (default in cyanogenmod and incredikernel)
  • Updated to new OJ driver from Cyanogenmod kernel
  • Sysfs interface for SVS (can now use incredicontrol) Not working properly
10/15/11
  • Fixed G-sensor issue (calibration, 3d-home screen, auto-rotate should work now)
10/08/11
  • Adjusted smartassV2 parameters for better performance
10/05/11
  • Set smatassV2 as default governor
  • incorporated some tweaks from incredikernel
  • added support for wifi-n (2.4ghz only - hardware limitation)
09/29/11
  • Added smartassV2 (erasmux)
09/20/11
  • Tweaked smartass governor to resolve reboot issues reported with using smartass (please let me know - it seems better for me so far)
  • Enabled swap support (need app like swapper from market to utilize)
  • Enabled compcache support (if ROM has uitility installed I can work on a script, currently I can't get the utility to work)
09/01/11
  • set max speed to 998 as phone would overclock at boot regardless of setcpu/overclocking app's setting which caused bootloops for phones that couldn't handle overclocking (Thanks Chad for the tip!)
08/31/11
Initial Release
  • Audio Boost (Thanks Chad0989 for letting me use your source for this)
  • USB Fast Charging (Thanks Chad0989 for letting me use your source for this)
  • compressed kernel further for better support with boot manager
  • support for 128Mhz as well as overclock up to 1113
  • 3/5 point multitouch support on supported devices
  • lowered wifi voltage
  • OC up to 1.113Ghz
  • Built in modules for cifs, smartass, tun, conservative, powersave, ext4
  • HTC's perflock removed
  • Bootup frequency increased to 998

Known issues:
  • Beats will not work. This is not a specific issue with this kernel but rather that the support is not built into the stock kernel. It worked in the port but I'm not sure what needs to be changed.
  • Incredicontrol force closes when trying to open the HAVS tab. This only seems to happen at boot and clears up. Since it clears up on it's own, I don't think it's a kernel issue though but I'm leaving it on here so people are aware.

*Disclaimer*
Please do not report bugs if you overclock or undervolt/overvolt differently than what is set by default. It adds too many variables. Set CPU max back to 998 and report a bug then if it doesn't go away after that.
I am not supporting the older .10 kernels at this time though if you decide to still use it I may need your assistance to get Beats audio working.


*Note*
1. Just because it's been asked before about what ROMs this kernel supports, this kernel does not need to be built to support any particular ROM but is confirmed to be working fine on many of the most popular Gingerbread Sense ROM by multiple users and several leading devs. If it does not work on your ROM let the dev know first in case it's a known issue.
2. Smartass (v1 and v2) has a built in min speed of 245 and will go to the set min speed only when the screen is off. Due to the nature of the governor, don't use a screen off profile with Smartass. It has been reported to cause issues. If you want a screen off profile use a different governor.


OC voltages are set to the same as 998 Mhz. Sense is a tricky animal when it comes to voltage adjustments. I had about 10x the issues with undervolting on sense froyo as on aosp, but maybe it's because that kernel was undervolted more.

*Important*
If you get random reboots or freezes on the new kernels (10/31 or 11/2), I will need the logs of that:

If it's a reboot grab the file /proc/last_kmsg using adb or root explorer. For adb setup please do a search on xda or the internet.

It would be adb pull /proc/last_kmsg for the adb command.
For root explorer just copy to the sdcard. It's a text file so you can post it online and post the link here or attach to your post when you report the issue.

If it is a freeze try to use logcat and output to a file when you're trying to reproduce it. Google logcat usage if needed. Also grab the last_kmsg after rebooting.


Release kernel found at
incredikernel.com

Update: 11/15/12 - I've added a mirror for my files on goo.

http://goo.im/devs/tiny4579/inc/kernels

Source Code(Dev Only, not flashable)
Github.com Kernel Source

All releases are built from the master branch.
The config for the kernel is in arch/arm/configs/incrediblec_defconfig.
I use the GCC 4.4.3 toolchain for this kernel due to GCC 4.6 causing build issues.

Below is a link to the original tiny-gingersense source which is a hybrid kernel running off code released for the Evo Sense kernel as well as some code from the Froyo Incredible sense kernel. This one uses the master branch as well and the same config filename and toolchain as v2.

Original tiny-gingersense kernel source

Frequently Asked Questions:

Some key differences between smartass and smartassv2 so users can decide which they prefer and learn a bit more about the differences:

Smartass
1. Screen off profile built in maxed at 384mhz.
2. Wakeup frequency is 998mhz.
3. Min screen on is 245mhz.
4. Improved by Chad to run better on our devices.
5. Purely load based, no ideal value.

Smartassv2
1. This is the same exact governor in Erasmux's Nexus One kernel (github.com/erasmux/n1-kernel)
2. Ideal wake frequency is 768 (also default that can be changed).
3. Screen on min is actually 128mhz).
4. No screen off profile.
5. Ideal sleep frequency 245mhz.
6. Improved upon from erasmux's version, not Chad's.

Basically the smartassv2 ideal wake frequency allows the phone to favor a certain speed to attempt to save battery life. It can still go above ideal wake and below ideal sleep so there's no caps on max and min while awake or sleep.

Some tips/info on various governors:

Smartass/smartassv2/interactive:
Use 128 min so the governor can scale as it needs to. Max speed I'd recommend at least 768Mhz.

Ondemand:
Try 128 min and if it lags use 245 min. Max speed I'd recommend at least 768Mhz.

Performance:
Only recommended for benchmarks but speed will always run at max.

InteractiveX:
Same as interactive except it has an auto screen off set to the min. Ideal with 245 min in setcpu but try 128 for battery life but it you have wake lag then set to 245.

Intellidemand:
Based on ondemand with a built in screen off. Any speed settings should be fine.

Interactive:
Some new features with this one. Starting with 10/4/12 release I am using the interactive kernel from Google which features a new kernel option called input_boost.

It is off by default but can be enabled by writing a 1 to /sys/devices/system/cpu/cpufreq/interactive/input_boost. Also there is another parameter for interactive called hispeed_freq in the same location. The hispeed_freq is where the governor jumps to first. Hispeed_freq by default is 614400 to help save battery. In the older interactive governor there was a maxspeed freq which meant the governor was a bit jumpier to the max speed. This should be a good blend of performance and battery.

ZRAM, what is it and how to I add it? (starting officially with 12/31/11)
If you are familiar with swap space in linux or virtual memory in Windows it is a similar concept. Except instead of using the hard drive as swap space it compresses swap space in RAM for faster access times than conventional swap. This will also wear out our storage memory less than typical swapping.

Enable ZRAM is simple thanks to a script built by imoseyon which is provided in the kernel zip file. To enable, use adb shell or download a terminal app and run zram enable. This will persist across reboots (if init.d is setup in your ROM) so if you don't want it anymore run zram disable and it will remove the bootscript and deactivate it.

You need to have root privileges to enable/disable zram. Run the su command in terminal emulator to request root.
The Following 87 Users Say Thank You to tiny4579 For This Useful Post: [ Click to Expand ]
 
godsmacked4653
Old
#2  
godsmacked4653's Avatar
Senior Member
Thanks Meter 87
Posts: 446
Join Date: Apr 2010
Way to go! But I bet this was a headache to put together.
Let me know if you need a beta tester and the slots haven't filled up.


 
tiny4579
Old
#3  
Recognized Developer - OP
Thanks Meter 4015
Posts: 7,442
Join Date: Jan 2011
Quote:
Originally Posted by godsmacked4653 View Post
Way to go! But I bet this was a headache to put together.
Let me know if you need a beta tester and the slots haven't filled up.
Check your PM.
 
dmeadows013
Old
#4  
dmeadows013's Avatar
Recognized Developer
Thanks Meter 3775
Posts: 2,390
Join Date: Sep 2010
Location: USA

 
DONATE TO ME
Is this the beginning of a whole slew of custom kernels for the inc ?

How is the battery life on this?
Current Devices: Google Nexus 5 (Black/32GB), Google Nexus 7 (Black/32GB)


MY WORK:
 
HTC Incredible
GingerStock Rom
AOKP ROM

HTC Rezound
AOKP ROM

Samsung GSIII
KitKangs


Like What I Do? Buy Me an Arizona!



 
jdog94
Old
#5  
jdog94's Avatar
Senior Member
Thanks Meter 121
Posts: 1,687
Join Date: Mar 2010
i can test if needed
 
bast525
Old
#6  
Senior Member
Thanks Meter 137
Posts: 456
Join Date: Nov 2007
Location: Chesapeake, VA
Exciting stuff...

any idea or have you looked at how difficult it would be to enable 5 pt multi touch in the future? or GPU+?
Quote:
Originally Posted by nir36 View Post
lol. microsoft say everything they do is the next generation of things.
that doesn't mean it's a better generation
The Following User Says Thank You to bast525 For This Useful Post: [ Click to Expand ]
 
baboonsRus
Old
#7  
baboonsRus's Avatar
Senior Member
Thanks Meter 36
Posts: 366
Join Date: Oct 2010
Location: Phoenix
Hit me up... I'd love to test.
 
shorty1993
Old
#8  
Senior Member
Thanks Meter 13
Posts: 348
Join Date: Nov 2010
Location: Gadsden Alabama
Love to test. Would begging help. Lol

Sent from my ADR6300 using Tapatalk
 
tiny4579
Old
#9  
Recognized Developer - OP
Thanks Meter 4015
Posts: 7,442
Join Date: Jan 2011
Ok, got the 5 testers I want. Actually I found 6 so I'm good for now.
 
renzo.olivares
Old
#10  
renzo.olivares's Avatar
Recognized Developer
Thanks Meter 16199
Posts: 9,085
Join Date: Jan 2011

 
DONATE TO ME
Quote:
Originally Posted by tiny4579 View Post
Hi all!

Good news! I have successfully initially ported the HTC Incredible kernel to gingersense using the Evo gingerbread source as a base and pulling from the Inc's froyo source code. I have spent significant time over the past few weekends trying to get this work and I have something usable finally. (I never ported a kernel before but am satisfied with what I have here).

Thanks Chad for inspiring me to do this port and giving me pointers along the way!

What works:
1. 3g+wifi
2. all modules from modules thread are built in+cifs added as well (perflock_disable is not needed on this kernel)
3. camera - initially had trouble, it wouldn't boot with camera enabled. 720p video SHOULD work as well
4. artifacting issues should be resolved
5. overclock works (1.13Ghz)

I would like to have some testers prior to releasing it as open beta. I want 4 additional testers, have 1 already. The first 4 to volunteer to test (via PM or this thread) will get a PM with a link to test the kernel. It will flash like any other kernel. I would like to post tomorrow night so please give feedback.

Known issues:
May be overheating issues. Though I cannot confirm issue. Battery temp is fine for me.
It is a port. Not everything will necessarily work 100%.
Haptic feedback and vibration are currently broken. Will look into it.

Github.com Kernel Source
try changing the inc-kepad.kl to incrediblec-keypad.kl in the /usr folder of the rom

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes