[KERNEL][N/O][F2FS][sdcardfs][MultiROM] jolla-kernel_bullhead_II-v28.0 [2017-12-16]

jollaman999

Senior Member
Aug 19, 2014
908
2,419
0
South Korea
github.com
[Kernel Features!!]
- Android 8.x.x support
- Android 7.x.x support
- Linux 3.10.107
- Protect ARP Spoofing attack!!
- MultiROM support!!
- multirom: Auto boot primary rom on password UI
- Added fingerprint boost driver
- leds-qpnp: Smooth pulsing LED for charging and notification
- leds-qpnp, mdss: Adjust charging LED brightness based on mdss backlight value
(If you adjust backlight brightness, LED's brightness will be change after replugged the cable.)
- sdcardfs support!!
- lazytime mount option support and enabled for ext4 and f2fs partitions!!
(See the details: https://lwn.net/Articles/621046/)
- GUI All-In-One Aroma installer applied
- jolla-kernel Updater support
- Improved msm_thermal
- Fixed yellow screen!!
- DoubleTap2Wake, DoubleTap2Sleep, Sweep2Wake, Sweep2Sleep
- Screen Off Volume Control (Control the device's volume and tracks while screen turned off.)
- Built with Linaro GCC 6.4.1
- Applied some CAF patches
- KSM (Kernel Samepage Merging) with suspend/resume support
- Use LZ4 compressed ramdisk image
- f2fs Support with recent stable branch patches
- NTFS Support
- exFAT Support
- Using Android device as USB Keyboard/Mouse
(See the details: https://play.google.com/store/apps/details?id=remote.hid.keyboard.client)
- Using Android device as USB storage or CD-Rom/DriveDroid Support
(About DriveDroid: https://play.google.com/store/apps/details?id=com.softwarebakery.drivedroid)
- mdss KCAL Control
- Dynamic Fsync support
- Sound Control
- Vibrator control
- Use CUBIC for default TCP congestion control
- Use BFQ for default I/O scheduler
- Available TCP Congestion controls : cubic, reno, bic, cdg, westwood, highspeed, htcp, vegas, veno, scalable, lp. yeah, illinois
- Available CPU governors : blu_active, despair, zzmoove, elementalx, wheatley, impulse, interactive, conservative, ondemand, userspace, powersave, bioshock, performance, relaxed
- Available I/O schedulers : noop, deadline, row, cfq, bfq, test-iosched, fiops, sio, sioplus, zen, vr, maple

+ Plus: Various patches and upstream patches


[Changeable tap counts DoubleTap2Wake]
You can set tap counts of doubletap2wake.
echo [tap_counts - 1] > /sys/android_touch/doubletap2wake
Available values are 0 to 9.
(0 will turn off the doubletap2wake.)

If you set 'echo 2 > /sys/android_touch/doubletap2wake'
Screen will turn on after 3 taps and you will tap 3 times in 300ms(100ms * tap counts).

If you set 'echo 9 > /sys/android_touch/doubletap2wake'
Screen will turn on after 10 taps and you will tap 3 times in 1000ms(100ms * tap counts).
Try it! :)

In Kernel Adiutor 'Half' is same as 'echo 1 > /sys/android_touch/doubletap2wake'. (Double taps)
And 'Full' is 'echo 2 > /sys/android_touch/doubletap2wake' (Triple taps)


[DoubleTap2Sleep on Status bar]
If you double tap the screen at status bar location(top of the screen), it will turn off the screen.


[Sweep2Sleep on Navigiation bar]
If you swipe the screen at navigation bar location(bottom of the screen), it will turn off the screen.


[Screen Off Volume Control]
== For Volume Control ==
If you sweep touchscreen up or down in SOVC_TIME_GAP (ms) time
and detach your finger, volume will increase/decrease
just one time.

Otherwise if you sweep touchscreen up or down and hold your
finger on touchscreen, volume will increase/decrease
continuously based on SOVC_VOL_REEXEC_DELAY (ms) time.

See the demo video
http://tp.jollaman999.com/jolla-kernel_AIO-bullhead/Screen_Off_Volume_Control.mp4

== For Track Control ==
If you sweep touchscreen right to left in
SOVC_TIME_GAP (ms) time, you can play next track.

Otherwise if you sweep touchscreen left to right,
you can play previous track.

Also if you sweep touchscreen right or left and hold your
finger on touchscreen, track will change
continuously based on SOVC_TRACK_REEXEC_DELAY (ms) time.

SOVC_TIME_GAP 250
SOVC_VOL_REEXEC_DELAY 250
SOVC_TRACK_REEXEC_DELAY 4000

Thanks to @flar2 for prevent to sleep bullhead's touchscreen.


== ARP Project ==
ARP Spoofing Attack Protecting Project. Protect to update MAC address of the gateway.

>> Currently implemented <<
- arp_project: Ignore reply when request not proceeded or source IP is different with requested target IP.
- arp_project: Ignore request when gateway update attempt detected from other hardware address.


== MSM Thermal Tunable options ==
Parameters are here '/sys/module/msm_thermal/parameters'

[msm_thermal Tunable options]
= poll_ms - msm_thermal will check the device's temperature every this milli seconds.
= temp_threshold - Limit the frequency of LITTLE when the temp is reached to this value.
= temp_big_threshold - Limit the frequency of big when the temp is reached to this value.
= temp_big_off_threshold - Turn off the big cores when the temp is reached to this value.
= temp_step_little - If 'temp_step_little = 4' and 'temp_threshold = 60', frequency will decrease like below.
└─temp = 60 --> LITTLE's max frequency will decrease one step.
└─temp = 62 --> LITTLE's max frequency will decrease one step.
└─temp = 63 --> LITTLE's max frequency will decrease one step.
└─temp = 64 --> LITTLE's max frequency will decrease two steps.
└─temp = 65 --> LITTLE's max frequency will decrease two steps.
└─temp = 68 --> LITTLE's max frequency will decrease three steps.
= temp_step_big - If 'temp_step_big = 2' and 'temp_threshold = 60', frequency will decrease like below.
└─temp = 60 --> big's max frequency will decrease one step.
└─temp = 61 --> big's max frequency will decrease one step.
└─temp = 62 --> big's max frequency will decrease two steps.
└─temp = 63 --> big's max frequency will decrease two steps.
└─temp = 64 --> big's max frequency will decrease three steps.
= freq_step_little - Frequency decrease step for little.
= freq_step_big - Frequency decrease step for big.
= temp_count_max_little - If this value is 3, LITTLE's max frequency will decrease 1 to 3 steps.
= temp_count_max_big - If this value is 5, big's max frequency will decrease 1 to 5 steps.



[Installation Instructions]
Just follow the aroma installer!
(If you install this kernel from other kernel, please re-flash your rom without wipe than flash this kernel!)


[Download]
http://tp.jollaman999.com/jolla-kernel_AIO-bullhead/

[Changelog]
https://github.com/jollaman999/jolla-kernel_AIO/blob/bullhead/META-INF/com/google/android/aroma/changelog/en.txt

[Thanks to..]
The Linux Kernel Archives : https://www.kernel.org/
LineageOS : https://github.com/LineageOS
Developers : nkk71, zhuowei, HashBang173, TheScarastic, jaegeuk, Tasssadar, savoca, flar2, franciscofranco and all of commited in their sources & all of xda developers

XDA:DevDB Information
jolla-kernel_bullhead, Kernel for the LG Nexus 5X

Contributors
jollaman999
Source Code: https://github.com/jollaman999/jolla-kernel_bullhead

Kernel Special Features:

Version Information
Status: Stable
Current Stable Version: II-v28.0
Stable Release Date: 2017-12-16

Created 2015-12-15
Last Updated 2017-12-16
 
Last edited:

khartaras

Senior Member
Feb 14, 2011
234
111
0
Many thanks for this, my phone is affected by a slightly yellow screen, compared to my friend's 5x.
This color calibration pleases my eyes, I haven't compared it with his "perfect" phone yet, so I can't attest to accuracy, but it's certainly pleasant.

Again, thanks.
 
  • Like
Reactions: jollaman999

jollaman999

Senior Member
Aug 19, 2014
908
2,419
0
South Korea
github.com
[jolla-kernel_bullhead-v3.0]

== Kernel ==
- hotplug: Add msm_hotplug driver and adaptive for big and little
- touchscreen: Add doubletap2wake and sweep2wake
- touchscreen: Temporary enable dt2w when playing music
- leds-qpnp: Smooth blinking charging LED & smooth notifier LED
- power:qpnp-charger: extended charge time from 30s to 100s when battery status is near to full
- hwrng: Avoid manual device_create_file() calls
- cpufreq: Add impulse elementalx, wheatley, impulse, conservative governors
- cpufreq: interactive: Applied some of patches
- tcp: enable sockets to use MSG_FASTOPEN by default
- mdss_fb: backlight dimmer option
- power: Disable the lge crash handler
- f2fs: Fix a system panic caused by f2fs_follow_link
- f2fs: remove unnecessary new_valid_dev() check
- f2fs: Add f2fs_kvfree from f2fs-stable repository
- random: Add /dev/frandom support
- random, random32: Applied Linux upstream patches
- zram, zsmalloc, zpool: Appiled upstream patches
- crypto: msm: Appiled some of patches
- md: Appiled some of patches
- dm verity: Appiled some of patches

== Recovery ==
- Built with lastest omni android-6.0 branch TWRP sources
- Use lastest cm-13.0 sources as base
- f2fs-tools: v1.6.0 applied
- jolla-kernel_bullhead-v3.0 applied

== AIO ==
- fstab.bullhead: Fix f2fs boot issue
- A2DPChecker: Temporary enable dt2w when playing music
- Revert "disable device verification of /system /vendor"