Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incorporate Testing 1.8.0 into upstreamed branch #1

Closed
wants to merge 243 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
243 commits
Select commit Hold shift + click to select a range
6a7773e
proc: Remove verifiedbootstate flag from /proc/cmdline
kerneltoast Oct 21, 2016
f6a8be8
proc: Remove additional SafetyNet flags from /proc/cmdline
kerneltoast May 22, 2017
7b24ae8
Add SIO and FIOPS i/o schedulers
flar2 Nov 9, 2013
3d281b6
FIOPS: update for linux 3.18
flar2 May 22, 2016
0443583
fiops-iosched: update for linux 4.9
flar2 Mar 19, 2018
360f941
SIO: update for linux 3.18
flar2 May 22, 2016
e9ebeab
sio-iosched: cast parameters to unsigned long
flar2 Mar 19, 2018
46fd617
block: add zen scheduler
andip71 Sep 5, 2016
8c6fa8c
zen-iosched: cast parameters to unsigned long
flar2 Mar 19, 2018
3af4a35
block: add MAPLE I/O scheduler and set it as default
frap129 Aug 20, 2017
2355eea
maple-iosched: cast parameters to unsigned_long
flar2 Mar 19, 2018
f8569ca
maple-iosched: convert to use fb_notifier
flar2 Mar 19, 2018
9a4ee71
block: fix elevator ops
flar2 May 22, 2019
2914e37
devfreq: Introduce devfreq boost driver
kerneltoast Mar 3, 2019
4cc1052
devfreq_boost: Add DDR GPU and Smurfversion
pappschlumpf Jun 14, 2020
1f8cb25
devfreq_boost: Update for OP8 Pro
pappschlumpf Jun 14, 2020
afff8c5
devfreq_boost: remove unused variables
pappschlumpf Aug 7, 2020
4ea8f27
msm_adreno_tz: add adrenoboost parameter
flar2 Jul 30, 2016
1b4d0bc
adrenoboost: finetuning algorithm - scale it a bit down
tbalden Jul 30, 2016
c8f360b
adrenoboost: disable by default
flar2 Sep 11, 2016
c041c49
adrenoboost: stats is now a pointer
flar2 May 8, 2020
75313b4
PM: devfreq: Use high priority workqueue
Jan 8, 2014
7d9a599
Enabled ZEN,SIO,FIOPS, MAPPLE and BFQ IOSCHEDS
Jimbo77 Dec 13, 2020
ef4b38d
Jimbok-R-1.1.1
Jimbo77 Dec 13, 2020
f35c069
kernel: Add API to mark IRQs and kthreads as performance critical
kerneltoast Nov 30, 2018
e1d72ed
kthread: Add API to create kthreads bound to low-power CPUs
kdrag0n Mar 17, 2019
a4f3b44
removed warning
Jimbo77 Dec 13, 2020
0173c26
cpumask: Add cpumasks for big and little CPU clusters
Jimbo77 Dec 13, 2020
6416312
Enabled devfreq boost driver and tuned it, JimboK release 1.2.0
Jimbo77 Dec 13, 2020
adb3755
Enabled devfreq boost driver and tuned it, JimboK release 1.2.0
Jimbo77 Dec 13, 2020
d88c315
workqueue: change permissions to allow root control of wq_power_effic…
Jul 7, 2017
29fd165
kgsl: Increase priority of RT thread
TheCrazyLex Dec 31, 2016
be8748d
msm: kgsl: run kgsl-workqueue as a high prio wq
franciscofranco Jun 21, 2018
2eefa3f
kcal: sde_hw: color proc v4: add RGB bias
tbalden Jun 14, 2018
6642a08
drm: msm: kcal: export rgb to userspace and clean it up
franciscofranco Jun 21, 2018
bd8358d
drm: msm: kcal: hue, saturation, value and contrast adjustments
flar2 Jun 23, 2018
917ea78
drm: msm: kcal: make the userspace module param vars static and use s…
franciscofranco Jun 27, 2018
ca964c6
kcal: pie: fix used pcc setup for sde path
tbalden Sep 9, 2018
cb638e4
Drivers: Introduce K-lapse v5.0
tanish2k09 Nov 28, 2019
06cadfb
KLAPSE : Make default flow_freq value configurable at compile time fr…
tanish2k09 Nov 28, 2019
27462b6
KLAPSE : Fix prototype warn
tanish2k09 Nov 28, 2019
d4fe937
KLAPSE : Use appropriate callback for data types
tanish2k09 Nov 28, 2019
f07b1b2
KLAPSE : Revise dimmer auto switch documentation
tanish2k09 Nov 28, 2019
3233467
KLAPSE: Switch DEFINE_TIMER callbacks to struct timer_list *
flar2 May 8, 2020
ae3acb4
Cepheus: Disable GFS for better UI performance
EviraKernel Oct 19, 2019
fde95f2
boeffla_wl_blocker: add generic wakelock blocker driver v1.0.0
Jimbo77 Sep 18, 2020
2c5fa09
update to boeffla WL
Jimbo77 Sep 18, 2020
c3207e9
boeffla_wl_blocker: update to wakelock blocker driver v1.0.1
andip71 Aug 29, 2017
83d55f5
revert my fuckery on Boeffla WL
Jimbo77 Sep 18, 2020
401c8c3
boeffla_wl_blocker: update to wakelock blocker driver v1.1.0
andip71 Aug 31, 2017
87df9db
boeffla_wakelock_blocker: don't block wakelocks by default
flar2 Nov 14, 2018
5f7a2d2
power: Block all them crazy wakelocks just to make sultan wet his own…
franciscofranco Oct 31, 2018
20f3600
config: Organized mod sections, enabled Klapse and WakeLock blocker. …
Jimbo77 Dec 16, 2020
e1704d3
Disable Android Verified Boot (avb) flag
Jimbo77 Sep 20, 2020
3cdbc3b
module.c: allow stock modules to load
flar2 May 8, 2020
fbef85e
Allow stock modules to load
flar2 May 22, 2019
a20a2bb
Config: Updating the mods section
Jimbo77 Dec 16, 2020
f0cfa13
config: remove modversion / signatures usage
Jimbo77 Dec 16, 2020
c09e488
sm8250: add pstore region
Jimbo77 Dec 16, 2020
6cfec0f
msm-poweroff: keep console-ramoops alive
Jimbo77 Dec 16, 2020
c5f14a3
Config: Enabled pstore
Jimbo77 Dec 16, 2020
e23b06e
Revert " msm-poweroff: keep console-ramoops alive"
Jimbo77 Dec 16, 2020
427ec1f
sm8250: edit ramoops region
Jimbo77 Dec 16, 2020
3a7a0e0
Config: Version 1.4.0
Jimbo77 Dec 16, 2020
d2a44d9
Revert "config: remove modversion / signatures usage"
Jimbo77 Dec 16, 2020
457db81
Revert "Config: Enabled pstore"
Jimbo77 Dec 16, 2020
5c805dc
sm8250: switch to BBR + FQ
Jimbo77 Dec 18, 2020
8aab929
Extend vm stats interval
pappschlumpf Jul 23, 2020
07cc82e
Allow readahead to be 0
Jimbo77 Oct 4, 2020
88e3512
dts: Up thermal limits
pappschlumpf Aug 4, 2020
4052116
thermal: always return policy max
pappschlumpf Jan 24, 2020
55bf0bd
thermal: remove wq highprio setting
pappschlumpf Feb 13, 2020
1f7b5be
Allow f2fs to build without stats
pappschlumpf Jul 23, 2020
d479401
enlarge TA memory
binson-xu Jun 5, 2020
055d658
Increase the crash reason size
binson-xu Jun 5, 2020
9913352
Added fsync on/off support.
Jimbo77 Oct 4, 2020
763c932
Slimbus OC
acervenky Aug 28, 2019
a4c9a11
Kernel/sched: Reduce latency for better responsiveness
holyangel Jun 12, 2016
fa2fb4d
Reduce Latency [Pafcholini]
friedrich420 Jan 16, 2015
dcd13f4
ctl:reduce offline delay time
Dabug123 May 17, 2020
334907c
mmc: disable CRC and add toggle
StorySea Mar 15, 2020
4293c38
gpu: drm: use power efficient workingqueues
freak07 Jul 19, 2019
590d1ee
mm: vmstat: use power efficient workingqueues
freak07 Feb 22, 2019
0a13aee
platform: ipa: use power efficient workingqueues
freak07 Jul 19, 2019
0cbd845
sched/fair: Disable LB_BIAS by default
deggeman Aug 9, 2018
5af47fc
msm: msm_bus: Kill transaction logging functionality
kdrag0n May 9, 2020
bd1500f
msm: bus_arb: disable debug logging
kristofpetho May 9, 2020
8a900c8
msm: vidc: disable debug logs
franciscofranco May 9, 2020
15fd780
msm_bus: remove tracer
Jimbo77 Dec 18, 2020
510c2b4
Silence CPU state log in dmesg
kristofpetho May 11, 2020
dd0ec53
irq: silence 'irq no longer affine' messages
kristofpetho May 10, 2020
a6281da
msm: vidc: remove vidc dmesg logspam
kristofpetho May 11, 2020
cecaec7
cnss2: Omit debug logging code
kristofpetho May 24, 2020
32ecd49
dts: qcom: disable unneeded dts files
kristofpetho May 24, 2020
87ffd8d
wcnss_wlan: queue work on power efficient workingqueues
freak07 Feb 20, 2019
604f36f
msm: kgsl: Turn debugfs off
msdx321 Mar 19, 2019
8e03fa3
arm64: Implement optimised checksum routine
rmurphy-arm Jan 15, 2020
74b37d5
arm64: csum: Fix pathological zero-length calls
rmurphy-arm Jan 17, 2020
6c94d08
sched/boost: Inhibit boosting functionality
EviraKernel Jun 16, 2020
5c15d53
kgsl/adreno: Properly set GPU timeout
celtare21 Jan 10, 2019
b865fd6
allow power of dsy
EviraKernel Mar 24, 2020
2647f5d
dsi-staging/dsi_panel: enable ULPS
StorySea Mar 15, 2020
0fd01b9
vmlinux.lds.h: Coalesce LLVM dead code elimination sections
kdrag0n Apr 3, 2020
10bba9c
HACK: scripts: Makefile: disable size_append
jesec Mar 25, 2020
c80cf24
sm8250: enable ARM64 GHASH and NEON-accelerated AES
Jimbo77 Dec 18, 2020
16936ac
sm8250: enable qcom tweak for userspace lmk
Jimbo77 Dec 18, 2020
fc27735
sm8250: enable static map devfreq driver
Jimbo77 Dec 18, 2020
0c6cc71
Fixed errorneous mod in this commit c231ce44e1e272c6037c3a83033d0bd47…
Jimbo77 Dec 18, 2020
d23708d
uci: backlight dimmer: smoothen the dimming changes thru the whol range
tbalden Oct 21, 2020
c321ac5
fixed a derp on this commit d23708de52bfc369785d010e6dae9fe68a6cb72b
Jimbo77 Dec 18, 2020
2e1f9da
kernel: Use the stock config for /proc/config.gz
flar2 May 22, 2019
15ddd3c
updated defconfig on used on this commit 2e1f9da22b325e7e8a907fdf4854…
Jimbo77 Dec 18, 2020
91e8397
Revert "fixed a derp on this commit d23708de52bfc369785d010e6dae9fe68…
Jimbo77 Dec 18, 2020
6c78ed1
Revert "uci: backlight dimmer: smoothen the dimming changes thru the …
Jimbo77 Dec 18, 2020
fb73f11
Revert "Fixed errorneous mod in this commit c231ce44e1e272c6037c3a830…
Jimbo77 Dec 18, 2020
315f522
Revert " msm_bus: remove tracer"
Jimbo77 Dec 18, 2020
653952e
Revert "Revert "config: remove modversion / signatures usage""
Jimbo77 Dec 19, 2020
b3c0e4d
1.5.0
Jimbo77 Dec 19, 2020
f921984
mm/vmalloc: do not keep unpurged areas in the busy tree
urezki Sep 23, 2019
907477f
mm/vmalloc: rework vmap_area_lock
urezki Dec 1, 2019
0c666f9
mm: do not free pages that failed to flush from vbswap
Jimbo77 Oct 8, 2020
9a756cd
mm: zero-seek shrinkers
hnaz Oct 26, 2018
316eb27
mm: Always overcommit memory by default
tytydraco Jul 31, 2019
50d22c0
fs: dynamic fsync 2.3
Jimbo77 Oct 8, 2020
6afbbaa
missing core file for Dynamic Sync Control
Jimbo77 Oct 9, 2020
6500758
dts: kona-gpu: Remove qos active latency node
libxzr Aug 31, 2020
ab2c4e4
dts: kona: Set GPU idle timeout to 64 ms
kerneltoast Aug 12, 2018
a8e21cb
cpuset: Force nice=10 for background tasks
libxzr Apr 30, 2020
e844f67
msm: kgsl: Increase worker thread priority
Jimbo77 Oct 15, 2020
e7b3778
zram: zcomp: Remove lzo from backends
Jimbo77 Oct 15, 2020
7896c2c
lib/lz4: update LZ4 decompressor module
Oct 30, 2018
00ad829
include/linux/lz4.h: fix spelling and copy-paste errors in documentation
tom93 Jul 16, 2019
64bb873
lz4: do not export static symbol
torvalds Sep 20, 2019
1332a8c
lz4: staticify functions
arter97 Sep 30, 2019
ad15b7f
lz4: remove unused functions
arter97 Sep 30, 2019
53da39f
configs: Disable ipc logging
Jimbo77 Dec 20, 2020
021bd34
config: enabled ZSTD CRYPTO, made it default compression for ZRAM, ad…
Jimbo77 Dec 20, 2020
16d14f5
Config: Enabled Dynamic FSYNC
Jimbo77 Dec 21, 2020
2443885
Config: Partially revert commit 5c805dc8f72a8021c8f4466ba10803c2d0349…
Jimbo77 Dec 21, 2020
5bc27f0
Config: 1.6.0
Jimbo77 Dec 21, 2020
9bd9e8d
Config: Disabled several DEBUG functions that should not be present i…
Jimbo77 Dec 23, 2020
1638515
fs: Removed reference to sdfat_debug_warn_on after disabling DEBUG fu…
Jimbo77 Dec 23, 2020
66536d0
added and enabled BBR2 TCP Protocol
Jimbo77 Oct 27, 2020
db252f8
bbr2: fully disable log and debug
pappschlumpf Aug 8, 2020
cb25307
UPSTREAM: tcp: refactor DCTCP ECN ACK handling
yuchungcheng Oct 8, 2018
433fe3c
tcp_bbr: refactor bbr_target_cwnd() for general inflight provisioning
Jan 23, 2019
d534b17
tcp_bbr: centralize code to set gains
nealcardwell Oct 17, 2018
28c99a3
FROMGIT: net-tcp_bbr: broaden app-limited rate sample detection
nealcardwell Jun 11, 2019
0046931
BACKPORT: FROMGIT: net-tcp_rate: consolidate inflight tracking approa…
yuchungcheng Mar 28, 2018
7abfbb7
FROMGIT: net-tcp_rate: account for CE marks in rate sample
yuchungcheng Mar 28, 2018
105466e
BACKPORT: FROMGIT: net-tcp_bbr: v2: shrink delivered_mstamp, first_tx…
nealcardwell Jun 25, 2018
a363839
FROMGIT: net-tcp_bbr: v2: snapshot packets in flight at transmit time…
nealcardwell Aug 5, 2017
ce90f28
FROMGIT: net-tcp_bbr: v2: count packets lost over TCP rate sampling i…
nealcardwell Oct 13, 2017
a8232ff
FROMGIT: net-tcp_bbr: v2: export FLAG_ECE in rate_sample.is_ece
nealcardwell Nov 19, 2018
43b6e7e
FROMGIT: net-tcp_bbr: v2: introduce ca_ops->skb_marked_lost() CC modu…
nealcardwell Aug 8, 2018
64a33c6
FROMGIT: net-tcp_bbr: v2: factor out tx.in_flight setting into tcp_se…
nealcardwell May 8, 2019
1540751
FROMGIT: net-tcp_bbr: v2: adjust skb tx.in_flight upon merge in tcp_s…
nealcardwell May 2, 2019
686559c
BACKPORT: FROMGIT: net-tcp_bbr: v2: adjust skb tx.in_flight upon spli…
nealcardwell May 2, 2019
0f209d6
FROMGIT: net-tcp: add new ca opts flag TCP_CONG_WANTS_CE_EVENTS
yousukseung May 24, 2018
a0c4274
UPSTREAM: tcp: add tcp_wstamp_ns socket field
Jimbo77 Oct 27, 2020
a1f5623
missed to add file to last tcp commit
Jimbo77 Oct 27, 2020
16ec9fb
BACKPORT: tcp: do not change tcp_wstamp_ns in tcp_mstamp_refresh
Oct 15, 2018
6e2ac58
tcp: add tcp_reset_xmit_timer() helper
Oct 23, 2018
6c8927b
tcp: drop dst in tcp_add_backlog()
Nov 20, 2018
29c140d
tcp: address problems caused by EDT misshaps
Nov 24, 2018
344a6c4
tcp: take care of compressed acks in tcp_add_reno_sack()
Nov 27, 2018
66b72a3
fs/proc: hide magisk mounts for IsolatedService
Jimbo77 Oct 29, 2020
0b7742d
Enabled Magisk PROC_MAGISK_HIDE_MOUNT
Jimbo77 Dec 24, 2020
63b9511
Config: 1.7.0
Jimbo77 Dec 24, 2020
fc6a7fd
Config: Enabled DEBUG_FS back, disabling it causes bootloop
Jimbo77 Dec 24, 2020
a705400
config: enabled ZRAM optimization parameters
Jimbo77 Dec 24, 2020
e735857
simple_lmk: Introduce Simple Low Memory Killer for Android
kerneltoast Jun 24, 2019
18767e9
simple_lmk: Fix pages_found calculation
kerneltoast Jul 20, 2019
f6836be
simple_lmk: Remove kthread_should_stop() exit condition
kerneltoast Aug 21, 2019
c4fdf6c
simple_lmk: Use proper atomic_* operations where needed
kerneltoast Aug 21, 2019
2cabfa1
simple_lmk: Fix broken multicopy atomicity for victims_to_kill
kerneltoast Nov 4, 2019
00d331a
simple_lmk: Make reclaim deterministic
kerneltoast Nov 4, 2019
fbed438
simple_lmk: Clean up some code style nitpicks
kerneltoast Nov 4, 2019
791aa91
simple_lmk: Increase default minfree value
kerneltoast Nov 6, 2019
6adcfe3
simple_lmk: Don't queue up new reclaim requests during reclaim
kerneltoast Jan 21, 2020
a1e772a
simple_lmk: Update copyright to 2020
kerneltoast Feb 7, 2020
c5e6e6b
simple_lmk: Remove compat cruft not specific to 4.14
kerneltoast Feb 7, 2020
6a1e835
simple_lmk: Print a message when there are no processes to kill
kerneltoast Feb 7, 2020
822ace7
simple_lmk: Disable OOM killer when Simple LMK is enabled
kerneltoast Feb 8, 2020
8ad177c
simple_lmk: Mark victim thread group with TIF_MEMDIE
kerneltoast Feb 9, 2020
9e76dfd
simple_lmk: Report mm as freed as soon as exit_mmap() finishes
kerneltoast Feb 10, 2020
aa4b464
simple_lmk: Simplify tricks used to speed up the death process
kerneltoast Feb 8, 2020
969775e
simple_lmk: Ignore tasks that won't free memory
kerneltoast Feb 8, 2020
2d7fe43
simple_lmk: Add a timeout to stop waiting for victims to die
kerneltoast Feb 8, 2020
5e372ef
simple_lmk: Place victims onto SCHED_RR
kerneltoast Feb 8, 2020
e71b12e
simple_lmk: Relax memory barriers and clean up some styling
kerneltoast Feb 19, 2020
9d20dcf
simple_lmk: Include swap memory usage in the size of victims
kerneltoast Feb 19, 2020
e02e417
mm: vmpressure: scale pressure based on reclaim context
Mar 31, 2015
2e268db
mm: vmpressure: account allocstalls only on higher pressures
Aug 19, 2015
65dd902
simple_lmk: Use vmpressure notifier to trigger kills
kerneltoast Feb 25, 2020
24ea0cd
simple_lmk: Update adj targeting for Android 10
kerneltoast Feb 26, 2020
d8eafa7
mm: vmpressure: Don't exclude any allocation types
kerneltoast Feb 28, 2020
77e19df
mm: vmpressure: Interpret zero scanned pages as 100% pressure
kerneltoast Feb 28, 2020
7a698f1
mm: vmpressure: Don't cache the window size
kerneltoast Feb 28, 2020
acc47ed
mm: Adjust tsk_is_oom_victim() for Simple LMK
kerneltoast Mar 27, 2020
45c6403
mm: Don't warn on page allocation failures for OOM-killed processes
kerneltoast Mar 27, 2020
06c2265
mm: vmpressure: Ignore allocation orders above PAGE_ALLOC_COSTLY_ORDER
kerneltoast Apr 5, 2020
d79a998
simple_lmk: Consider all positive adjs when finding victims
kerneltoast May 14, 2020
01dc355
simple_lmk: Hold an RCU read lock instead of the tasklist read lock
kerneltoast May 21, 2020
c66310e
simple_lmk: Remove unnecessary clean-up when timeout is reached
kerneltoast Jun 11, 2020
1ac1539
VFS: use synchronize_rcu_expedited() in namespace_unlock()
Nov 29, 2018
60496e7
simple_lmk: Print a message when the timeout is reached
kerneltoast Sep 10, 2020
f046473
simple_lmk: Add !PSI dependency
kerneltoast Sep 10, 2020
03d59b3
simple_lmk: Update Kconfig description for VM pressure change
kerneltoast Sep 10, 2020
517abe9
proc: Don't let Google Camera run in the background
Jimbo77 Dec 27, 2020
5fa509d
proc: Kill facebook crap background
Official-Ayrton990 Nov 29, 2020
eabe904
arm64: dts: lito: Power off DSI PHY during idle PC
kdrag0n Nov 30, 2020
5391ae7
cpufreq: Kill userspace CPU boosting entirely
kerneltoast Nov 30, 2020
95ed76f
scripts/mkcompile_h: remove Clang's URL from kernel version
kristofpetho Jun 17, 2020
fa7e964
kernel: power: suspend: switch to sleep2idle
Official-Ayrton990 Nov 27, 2020
c5086f2
sched/walt: Fix a potential accounting issue during window size change
DefinitelyNOTobscenelyvague Sep 20, 2020
34f1b85
sched/fair: use actual cpu capacity to calculate boosted util
Rickyiu May 6, 2020
0a2cdae
binder: set binder_debug_mask=0 to suppress logging
Aug 12, 2016
4b62a8d
binder: Reserve caches for small, high-frequency memory allocations
kerneltoast Jun 12, 2019
5a43dca
net: Allow BPF JIT to compile without module support
tytydraco Aug 16, 2019
1ea40c0
arm64: kernel: Allow perf events without tracing
tytydraco Mar 26, 2020
80e383a
dts: kona tweak boot args
Jimbo77 Dec 27, 2020
8c868f9
cpu_input_boost: Introduce driver for event-based CPU boosting
kerneltoast Apr 22, 2019
778a733
cpu_input_boost: Expose compile-time settings as module parameters
kdrag0n Nov 24, 2019
eaa547c
cpu_input_boost: Allow configuration of each cluster's minimum frequency
kdrag0n Nov 24, 2019
c19b8e3
cpu_input_boost: Allow configuration of each cluster's minimum idle f…
0ctobot Nov 25, 2019
48aad18
cpu_input_boost: add support for boost freqs lower than min freq
YaroST12 Jun 20, 2019
bb80463
config: enabled SLMK, CPU_INPUT_BOOST, SUSPEND_SKIP_SYNC
Jimbo77 Dec 28, 2020
95a4386
1.8.0
Jimbo77 Dec 28, 2020
1c512b3
cpumask: Add cpumasks for big and LITTLE CPU clusters
kerneltoast Apr 15, 2019
3c25d42
small fixes for CPU_INPUT_BOOST
Jimbo77 Dec 28, 2020
1555b2f
added CPU_INPUT_BOOST paramaters
Jimbo77 Dec 28, 2020
9aac28f
config: finetune CPU_INPUT_BOOST and DEVFREQ_INPUT_BOOST for Samsung …
Jimbo77 Dec 28, 2020
249db2f
config: fine tune SLMK
Jimbo77 Dec 28, 2020
c5118cf
config: finetune further the newest additions
Jimbo77 Dec 29, 2020
78aa00c
net/wireguard: add wireguard importer
flar2 Mar 19, 2018
a13aee2
scripts/wireguard: only allow one execution at a time, with others fa…
zx2c4 Jun 25, 2018
074ac4b
scripts/wireguard: more reliable version selection
zx2c4 Jun 25, 2018
a96f0b3
scripts/wireguard: Limit connection time to 30 seconds
zx2c4 Dec 21, 2018
b774d17
scripts/wireguard: fetch: use new module source location
zx2c4 Dec 29, 2019
0b919a1
net/wireguard: add wireguard importer
Jimbo77 May 20, 2020
47bb05e
config: Final version of tunables, bumped to 1.8.0
Jimbo77 Dec 30, 2020
f45747b
Merge branch 'testing-1.9.0' into testing-1.8.0
Jimbo77 Jan 17, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
81 changes: 81 additions & 0 deletions Documentation/K-Lapse/K-Lapse.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
# K-lapse : A kernel level livedisplay module

### What is it?
Kernel-based Lapse ("K-lapse") is a linear RGB scaling module that 'shifts' RGB based on time or brightness.
This concept is inspired from LineageOS (formerly known as 'CyanogenMod') ROM's feature "livedisplay" which also changes the display settings (RGB, hue, temperature, etc) based on time.

### Why did you decide to make this? (Tell me a story).
I (personally) am a big fan of the livedisplay feature found on LineageOS ROM. I used it every single day, since Android Lollipop.
Starting from Android Nougat, a native night mode solution was added to AOSP and it felt like livedisplay was still way superior,
thanks to its various options (you could say it spoiled me, sure). I also maintained a kernel (Venom kernel) for the device I was using at that time.
It was all good until the OEM dropped support for the device at Android M, and XDA being XDA, was already working on N ROMs.
The issue was, these ROMs weren't LineageOS or based on it, so livedisplay was... gone. I decided I'll try to bring that feature to every other ROM.
How would I do that? Of course! The kernel! It worked on every single
ROM, it was the key! I started to work on it ASAP and here it is, up on
GitHub, licensed under GPLv2 (check klapse.c), open to everyone :)

### How does it work?
Think of it like a f.lux alternative, but inside a kernel and ROM-independent.
Klapse is dependent on an RGB interface (like Gamma on MTK and KCAL on SD chipsets).
It fetches time from the kernel, converts it to local time, and selects and RGB set based on the time. The result is really smooth shifting of RGB over time.
LiveDisplay at the ROM-level, is said to consume some serious battery, but k-lapse doesn't have any extra costs.

### How does it really work (dev)?
Klapse mode 1 (time-based scaling) uses a method `void klapse_pulse(unsigned long data)` that should ideally be called every minute.
This is done using a kernel timer, that is asynchronous so it should be handled with care, which I did (handling races).
The pulse function fetches the current time and makes calculations based on the current hour and the values of the tunables listed down below.

Klapse mode 2 (brightness-based scaling) uses a method `void set_rgb_slider(<type> bl_lvl)` where type is the data type of the brightness level used in your kernel source.
(OnePlus 6 uses u32 data type for bl_lvl)
set_rgb_slider needs to be called/injected inside a function that sets brightness for your device.
(OnePlus 6 uses dsi_panel.c for that, check out the diff for that file in op6 branch)
Since v5.0, mode 2 introduces something called "K-lapse flow", that will try to shift the RGB linearly instead of a sudden change.
(Note that flow depends hugely on how fast KCAL reacts to changes and how frequently can it change without skipping 'rgb frames')

### What all stuff can it do?
1. Emulate smooth transitioning night mode with the proper RGB settings
2. Smoothly scale from one set of RGB to another set of RGB in integral intervals over time.
3. Reduce perceived brightness using dimmer by reducing the amount of color on screen. Allows lower apparent brightness than system permits.
4. Scale RGB based on brightness of display (low brightness usually implies a dark environment, where yellowness is probably useful).
5. Automate the perceived brightness independent of whether klapse is enabled, using its own set of start and stop hours.
6. Be more efficient,faster by residing inside the kernel instead of having to use the HWC HAL like android's night mode.
7. (On older devices) Reduce stuttering or frame lags caused by native night mode.
8. An easier solution against overlay-based apps that run as service in userspace/Android and sometimes block apps asking for permissions.
9. Give you a Livedisplay alternative if it doesn't work in your ROM/your ROM doesn't include it/uses too much battery.
10. Impress your crush so you can get a date (Hey, don't forget to credit me if it works).

### Alright, so this is a replacement for night mode?
Perhaps. One can say this is merely an alternative for LineageOS' Livedisplay, but inside a kernel. Night mode is a sub-function of both Livedisplay and K-lapse.
Most comparisons here were made with night mode because that's what an average user uses, and will relate to the most.
There is absolutely no reason for your Android kernel to not have K-lapse. Go ahead and add it or ask your kernel maintainer to. It's super-easy!

### What can it NOT do (yet)?
1. Grayscale temperature shifts
2. Invert temperature shifts

### I want more! Tell me what can I customize!
All these following tunables are found in their respective files in /sys/module/klapse/parameters/
```python
1. enabled_mode : A switch to enable or disable klapse. Values : 0 = off, 1 = time mode, 2 = brightness mode
2. start_minute : The minute stamp at which klapse should start scaling the RGB values from daytime to target (see next points). Values : 0-1439
3. stop_minute : The minute stamp by which klapse should scale back the RGB values from target to daytime (see next points). Values : 0-1439
4. daytime_r,g,b : The RGB set that must be used for all the time outside of start and stop minutes range (mode 1), or above bl_range_upper (mode 2)
5. target_r,g,b : The RGB set that must be scaled towards for all the time inside of start and stop minutes range (mode 1), or below bl_range_lower (mode 2)
6. target_minutes : Controls how soon the RGB reaches from daytime to target inside of start and stop hour range. Once target is reached, it remains constant till fadeback_minutes (#13) before stop hour, where target RGB scales back to daytime RGB.
7. dimmer_factor : From the name itself, this value has the ability to bend perception and make your display appear as if it is at a lesser brightness level than it actually is at. It works by reducing the RGB values by the same factor. Values : 10-100, (100 means accurate brightness, 50 means 50% of current intensity, you get it)
8. dimmer_factor_auto : A switch that allows you to automatically set the dimmer factor in a set time range. Value : (read) N/Y (write) 0/1
9. dimmer_auto_start_minute : The minute stamp at which dimmer_factor should be applied. Works only if #8 is 1. Values : 0-1439
10. dimmer_auto_stop_minute : The minute stamp at which brightness_factor should be reverted to 100. Works only if #8 is 1. Values : 0-1439
11. bl_range_upper and _lower : The brightness range within which klapse should scale from daytime to target_rgb. Works only if #1 is 2. Values : MIN_BRIGHTNESS-MAX_BRIGHTNESS
12. pulse_freq : The amount of milliseconds after which klapse_pulse is called. A more developer-targeted tunable. Only works when one or both of #1 and #8 are 1. Values : 50-600000 (Represents 50ms to 10 minutes)
13. fadeback_minutes : The number of minutes before klapse_stop_hour when RGB should start going back to daytime_rgb. Only works when #1 is 1. Values : 0-minutes between #2 and #3
14. flow_freq : The amount of milliseconds after which 1 RGB frame is shifted. Somewhat developer-targeted parameter. Only works when mode 2 is enabled. Values : 50-600000 (Represents 50ms to 10 minutes)
```

### Worth noting for kernel manager apps:
1. Dimmer options can all work independent of enabled_mode values. K-lapse doesn't have to be on for dimmer to work. DO NOT HIDE DIMMER OPTIONS IN UI. HAVE A SEPARATE SECTION IN THE PAGE FOR DIMMER CONTROLS.
2. bl_range_upper and bl_range_lower share the same input handler, so if you input a value larger than upper inside the lower file, the value will automatically be assigned to upper. Same goes the other way. Putting a smaller value in upper than lower will change lower instead. It is guaranteed that upper will be a higher value than lower, unless some retard messed it up at compile time.
3. flow_freq is recommended to be added as a slightly not-so-obvious control, because it can change behaviour of scaling and the user will probably blame you or me for being a retard.
4. Parameters only available for use in mode 1 (time) : start_minute, stop_minute, target_minutes, fadeback_minutes.
5. Parameters only available for use in mode 2 (brightness) : bl_range_upper, bl_range_lower, flow_freq
6. Parameters ALWAYS available : daytime_r, daytime_g, daytime_b, target_r, target_g, target_b, pulse_freq, and all the dimmer options.
1 change: 1 addition & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ KBUILD_CFLAGS := -Wall -Wundef -Wno-trigraphs \
-Wno-unused-variable \
-Wno-declaration-after-statement \
-Wno-pointer-compare \
-Wno-int-conversion \
-std=gnu89
KBUILD_CPPFLAGS := -D__KERNEL__
KBUILD_AFLAGS_KERNEL :=
Expand Down
14 changes: 14 additions & 0 deletions arch/arm64/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -786,6 +786,20 @@ config NR_CPUS
# These have to remain sorted largest to smallest
default "64"

config LITTLE_CPU_MASK
int "Bitmask of available LITTLE CPUs"
help
This is a bitmask specifying which of the CPUs are LITTLE in a
heterogeneous system. Use 0 if you are unsure, which just results in
this storing the bitmask of all available CPUs.

config BIG_CPU_MASK
int "Bitmask of available big CPUs"
help
This is a bitmask specifying which of the CPUs are big in a
heterogeneous system. Use 0 if you are unsure, which just results in
this storing the bitmask of all available CPUs.

config HOTPLUG_CPU
bool "Support for hot-pluggable CPUs"
select GENERIC_IRQ_MIGRATION
Expand Down
16 changes: 8 additions & 8 deletions arch/arm64/boot/dts/qcom/Makefile
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# SPDX-License-Identifier: GPL-2.0
dtb-$(CONFIG_ARCH_QCOM) += apq8016-sbc.dtb
dtb-$(CONFIG_ARCH_QCOM) += apq8096-db820c.dtb
dtb-$(CONFIG_ARCH_QCOM) += ipq8074-hk01.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8916-mtp.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8992-bullhead-rev-101.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8994-angler-rev-101.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8996-mtp.dtb
dtb-$(CONFIG_ARCH_QCOM) += sdm845-mtp.dtb
#dtb-$(CONFIG_ARCH_QCOM) += apq8016-sbc.dtb
#dtb-$(CONFIG_ARCH_QCOM) += apq8096-db820c.dtb
#dtb-$(CONFIG_ARCH_QCOM) += ipq8074-hk01.dtb
#dtb-$(CONFIG_ARCH_QCOM) += msm8916-mtp.dtb
#dtb-$(CONFIG_ARCH_QCOM) += msm8992-bullhead-rev-101.dtb
#dtb-$(CONFIG_ARCH_QCOM) += msm8994-angler-rev-101.dtb
#dtb-$(CONFIG_ARCH_QCOM) += msm8996-mtp.dtb
#dtb-$(CONFIG_ARCH_QCOM) += sdm845-mtp.dtb

always := $(dtb-y)
subdir-y := $(dts-dirs)
Expand Down
4 changes: 1 addition & 3 deletions arch/arm64/boot/dts/vendor/qcom/kona-gpu.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@

qcom,initial-pwrlevel = <2>;

qcom,idle-timeout = <80>; /* msecs */
qcom,idle-timeout = <64>; /* msecs */

qcom,no-nap;

Expand All @@ -75,8 +75,6 @@

qcom,tzone-name = "gpuss-max-step";

qcom,pm-qos-active-latency = <44>;

clocks = <&clock_gpucc GPU_CC_CXO_CLK>,
<&clock_gcc GCC_DDRSS_GPU_AXI_CLK>,
<&clock_gcc GCC_GPU_MEMNOC_GFX_CLK>,
Expand Down
1 change: 1 addition & 0 deletions arch/arm64/boot/dts/vendor/qcom/kona-sde.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -690,6 +690,7 @@
00 00 0a 0a
00 00 8a 8a];
qcom,platform-regulator-settings = [1d 1d 1d 1d 1d];
qcom,panel-allow-phy-poweroff;
qcom,phy-supply-entries {
#address-cells = <1>;
#size-cells = <0>;
Expand Down
28 changes: 14 additions & 14 deletions arch/arm64/boot/dts/vendor/qcom/kona-thermal.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -682,7 +682,7 @@
wake-capable-sensor;
trips {
gpu_trip0: gpu-trip0 {
temperature = <95000>;
temperature = <100000>;
hysteresis = <0>;
type = "passive";
};
Expand Down Expand Up @@ -733,7 +733,7 @@
wake-capable-sensor;
trips {
pop_trip: pop-trip {
temperature = <95000>;
temperature = <100000>;
hysteresis = <0>;
type = "passive";
};
Expand Down Expand Up @@ -764,7 +764,7 @@
wake-capable-sensor;
trips {
cpu00_config: cpu00-config {
temperature = <110000>;
temperature = <115000>;
hysteresis = <10000>;
type = "passive";
};
Expand All @@ -786,7 +786,7 @@
wake-capable-sensor;
trips {
cpu01_config: cpu01-config {
temperature = <110000>;
temperature = <115000>;
hysteresis = <10000>;
type = "passive";
};
Expand All @@ -808,7 +808,7 @@
wake-capable-sensor;
trips {
cpu02_config: cpu02-config {
temperature = <110000>;
temperature = <115000>;
hysteresis = <10000>;
type = "passive";
};
Expand All @@ -830,7 +830,7 @@
wake-capable-sensor;
trips {
cpu03_config: cpu03-config {
temperature = <110000>;
temperature = <115000>;
hysteresis = <10000>;
type = "passive";
};
Expand Down Expand Up @@ -858,7 +858,7 @@
};

cpu10_config: cpu10-config {
temperature = <110000>;
temperature = <115000>;
hysteresis = <10000>;
type = "passive";
};
Expand Down Expand Up @@ -891,7 +891,7 @@
};

cpu11_config: cpu11-config {
temperature = <110000>;
temperature = <115000>;
hysteresis = <10000>;
type = "passive";
};
Expand Down Expand Up @@ -924,7 +924,7 @@
};

cpu12_config: cpu12-config {
temperature = <110000>;
temperature = <115000>;
hysteresis = <10000>;
type = "passive";
};
Expand Down Expand Up @@ -957,7 +957,7 @@
};

cpu13_config: cpu13-config {
temperature = <110000>;
temperature = <115000>;
hysteresis = <10000>;
type = "passive";
};
Expand Down Expand Up @@ -990,7 +990,7 @@
};

cpu14_config: cpu14-config {
temperature = <110000>;
temperature = <115000>;
hysteresis = <10000>;
type = "passive";
};
Expand Down Expand Up @@ -1023,7 +1023,7 @@
};

cpu15_config: cpu15-config {
temperature = <110000>;
temperature = <115000>;
hysteresis = <10000>;
type = "passive";
};
Expand Down Expand Up @@ -1056,7 +1056,7 @@
};

cpu16_config: cpu16-config {
temperature = <110000>;
temperature = <115000>;
hysteresis = <10000>;
type = "passive";
};
Expand Down Expand Up @@ -1089,7 +1089,7 @@
};

cpu17_config: cpu17-config {
temperature = <110000>;
temperature = <115000>;
hysteresis = <10000>;
type = "passive";
};
Expand Down
17 changes: 13 additions & 4 deletions arch/arm64/boot/dts/vendor/qcom/kona.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -347,7 +347,7 @@
};

chosen {
bootargs = "rcupdate.rcu_expedited=1 rcu_nocbs=0-7 cgroup.memory=nokmem";
bootargs = "noirqdebug norandmaps rcupdate.rcu_expedited=1 rcu_nocbs=0-7 cgroup.memory=nokmem";
};

firmware: firmware {
Expand All @@ -365,7 +365,7 @@
dev = "/dev/block/platform/soc/1d84000.ufshc/by-name/vendor";
type = "ext4";
mnt_flags = "ro,barrier=1,discard";
fsmgr_flags = "wait,slotselect,avb";
fsmgr_flags = "wait,slotselect";
status = "ok";
};
};
Expand All @@ -392,6 +392,15 @@
compatible = "qcom,cmd-db";
no-map;
};

ramoops: ramoops@80880000 {
compatible = "removed-dma-pool", "ramoops";
reg = <0 0x80880000 0 0x00080000>;
record-size = <0x10000>;
console-size = <0x60000>;
pmsg-size = <0x10000>;
no-map;
};

smem_mem: smem_region@80900000 {
no-map;
Expand All @@ -400,7 +409,7 @@

removed_mem: removed_region@80b00000 {
no-map;
reg = <0x0 0x80b00000 0x0 0x5300000>;
reg = <0x0 0x80b00000 0x0 0x5700000>;
};

pil_camera_mem: pil_camera_region@86200000 {
Expand Down Expand Up @@ -2343,7 +2352,7 @@

qcom_seecom: qseecom@82400000 {
compatible = "qcom,qseecom";
reg = <0x82400000 0x3A00000>;
reg = <0x82400000 0x3E00000>;
reg-names = "secapp-region";
memory-region = <&qseecom_mem>;
qcom,hlos-num-ce-hw-instances = <1>;
Expand Down
Loading