Find Your Device:
Or Continue to Thread: [KERNEL] Semaphore N4 3.4.2
13th April 2013, 09:56 AM
stratosk's Avatar
OP Recognized Developer
Flag Thessaloniki
Thanks Meter: 32,023
Donate to Me
[KERNEL] Semaphore N4 3.4.2

This is a kernel based on stock one, tested on stock KK 4.4.3, JB 4.2.2, CM10.1, JB 4.3, Lollipop 5.0

Versions >= 3.0.0b are for Lollipop 5.1.x
Versions >= 2.2.0 are for KK 4.4.3
Versions >= 1.8.5 are for KK 4.4.1 / 4.4.2 only
Versions >= 1.8.0 are for KK 4.4 only
Versions >= 1.5.0 are for JB 4.3 only

More features will be added soon. Please don't ask for ETA.

- Linux kernel 3.4.112
- built with Linaro gcc 4.8.2 201306
- enabled O2 optimizations
- ondemand (Changed calculation of frequency, tweaked)
- conservative
- mpdecision dropped
- dyn_hotplug driver
- Noop scheduler (default)
- SIO scheduler
- Touch wake
- Double Tap to Wake
- Gamma control
- LED triggers: touchwake, thermal
- Undervolting
- removed many debug options

For more information check the semaphore kernel website:

Please use Semaphore Manager application to control every kernel's feature.

Thanks to
- Linux developers
- faux123 for ideas about gamma tables
- Ezekeel for touchwake
- my wife who always supports me
- a German friend who helped to buy N4

All people who support this kernel by testing, reporting issues, donating or simply using it.

Thanks italia0101 for his review.

Change log

3.4.2 (19/05/2016)
- Linux kernel 3.4.112

3.4.1 (24/03/2016)
- Linux kernel 3.4.111

3.4.0 (02/11/2015)
- Linux kernel 3.4.110

3.3.0 (23/09/2015)
- Linux kernel 3.4.109

3.2.6 (16/08/2015)
- Merge Android 5.1.1_r0.14 changes

3.2.5 (21/06/2015)
- Linux kernel 3.4.108

3.2.0 (21/05/2015)
- Merge Android 5.1.1 changes

3.1.5 (20/04/2015)
- Linux kernel 3.4.107
- Double tap to wake: add option to temporarily disable after power key pressed. Auto enabled again after device resumed. Enable this feature using the command:
echo 1 > /sys/devices/virtual/input/lge_touch/dt_wake_pwr_disable

3.1.0 (15/04/2015)
- Merge Android-5.1.0_r0.9 changes

3.0.5 (22/03/2015)
- cpufreq: new per cpu tunable util_threshold (default 25)
- Dynamic hotplug: Change algorithm. If CPUs have different util_threshold, the CPU with the greater one will be chosen
- ondemand: new tunable down_threshold. If load below this threshold lowest frequency will be user.

3.0.2 (18/02/2015)
- Linux kernel 3.4.106

3.0.1 (11/12/2014)
- Merge latest changes from Android source (5.0.1)

- Linux kernel 3.4.105
- Fix initramfs issues (mpdfake, initscripts) due to SELinux. Semaphore init script uses Chainfire's supolicy tool (included in latests SuperSU) to patch sepolicy

3.0.0b (18/11/2014)
- Lollipop release
- Merged latest lollipop branch
- Linux 3.4.104

2.4.0 (19/08/2014)
- Linux kernel 3.4.103
- ondemand: a small fix in check load condition (thanks to moddingg33k)
- tick-sched: Remove unnecessary statistics calculation required by mpdecision (thanks to moddingg33k)
- tick-sched: A couple of fixes from mainline

2.3.3 (19/07/2014)
- Linux kernel 3.4.99

2.3.0 (27/06/2014)
- Linux kernel 3.4.95
- ondemand: Change the calculation of next frequency to utilize lower frequencies more (the governor will be more sensitive to lower loads)
- ondemand: Change default touch load to 65 to keep the touch frequency to 1134MHz (because of the change in calculation)
Please note that you have to change the touch load to 65 in Semaphore Manager until the app update.

2.2.5 (15/06/2014)
- Linux kernel 3.4.93
- ondemand: Be friendly towards latency-sensitive bursty workloads (backport 2 patches that intended for 3.16)

About Double Tap to Wake.
Implemented from scratch and hints from show-p1984 and LG G pad kernels (thanks).

The basic idea is known: touchscreen remains _always_ powered to handle input events
and wake up the device with a double tap.
User have to double tap on the _center_ of the screen (to limit accidentally wake ups).
Double tap is disabled by default. To enable it run the command bellow as su:

echo 1 > /sys/devices/virtual/input/lge_touch/dt_wake_enabled

If you run the above command during screen off, the command will remain pending until
the next power on. Then it will be actually executed.

Touchwake functionality is still implemented and it should be disabled if double tap to wake
is enabled.

1.8.8 (22/12/2013)
- Linux kernel 3.4.75
- dyn_hotplug: Activate the driver 1min after boot (because during init scripts execution all CPUs should be online to get initial settings. Fixes issue where a CPU governor could be set with default performance governor. Thanks to ihancioglu for reporting and reproducing the issue).
- cpufreq: set initial utilization to zero on device CPU addition

Full changelog:

Semaphore kernel sources

Please use it at your own risk!

Zip files in download section are for flashing from CWM recovery.

'j' versions are for JSS15J ROMs only
The normal files are for JWR66V &JWR66Y ROMs only

Alternative download from

XDA:DevDB Information
Semaphore, Kernel for the Google Nexus 4

Source Code:

Kernel Special Features:

Version Information
Status: Stable
Current Stable Version: 3.4.2
Stable Release Date: 2016-05-19

Created 2013-07-30
Last Updated 2016-05-19
Attached Files
File Type: zip - [Click for QR Code] (6.41 MB, 864 views)
File Type: zip - [Click for QR Code] (6.41 MB, 867 views)
File Type: zip - [Click for QR Code] (6.40 MB, 649 views)
File Type: zip - [Click for QR Code] (6.41 MB, 279 views)
File Type: zip - [Click for QR Code] (6.78 MB, 2203 views)
File Type: zip - [Click for QR Code] (6.79 MB, 4889 views)
The Following 641 Users Say Thank You to stratosk For This Useful Post: [ View ]