Related
(I would post this in the developer forum, but I don't have 10 posts)
I'm working on building Gingerbread from AOSP for Droid. I was hoping to gather information here on how to do this should someone want to build a rom in the future.
So far, I've followed the steps at http://source.android.com/source/download.html to fetch android-2.3.3_r1 (FWIW, I'm running OS X). For the droid, I also needed to clone these git repositories (mostly CM7 fixes) into the associated folder:
https://github.com/koush/proprietary_vendor_motorola - into vendor/motorola. When running git clone, be sure to add "-b gingerbread" to get the latest version. These are the binary blobs that one would normally get by running extract-files.sh.
https://github.com/CyanogenMod/android_device_motorola_sholes - into device/motorola/sholes. This is Droid-specific device information.
https://github.com/CyanogenMod/android_system_wlan_ti - into system/wlan/ti. This is the wifi driver.
https://github.com/CyanogenMod/android_hardware_ti_omap3 - into hardware/ti/omap3. These are other hardware drivers.
https://github.com/CyanogenMod/android_hardware_libhardware_legacy - into hardware/libhardware_legacy. More hardware libraries.
Additional fixes needed to complete build:
In device/motorola/sholes/overlay/frameworks/base/core/res/res/values/config.xml, comment out the line containing "config_flashlight_affects_lightsensor". This is part of CM7 code which disables the light sensor when the flashlight is on; an alternative fix would be to port this code into your tree.
Perform the two fixes at the bottom of the OP in http://forum.xda-developers.com/showthread.php?t=899674 - RGB_565 and Camera. Camera is definitely necessary for building - I believe the RGB_565 fix is necessary for Live Wallpapers.
Take the changes from https://github.com/CyanogenMod/andr...mmit/29f40ea86fe96f66b5a22c7a2bb84055c73e99be - this will prevent Launcher from crashing on boot. Thanks to PeterAlfonso for this fix!
Once the source tree is set up as described, you can run:
Code:
source build/envsetup.sh
lunch (select generic_sholes-userdebug)
make -j 4 otapackage
to start building Android, which will take a while depending on the speed of your machine.
This will create a file named out/target/product/sholes/generic_sholes-ota-eng.*username*.zip - this can be applied as an update.zip in the usual fashion. However, it contains the stock recovery files, which will overwrite the recovery partition you have. So, using any program which can modify zip files, delete the recovery/ folder.
At this point, you should have a flashable, Gingerbread, AOSP rom for droid!
Peter Alfonso (author of a great stock rooted Gingerbread rom for Droid) pointed out a fix for the launcher issues I was having, and I've updated the OP to reflect this. Compiling the changes now - hopefully the rom will boot, and this will represent a full set of instructions for compiling a vanilla gingerbread Droid rom!
I'm trying to compile it, but I'm getting this error:
Code:
Nathan-Camposs-MacBook-Pro:AOSP Nathan$ lunch generic_sholes-userdebug
sed: illegal option -- r
usage: sed script [-Ealn] [-i extension] [file ...]
sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]
build/core/product_config.mk:194: *** _nic.PRODUCTS.[[device/motorola/sholes/sholes.mk]]: "build/target/product/small_base.mk" does not exist. Stop.
** Don't have a product spec for: 'generic_sholes'
** Do you have the right repo manifest?
Nathan-Camposs-MacBook-Pro:AOSP Nathan$
Could you help me?
A black screen on boot (or just the backlight coming on, but no animation) is sometimes caused by mismatched kernel and vendor graphics driver-related blobs, assuming you are building your own kernel. Here's how to check (I'm putting this here because I'm not yet allowed to post in the dev thread):
Assuming your source is in ~/android/system :
1) Determine the vendor blob version:
cd ~/android/system/vendor/bn/encore/proprietary/lib/egl
strings lib* | grep build;
You should see something like : OpeGL ES 2.0 build [email protected]
2) Now determine the version the kernel expects:
cd ~/android/system/kernel/bn/encore/drivers/gpu/pvr
grep PVRVERSION_BUILD pvrversion.h
You should see something like : #define PVRVERSION_BUILD 789263
If you see a number other than 789263, your vendor blobs do not match the kernel you are using.
In my case, this was caused by me extracting the blobs from my Nook when it was running CM7,
and trying to use them to build CM10.
Check eyeballer's github to get the right vendor blobs.
Hope this helps someone (thanks would be appreciated ). I got this info with the help of Steven676, Krylon360 and others.
Hi Folks
I thought I throw this one up for good measure.
Archos Kernel 3.0.21
I've made a couple of changes which are outline in the README2 file in the repo, but a quick summary.
Patched arch/arm/mach-omap4/omap4-reboot-reason.c to enable bootmode system property setting from the kernel command line which is required by CWM-SDE
I also back-ported the arch/arm/mm/proc-v7.S from the android-omap-3.4 kernel which means the kernel can be built using the standard android aosp toolchains Although It's probably still better to use Linaro Optimized!!
github.com/trevd/android_kernel_ti_archos.git
README2
Code:
android linux kernel 3.0.21 based on original archos sources found at
http://gitorious.org/archos/archos-gpl-gen9-kernel-ics branch: linux-ics-3.0.21
Android boot mode awareness:
----------------------------
changes made to arch/arm/mach-omap2/omap4-reboot-reason.c to enable correct setting
of android system property ro.bootmode.
designed to be used in conjunction with roms created using device files locating in
https://github.com/trevd/android_device_ti_archos.git
Proc-v7.S changes
-----------------
I've backported arch/arm/mm/Proc-v7.S from the android-omap-3 kernel 3.4 branch, this
was done to allow the kernel to be built using the standard android toolchain.
Building
--------
Clone the android aosp toolchain
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6
Using the Bourne Again Shell ( bash ) export an alias to make cross compiling easy
alias make-arm='<toolchain path>/arm-eabi-4.6/bin/:$PATH ARCH=arm SUBARCH=arm CROSS_COMPILE=arm-eabi- LOCALVERSION_AUTO=n make'
make-arm distclean && make-arm mrproper
make-arm ti_archos_defconfig
make-arm -j$(grep -c processor /proc/cpuinfo)
Out of tree drivers
-------------------
PowerVR Kernel Modules are not included in this release, they are available from omapzoom android aosp
repo located at git://git.omapzoom.org/device/ti/proprietary-open.git. this repo also contains the matching
userland binary blobs, versions of which exist for Gingerbread, ICS and JellyBean. See device tree documentation
for further details ( https://github.com/trevd/android_device_ti_archos.git )
Hi Trevd !
Thank you very much for your great work ! :good:
....how much I wish I could be useful ( I am currently with hands tied :laugh: - I have not my tablet ....but I'll be back as soon as I will receive my tablet from reparation centre ! )
Good luck & keep up your awesome work ! :good::good::good:
Wifi Drivers info and resources.
Hi Folks.
Along with building the PowerVR Drivers out of tree, It should be also possible to use the latest drivers for the wireless chip
This Page [ linuxwireless.org ] provides some nice documentation with the links to the repo's contain the lastest code along with what looks like some useful android related utilities
Kirisakura-Kernel for the Asus Zenfone 6
Hello everyone,
After rising to the most popular Kernel on Pixel 3/XL, here it is for the Asus Zenfone 6!
Kirisakura - Kernel is designed to bring a handful of beneficial features to the device, while ensuring excellent performance and smoothness to get you safely through the day!
This project aims to keep most of the subsystems updated, way ahead of the stock kernel, thereby improving security and performance, while keeping stability as the foucs during testing! This includes Linux-Stable, CAF-Upstream and kernel/common.
Kernel Control Flow Integrity (Kernel-CFI), which is achieved by linking the kernel with LLD and Link Time Optimization (LTO), more precisely ThinLTO, are quite unique security features. In fact this, alongside Kirisakura-Kernel for the OnePlus 8 Pro, may be (and probably is) the first 4.19 msm kernel with a fully working Kernel-CFI implementation and CFI-Violations fixed on a smartphone.
The only kernels made by OEMs offering this security feature are the ones for the Pixel 3, 4 and 5 devices.
The recently released Kirisakura-Kernel for the OnePlus 8 Pro was featured on the XDA-Portal due to the inclusion of CFI. The featured article explains CFI in great details, is easy to understand and definitely worth to read.
Another security feature is Shadow Call Stack (SCS). Similar to CFI, only the Pixel 3, 4 and 5 kernels use this security feature.
SCS is another security patchset that is aimed at preventing attacks via return oriented programming (ROP).
ROP is a technique where the attacker gains control of the kernel stack to overwrite function return addresses and redirect execution to carefully selected parts of existing kernel code.
If you´re interested here are a few good links:
Google Security Blog explaining SCS.
LLVM doc about SCS
Android DOCs documenting SCS
If reading about upstream in the paragraph above got you curious,have a read about Linux-Stable and why it is important here. The stable-process is not the same for every subsystem, but the general idea, rule of thumb and benefits are applicable for other subsystems as well.
Quick explanation of CAF-Upstream. CAF is short for Codeaurora-Forums. This is the place where development from Qualcomm for their SoCs happens. This includes the Snapdragon 855/+ that´s built into the different SKUs of the Zenfone 6.
The kernel-bases available on the Codeaurora-Forums, are basically the foundations OEMs use, to build their own kernel additions on top for devices featuring Qualcomm SoCs.
The Qualcomm developers push regular updates to the bases of the different SoCs, a bit similar to how Linux-Upstream works. OEMs usually stop updating the initial base after the phone is released.
This kernel focuses amongst the other features to provide the latest CAF-Updates merged in a regular manner, to provide updates, improvements and enhancements for SoC specific drivers and subsystems! This might take a while, because a lot of device specific testing is done on my end to ensure stability.
The kernel includes a lot of improvements and contributions from other developers as well. Without this kernel would not exist.
Many of the improvements originate from @arter97´s, @kdrag0n´s and @Sultanxda´s work. Many others contributed in some way or another to this kernel.
A big thanks to all of them at this place!
Now lets continue with a list of features in the next paragraph!
Main Features:
- Based on latest kernel sources from Asus for Android 11
- Upstreamed against latest CAF
- Linux-Stable-Upstream included to latest 4.14.220
- compiled with Clang 11.0.1 prebuilt from Google
- Link-Time-Optimization (LTO)
- Kernel Control-Flow-Integration (CFI) and Link-Time-Optimization (LTO) ported from 4.19 kernel/common
- Shadow Call Stack (SCS) Security-Feature
- Use ThinLTO which was first used in the Pixel 4 XL Android R-Preview Kernel instead of full LTO for full program visibility (needed by CFI)
- fix CFI-Violations found in various subsystems like Asus/device specific drivers and qualcomm drivers
- Link the kernel with LLD and use RELR-Relocation
- include important fixes/improvements from kernel/common
- Flashing the kernel will keep root!
- Anykernel zip is based on the all new Anykernel3 release from @osm0sis
- include vDSO 32 patches to improve 32-bit performance
- disable various debugging configs, that are not needed in a perf build kernel according to google.
- disable selinux auditing (we don´t have to adress selinux denials running a stock rom)
EAS related features:
- backported scheduler from sd865
- disable autogroups and use cgroups for more efficient task placement!
- disable core_ctl for improved task placement and load balancing
- updates from kernel/common
- scheduler updates from Googles Pixel kernel
CPU related features:
- Power saving workingqueues enabled by default (toggleable in EXKM)
have a read here: https://lwn.net/Articles/731052/
this complements EAS in general
- Change various drivers ( MM, audio) to user power efficient workingqueues. This should work well in conjunction with EAS
- include cpuidle patches from CAF
- improvements to cpufreq/times/stats
- improve memory allocations in binder driver
- vdso32 patches as found on Google Pixel devices (brief documentation here)
File System related features:
- Set the bio REQ_NOENCRYPT flag (When lower layers such as dm-crypt observe the REQ_NOENCRYPT flag, it helps the I/O stack avoid redundant encryption, improving performance and power utilization. ) (CAF default)
- improve memory allocations in sdcardfs
- improve eventpoll logging to stop indicting timerfd (improves kernel wakelock readability)
- improve memory allocations in kernfs
- writeback: hardcode dirty_expire_centisecs=3000 based on this commit
- ufs improvements from pixel 4/ pixel 5 kernel
GPU related features:
- KCAL to control the display
- KLAPSE integrated
- KCAL/KLAPSE: changes safety measures -> allow completely disabling two RGB values (this was requested to, for example, only have red values on night dimming)
Network related features:
- Wireguard Support (Details)
- advanced TCP algorithms enabled
- includes new bbr and bbrv2
Memory related features:
- Memory Management patches from mainline kernel
- Speculative Page Faults (1. 2)
- Fix various memory leaks in different subsystems
- Reap memory of a task that receives sigkill
- enabled per process reclaim
- allow ZRAM to use higher swappiness values than 100
- possibility to use lzo-rle as default ZRAM compression algorithm (more information here and there )
Security related features:
- Control-Flow-Integration (CFI) and Link-Time-Optimization (LTO) ported from 4.19 kernel/common and Pixel 4/XL Kernel
- Use ThinLTO which was first used in the Pixel 4 XL Android R-Kernel instead of full LTO
- Shadow Call Stack (SCS) Security-Feature
- fix various CFI-Violations found in various subsystems like Asus/device specific drivers and qualcomm drivers
- enable init_on_alloc for even more security, more information can be found in the commit message
WLAN Driver
- use CAF wlan driver and compile it inline, the only way to ensure working wlan with this kernel
- the kernel cannot even force load prebuild WLAN module as the kernel base is way to far from stock!
- do no longer rely on the pre compiled wlan driver module
- completely removed qcom_rx wakelock in the wlan driver
- removed debugging from wlan driver
- removed logging from wlan driver
Magisk Companion Module
- set kernel settings like I intend them to be
Misc Features:
Wakelock Blocker:
- advanced wakelock blocker with the ability to block any wakelocks (dangerous, use with caution)
- please read [URL="https://arstechnica.com/gadgets/2018/08/p-is-for-power-how-google-tests-tracks-and-improves-android-battery-life/"]this for further info
- blocking a kernel wakelock should only be done in case of firmware incompatabilities (WiFi network at work (can´t be changed) causes deep sleep to not work on the phone.) That´s the only use case I see for this feature. The kernel does not features this to improve battery life!
Other features:
- disable logging to make the kernel more lightweight in various places
- fix several coding issues detected by newer Clang-Toolchains
- add support for steam controller
- add support for nintendo switch controller
- ufs improvements from pixel 4/ pixel 5 kernel
- gpu/kgsl improvements from pixel 4/pixel 5 kernel
Feature section for the "non visible" but perceptible improvements:
- updated binder section (responsible for interprocess communication)
- updated sdcardfs ; have a read about it here:
Requirements
- unlocked Bootloader
- USB-Debugging in developer options enabled
- latest adb and fastboot binaries
- working adb and fastboot environment
- magisk root
How to flash the Kernel:
1. Download the latest kernel.zip
1a. Optional: While it may not be necessary all times, you may want to restore stock boot.img, re-root with magisk and optionally install twrp.zip if coming from another kernel. Before reporting issues make sure you do that! Thank you!
2. Make sure to use latest Magisk stable. (not the latest canary!)
3. Flash the kernel.zip via latest EXKM or FKM app. Alternatively via TWRP.
4. Reboot and profit.
DOWNLOAD:
Download is located always in this folder:
Downloads for : -Android- Generic Device/Other | AndroidFileHost.com | Download GApps, Roms, Kernels, Themes, Firmware and more. Free file hosting for all Android developers.
Download GApps, Roms, Kernels, Themes, Firmware, and more. Free file hosting for all Android developers.
androidfilehost.com
Important: Read after Download
Please take a look at the second post after flashing the kernel!
Changelog:
Android 9/Pie
1.0.0 Initial Release
1.3.0 https://forum.xda-developers.com/showpost.php?p=79852192&postcount=21
1.5.0 https://forum.xda-developers.com/showpost.php?p=79948337&postcount=36
1.6.0 https://forum.xda-developers.com/showpost.php?p=80037776&postcount=46
1.8.1 https://forum.xda-developers.com/showpost.php?p=80275065&postcount=58
3.0.0 https://forum.xda-developers.com/showpost.php?p=80712703&postcount=66
Android 10/Q
1.0.0_Q https://forum.xda-developers.com/showpost.php?p=81368413&postcount=73
1.0.3_Q https://forum.xda-developers.com/showpost.php?p=82387237&postcount=86
1.2.0_Q https://forum.xda-developers.com/showpost.php?p=83920653&postcount=92
Android 11/R
1.0.1_R https://forum.xda-developers.com/t/...sus-zenfone-6-aka-kirin.3940178/post-84526765
Donations:
Donations are not mandatory but very welcome if you want to support development or just buy me a coffee
If you like my work: http://paypal.me/freak07
Credits:
Asus for the Zenfone 6!
@osm0sis for all his work, including the ak2 installer!
@tbalden for being the best HTC wingman!
@LeeDroid for his awesome roms!
@Captain_Throwback for all the mentoring and guidance!
@Eliminater74 for bringing me into the game and the Inspiration
@nathanchance for his upstream guidance and assistance
@RenderBroken for helping me out
@flar2 for all his work
@joshuous for all the help he provided to me in the past!
@arter97 for giving me advice
@topjohnwu for magisk!
@osm0sis for anykernel!
XDA:DevDB Information
Kirisakura-Kernel, Kernel for the ASUS ZenFone 6 (2019)
Contributors
Freak07
Source Code: https://github.com/freak07/Kirisakura_Kirin
Version Information
Status: Stable
Mine for FAQ
Too
And too
Flashed it today and no problems so far.
Everything seems to work as intended
Freak07 said:
Mine for FAQ
Click to expand...
Click to collapse
Which RAM version do you have please?
Is the kernel for both?
EMJI79 said:
Which RAM version do you have please?
Is the kernel for both?
Click to expand...
Click to collapse
The 8GB version. RAM variant shouldn´t matter.
1. Does it have to be magisk stable or is canary (dev version) ok? I am asking because i need to use canary so my stupid pay app will not detect root.
2. This might sound stupid but what is magisk companion and where do i get it? I can not find it in the magisk modules repository or on xda and neither google.
2. This might sound stupid but what is magisk companion and where do i get it? I can not find it in the magisk modules repository or on xda and neither google.[/QUOTE]
It's in the downloads folder at the end of the afh link in the OP
isthisadagger said:
1. Does it have to be magisk stable or is canary (dev version) ok? I am asking because i need to use canary so my stupid pay app will not detect root.
2. This might sound stupid but what is magisk companion and where do i get it? I can not find it in the magisk modules repository or on xda and neither google.
Click to expand...
Click to collapse
jeremyet said:
2. This might sound stupid but what is magisk companion and where do i get it? I can not find it in the magisk modules repository or on xda and neither google.
Click to expand...
Click to collapse
It's in the downloads folder at the end of the afh link in the OP[/QUOTE]
1. you can probably use the canaries of magisk too. But keep in mind, they’re canary builds for a reason. If you’re having issues, flash to magisk stable and see if you can reproduce them.
2. Like @jeremyet said, it’s in the download folder in the OP
good job man
@Freak07: Cool, the first costom kernel for the Zenfone 6, thanks
I am still thinking of switching to the Zenfone 6, one feature I currently use a lot, is the "USB fast charge" : it makes a big difference, if I have my Smartphone for file transfer on my Laptop or PC, whether it charges in the background only with 500 mAh or with a little over 900 mAh on my USB 3 ports.
Does your kernel support USB fast charge / if not: will it be supported? (some custom kernels devs don't want to implement it, bacause it is not an official feature and "might" not work perfectly)
Coming from stock kernel, I got stuck at the Zenfone logo during reboot after the first flash with exkm. Volume down+power fixed that and after flashing a second time all seems to be working ? zram is at 684mb for my 6Gb variant.
Thank you a lot.
A quick question about the kernel source: Is there an API/kernel endpoint that can be used to query and manipulate the flip camera's motor? If so, is it something than can be accessed from userland? I was wondering if one might be able to write a shell script that can be used to send commands to it.
Does camera has OIS? I've seen OIS code in DTS
dmd79 said:
Does camera has OIS? I've seen OIS code in DTS
Click to expand...
Click to collapse
It's not the object of this thread.
There's a "ask me anything thread" in the discussions forum.
Flashing via EXKM will NOT work, if you’re on the latest magisk canary! (currently 19305!)
19302 is still working fine with EXKM, as is stable 19.3. Big changes in magisk are coming. we will have to wait for flar2 to find a new way of flashing zips.
Can this be flashed on the latest update or does it require an update from you? If not are there any downsides to it not being based on the most current kernel source code then?
Kind regards
regenwurm16 said:
Can this be flashed on the latest update or does it require an update from you? If not are there any downsides to it not being based on the most current kernel source code then?
Kind regards
Click to expand...
Click to collapse
Wait a bit. I’ll release an update soon. (hopefully later today) This will have latest asus sources merged.
I currently see 2 downloads for my kernel :cyclops: so I thought I can take it slow.
Testing was good so it should be ready for prime time stay tuned!
Thanks for your effort.
If think the two downloads are because of the scarce availability of the phone. I ordered mine on 5th of June on Amazon Germany the 6GB RAM 128GB ROM variant (only model they sell) and it took until 1st of July to get to me
I would have ordered on the Asus eShop but they don't ship to my country/don't have a shop for my country
Just take a look in the UK availability thread it's even worse there
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Horizon Kernel for Oneplus 8 & 8 Pro & 8T
This kernel is mostly focus on daily experience and battery consumption
Features:
- Rebase on CAF "LA.UM.9.12.r1-12200-SMxx50.QSSI12.0"
- Build with proton clang 12 + polly + O3 + A55 optimizations
- Disable kernel module and build everything inline
- Switch to lz4 for ZRAM
- Remove lots of debug stuff
- Remove unused drivers
- BBR TCP congestion algorithms support
- Use fq as default qdisc
- Switch to 128kB readahead ( Optimize for UFS )
- Stop collecting I/O statistics
- Switch to urandom
- Use schedhorizon as default cpufreq governor
- GPU OC 670mhz ( Same as sd865plus)
- Wireguard support
- CIFS support
- KCAL & Klapse support
- .........................................
Download
oneplus/horizon_kernel/R/zips • AKR DL
dl.akr-developers.com
Since R12, custom ROMs are supported
-OOS = Oxygen OS
-Lineage = Custom ROMs
You can flash it via exkm, fkm or this free and opensource tool
Releases · libxzr/HorizonKernelFlasher
A simple app that can flash AnyKernel flashable zips on android - libxzr/HorizonKernelFlasher
github.com
Note: See the thread below if you are looking for legacy builds
Also, here's a control center software.
You can control game mode, 240Hz touch sampling rate and UFS Turbo Write in it.
oneplus/horizon_kernel/controller • AKR DL
dl.akr-developers.com
BUG
- You tell me
Contributors
xzr467706992
Credits
https://github.com/xzr467706992/android_kernel_oneplus_sm8250/graphs/contributors
Source
https://github.com/xzr467706992/android_kernel_oneplus_sm8250
Channel & Group
https://t.me/horizon_op8
Changelog:
R17
- Merge CAF LA.UM.9.12.r1-12500-SMxx50.0
- Update dts to LA.UM.9.12.r1-12000-SMxx50.0
- Update ion drivers
- Update simple lmk drivers
- touchscreen: Adapt PM QoS usage to incoherent OnePlus code
- Slightly optimize performance on scrolling
R16.3
- Rebase on CAF msm-4.19 and remove all upstream linux stable changes ( Rollback to 4.19.157 )
( This could solve at least deep sleep issue and avoid a lot of potential issue )
- Inline the spin lock function family to improve performance
- Correct capacity value of big cluster in energy model
R16.2
- Merge Linux 4.19.198
- Revert back to old scheduling policy
R16.1
- Merge CAF "LA.UM.9.12.r1-12200-SMxx50.QSSI12.0"
- Further optimize on scheduling
- May fix a wlan connection problem introduced in last build
R16
- Linux 4.19.197
- Merge CAF "LA.UM.9.12.r1-12000-SMxx50.0"
- Rework scheduling policy
- Optimize touchscreen latency and interrupt CPU usage
R15.1
- Linux 4.19.196
- Fix kernel panic when screen casting with "windows connect"
- Fix UI lagging and inaccurate network speed when a proxy is running in the background
( This dropped BBR and set Westwood as default congestion algorithm )
- Move back to Simple LMK as lowmemory killer
Controller Update
- Add a switch for BBR congestion algorithm for those who need it
R15
- Merge CAF "LA.UM.9.12.r1-11800-SMxx50.QSSI12.0"
- Fix random lags on R14.3
- Relax performance restrictions for schedhorizon
- Move to 10ms for WALT window size for faster response
- Cleanup and optimize fuel gauger driver
R14.3
- Linux 4.19.195
- Fix google photos video lag on custom ROMs
R14.2
- Linux 4.19.193
- Move back to userspace lmkd to improve multitasking experience
- Synchronize oneplus changes from oss
R14.1
- Fix kernel panic when using terminal
R14
- Merge CAF "LA.UM.9.12.r1-11500-SMxx50.0"
- Merge Linux 4.19.192
- Optimize camera launching speed
R13.3
- Fix kernel panic when subsystems crash
R13.2
- Merge Linux 4.19.191
- Fix modem unable to reset after a crash
- Cleanup some more oneplus codes
- Custom build: Synchronize changes with LineageOS kernel and apply new FOD patches
Note: If you are facing disappeared fod, just wait for your maintainer to update fod on the ROM side.
R13.1
- Merge Linux 4.19.190
- Fix zram compression algorithm not setting to lz4 on kebab
- Perform PID map reads on the little CPU cluster
R13
- Merge CAF "LA.UM.9.12.r1-11300-SMxx50.0"
- Implement fuse short circuit to improve i/o performance under /sdcard
- Ignore modem crash event
R12.4
- Merge Linux 4.19.186 187 188 189
- Fix unable to apply system update on kebab
- 20X optimize PID map reads
- Increase vmstat interval to reduce overhead
- Fix kernel warning when triggering tri-state-key
- Apply some backports to vmalloc & jump label
- Enable jump label for branch optimization
- Enable automatic compaction for ZRAM
- Upstream Simple LMK
- Some more I forgot
R12.3
- May fix some problems with pd charging
- Fix kernel panic when modem crash sometimes
R12.2
- Merge Linux 4.19.184 185
- Implement f2fs rapid gc from arter97
- Shorten auto-hiberate idle timer
- May fix kernel panic when modem crash sometimes
R12.1
- Fix random crash & reboot ( mostly happends on 8T )
R12
- Merge Linux 4.19.183
- Merge CAF "LA.UM.9.12.r1-11000-SMxx50.0"
- Update lots of codes from oneplus oss
- Enable UFS HPB feature
- Add support for custom ROMs
R11.2
- Merge Linux 4.19.180 181 182
- Add haptic level adjustment
- Add back 1.2GHz for big cluster
- Move to rewritten ashmem driver by sultan
R11.1
- Merge CAF "LA.UM.9.12.r1-10800-SMxx50.0"
- Merge Linux 4.19.179
- Fix SurfaceFlinger spams errors in logcat
R11
- Merge CAF "LA.UM.9.12.r1-10700-SMxx50.0"
( Including kernel, wlan and audio, video techpacks )
- Merge Linux 4.19.178
- Upstream lz4 zram algorithm
- Hardcode swappiness to 160 for more aggressive zram strategy
- Enable 4GB ZRAM
- Add back 691mhz for small cluster
- Prevent EAS from affecting cpuidle
- Apply some more optimization patches
R10.5
- Merge Linux 4.19.177
- Remove cpu cooling & devfreq cooling drivers
( Fix big cluster being limit at min freq sometimes when playing genshin impact )
- Improve deep sleep time under mobile data
- Apply some more optimization patches
R10.4
- Merge Linux 4.19.176
- Update kernel devicetree to "LA.UM.9.12.r1-10000-SMxx50.0"
- Add back lowest frequencies for big & prime cluster
- Fix broken energy model due to inappropriate optimizations
R10.3
- Merge Linux 4.19.175
- Update display panel commands from qssi-user-11-RP1A.201005.001-2102011801-release-keys
R10.2
- Fix cyberpunk theme
- Fix cloud service on hydrogen os
R10.1
- Merge Linux 4.19.174
- Cleanup and optimize defconfig
- Simplify dtbo building
- Reduce zip size ~ 30%
R10
- Merge CAF "LA.UM.9.12.r1-10300-SMxx50.0"
( Including kernel, wlan and audio, display techpacks )
- Cleanup unused debug codes in wlan drivers
- Don't allow userspace trigger process reclaim
- Remove cpuidle sleep_disable usage in haptic drivers, and remove sleep_disable node from userspace.
R9.3
- Merge Linux 4.19.173
- Ship builds with zips
R9.2.1
- Fix blurred screen and crashes on some Oneplus 8P when playing videos with MEMC on.
- Oneplus 8 Pro Only
R9.2
- Merge Linux 4.19.172
- Fix ufs workqueue overheads
- Optimize memcpy, memmove, memcmp, crc32, checksum, xor libraries
- Affine unbound workqueues to little CPUs by default
- Make the devfreq monitor workqueue high priority
- Add automatic memory compaction mechanism
- More I forgot
- Theres no change in dtbo compared to R9.1, so no need to update
R9.1
- Merge Linux 4.19.168 169 170 171
- Move to simplified frequency table
- Fix wifi not working on new Chinese version of Oneplus 8T
- Don't limit CPU frequency when gaming
- Optimize GPU scheduling under high refresh rate
- Theres no change in dtbo compared to R9, so no need to update
R9
- Merge CAF "LA.UM.9.12.r1-10000-SMxx50.0"
( Including kernel, wlan and audio, video, display techpacks )
- Merge Linux 4.19.166
- Merge Linux 4.19.167
- Add support for checking cpu voltage via kernel logs
- Theres no change in dtbo compared to R8.4, so no need to update
R8.4
- Merge Linux 4.19.165
- Disable ZRAM & SWAP
- Theres no change in dtbo compared to R8.3, so no need to update
R8.3
- Merge Linux 4.19.164
- Theres no change in dtbo compared to R8.2, so no need to update
R8.2
- Don't force run display & touchscreen irqs and threads on big cluster to save power
- Remove max boost for little cluster on switching apps to save power
- Introduce dynamic cpuset for display group, migrating tasks to big cluster on switching apps to improve smoothness
- Fix lags when little cluster is under heavy load
- Relax touchscreen cpu latency requirement to save power
- Relax UFS cpu latency requirement to save power
- Align CPU latency requirements with kona C-States
- Remove iowait boost from schedhorizon
- Don't force 4k buffer allocations for ION
- Update Magisk in the image to v21.2
- Fix force 240hz fails after exiting a game
- Theres no change in dtbo compared to R8.1, so no need to update
R8.1
- Merge CAF "LA.UM.9.12.r1-09500-SMxx50.0"
( Including kernel, wlan and audio, video, display techpacks )
- Build oneplus param read/write drivers, cyberpunk theme should work now
- Optimize pm_qos usage for touchscreen drivers on OP8 & OP8P
- Re-enable pm_qos usage for UFS drivers
- Use 100Hz timer frequency
- Never allow irq affine on more than one cpu
- Optimize pm_qos framework
- Optimize pm_qos usage for UFS drivers
- Optimize cpuidle framework
- Force run important display & touchscreen & lmk irqs and threads on big cluster
- Cleanup codes in kgsl & display techpack and optimize pm_qos usage
- Move to rewritten iommu & ion drivers
- ........... ( Check github for details )
- Theres no change in dtbo compared to R7.2, so no need to update
R7.2
- Merge Linux 4.19.163
- Theres no change in dtbo compared to R7.1, so no need to update
R7.1
- Merge Linux 4.19.162
- Re-enable lpm idle prediction
- Move to fq_codel qdisc
- Enable TCP ECN negotiation by default
- Don't force enable panel ULPS suspend
- Theres no change in dtbo compared to R7, so no need to update
R7
- Merge CAF "LA.UM.9.12.r1-09300-SMxx50.0"
( Including kernel and audio, display techpacks and wlan drivers )
- Merge Linux 4.19.161
- Build and enable vDSO32
Kernel Configuration | Android Open Source Project
source.android.com
- Don't force offline big & prime cluster on screen off ( Fix fp reject and lags on AOD )
- Move back to mem deep sleep mode
- Don't force 240Hz touchpanel sample rate on Oneplus 8T & 8Pro ( But you can still enable it by writing 1 to /proc/touchpanel/force_game_switch_enable )
- Cleanup rx_wakelock codes in wlan drivers
- Force enable ULPS(Ultra Low Power State) and ULPS suspend for display panel
- Force allow panel phy power off on idle
- Re-align gpu idle timeout & input boost duration with display panel ULPS delay
- Enable Clang ThinLTO optimizations
- Lower the priority of f2fs gc task
- Disable expedited RCU grace periods for powersave
- Remove display ramdump memory region (free 8MB of RAM)
- Disable cpuidle idle prediction feature for powersave
- Implement fast refcount checking for arm64
- Prefetch operands to speed up atomic operations
- More I forgot
- Theres no change in dtbo compared to R6.4, so no need to update
R6.4
- Merge linux 4.19.160
- Theres no change in dtbo compared to R6.3, so no need to update
R6.3
- Merge linux 4.19.159
- Theres no change in dtbo compared to R6.2, so no need to update
R6.2
- Merge linux 4.19.158
- Move to s2idle deep sleep mode
- Apply some touchscreen drivers' simplifying and optimizations
- Theres no change in dtbo compared to R6.1, so no need to update
R6.1
- Update Proton Clang version
dtbo image has been updated:
- Fix random kernel panic caused by freeing too much reserved memory
R6
- Merge Linux 4.19.157
- Merge CAF “LA.UM.9.12.r1-09000-SMxx50.0”
( Include kernel, wlan and audio, video, display techpacks )
- Update wireguard to v1.0.20201112
- Merge Simple Lmk update
- Force 240Hz touchpanel sample rate for Oneplus 8 Pro & Oneplus 8T
- Touchpanel sample rate will no longer drop after switching to 60Hz screen refresh rate on Oneplus 8T & Oneplus 8Pro
- Update magisk to v21.1
dtbo image has been updated:
- Remove unused reserved memory regions (~12MB)
R5.5
- Merge Linux 4.19.156
- Move to Simple Lmk as lowmemorykiller
- Disable userspace lmkd
- Enable userspace CNTVCT_EL0 access for vDSO to accelerate request
- Theres no change in dtbo compared to R5.4, so no need to update.
R5.4
- Merge Linux 4.19.155
- Theres no change in dtbo compared to R5.3, so no need to update.
R5.3
- Fix cpu cores oscillationally on/off on aod fingerprint pressing
- Fix logic of screen on/off detection
- Improve speed of aod fingerprint
- Theres no change in dtbo compared to R5.2, so no need to update.
R5.2
- Optimize logic of "Optimize fingerprint speed on aod mode"
- Fix priority of fingerprint hal not changing successfully
- Optimize smoothness when entering recent apps
- Optimize smoothness when switching between apps
- Optimize app launching speed
- Theres no change in dtbo compared to R5.1, so no need to update.
R5.1
- Optimize fingerprint speed on aod mode
- Theres no change in dtbo compared to R5, so no need to update.
R5
- Merge Linux 4.19.154
- Fix camera on Oneplus 8T
- Speed up mremap by 20x on large regions
- Disable Privileged Access Never emulation, speed up syscalls 2x
- Theres no change in dtbo compared to R4, so no need to update.
R4
- Merge Linux 4.19.153
- Merge CAF "LA.UM.9.12.r1-08900-SMxx50.0"
( Including kernel and wifi drivers, audio, video, display techpacks )
- Update boot image base to OOS OB3 for OP8 & OP8P
- Camera on 8T havent been fixed on this build
- Theres no change in dtbo compared to R3, so no need to update.
R3
- Merge oneplus oss update
- Add support for Oneplus 8T
- Enable 1.2GHz input boost for big cluster
- Remove schedhorizon governor 1.6GHz(prime) 1.2GHz(big) efficient_freq
- Allow foreground apps migrate to big cluster on touch
- Relax boost duration on no input to 3s
UI Bench Result
- Jitter: ~0.3ms -> ~0.2ms
- Total duration: ~4ms -> ~3ms
- Dtbo image has been updated, reflashing is recommended
R2
- Merge Linux 4.19.152
- Merge CAF "LA.UM.9.12.r1-08600-SMxx50.0"
- Update wifi drivers to "LA.UM.9.12.r1-08600-SMxx50.0"
- Update display & video techpacks to "LA.UM.9.12.r1-08600-SMxx50.0"
- Theres no change in dtbo compared to R1.1, so no need to update.
R1.1
- Merge Linux 4.19.151
- Theres no change in dtbo compared to R1, so no need to update.
R1
- Stable release is here
( Coz no one reports bug to me lol )
- Merge Linux 4.19.150
- Enable ntfs & exfat drivers
- Theres no change on dtbo image compared to B2, so no need to update
B2
- Merge Linux 4.19.149
- Update audio & video & display techpacks to CAF "LA.UM.9.12.r1-08300-SMxx50.0"
- Add Klapse support
( Now you can turn brightness )
- Disable unused arm64 errata
- Disable wireless charging drivers for oneplus8
- Disbale iris drivers for oneplus8
- Start building dtbo image, flash it as you want.
( It could provide node /proc/touchpanel/glove_mode_enable for glove mode, you can write 1 to enable it )
B1
- Initial bring up
Download legacy builds (Before R9.3)
https://dl.akr-developers.com/?dir=oneplus/horizon_kernel/R/images
As we don't have a perfect TWRP for OOS 11 for now, I only provide boot images.
op8=Oneplus 8 boot image
op8p=Oneplus 8 Pro boot image
dtbo=dtbo partition image
Bx=Beta X
Flashing dtbo is optional but recommended
Note: Video frame insertion may be broken if you don't flash dtbo on Oneplus 8 Pro
( Report from a H2OS user )
Also it could provide node /proc/touchpanel/glove_mode_enable for glove mode, you can write 1 to enable it
Flash the images via fastboot
fastboot flash boot xxx
fastboot flash dtbo xxx
Google for it if you don't know that
Those boot images are tested on OOS OB3 & H2OS OB4.
xzr467706992 said:
Changelog:
B2
- Merge Linux 4.19.149
- Update audio & video & display techpacks to CAF "LA.UM.9.12.r1-08300-SMxx50.0"
- Add Klapse support
( Now you can turn brightness )
- Disable unused arm64 errata
- Disable wireless charging drivers for oneplus8
- Disbale iris drivers for oneplus8
- Start building dtbo image, flash it as you want.
( It could provide node /proc/touchpanel/glove_mode_enable for glove mode, you can write 1 to enable it )
B1
- Initial bring up
Click to expand...
Click to collapse
I'm so excited to try this kernel! if you could kindly add KCAL control, I'd be so ecstatic. it's wonderful to be able to turn up the color saturation in exkm^.
EDIT; whoops! Kcal probably already in there! sorry
Nicee ??
Burt Squirtz said:
I'm so excited to try this kernel! if you could kindly add KCAL control, I'd be so ecstatic. it's wonderful to be able to turn up the color saturation in exkm^.
EDIT; whoops! Kcal probably already in there! sorry
Click to expand...
Click to collapse
*whip*
blaze9090 said:
*whip*
Click to expand...
Click to collapse
Do it again, i like getting whipped.
Hi I have 2 questions, I was using this on OOS 10 and loved it, hence want to try it on OOS 11 stable build which I just flashed.
1) What's the thing with this dtbo image? Can someone explain what it does?
2)Since you're only providing images, what if someone is on an Indian build and flashes the image (I'm assuming they are for the global build) will they face any issues? Though OP8 didn't get an Indian version yet so I flashed the global variant so I think I can still try this.
Also the images are already patched with magisk right?
Do you plan on making a zip installer which we can flash from EX kernel manager or similar applications?
---------- Post added at 06:03 PM ---------- Previous post was at 06:01 PM ----------
rahulcasper said:
Hi I have 2 questions, I was using this on OOS 10 and loved it, hence want to try it on OOS 11 stable build which I just flashed.
1) What's the thing with this dtbo image? Can someone explain what it does?
2)Since you're only providing images, what if someone is on an Indian build and flashes the image (I'm assuming they are for the global build) will they face any issues? Though OP8 didn't get an Indian version yet so I flashed the global variant so I think I can still try this.
Also the images are already patched with magisk right?
Do you plan on making a zip installer which we can flash from EX kernel manager or similar applications?
Click to expand...
Click to collapse
Also if I want to go back, I can just flash my stock boot image, but what about this dtbo image thag we flash? Do I have to extract the stock dtbo image and keep it if I want to go back?
rahulcasper said:
Hi I have 2 questions, I was using this on OOS 10 and loved it, hence want to try it on OOS 11 stable build which I just flashed.
1) What's the thing with this dtbo image? Can someone explain what it does?
2)Since you're only providing images, what if someone is on an Indian build and flashes the image (I'm assuming they are for the global build) will they face any issues? Though OP8 didn't get an Indian version yet so I flashed the global variant so I think I can still try this.
Also the images are already patched with magisk right?
Do you plan on making a zip installer which we can flash from EX kernel manager or similar applications?
---------- Post added at 06:03 PM ---------- Previous post was at 06:01 PM ----------
Also if I want to go back, I can just flash my stock boot image, but what about this dtbo image thag we flash? Do I have to extract the stock dtbo image and keep it if I want to go back?
Click to expand...
Click to collapse
Oem device trees are saved in dtbo image (display, fingerprint, touchpanel etc)
They shouldnt face any issue. Boot image is consists of kernel, dtb and ramdisk. I replaced kernel and dtb in the image. And I have md5sumed that ramdisk cross versions are same.
Yes, I have patched. But you may still need to patch it again, coz someone reported to me that it doesnt work (tho it works well here)
I ll make an zip installer when twrp is out
EXKM can flash images btw
Yes you need to keep your stock dtbo if you want to go back.
xzr467706992 said:
Oem device trees are saved in dtbo image (display, fingerprint, touchpanel etc)
They shouldnt face any issue. Boot image is consists of kernel, dtb and ramdisk. I replaced kernel and dtb in the image. And I have md5sumed that ramdisk cross versions are same.
Yes, I have patched. But you may still need to patch it again, coz someone reported to me that it doesnt work (tho it works well here)
I ll make an zip installer when twrp is out
EXKM can flash images btw
Yes you need to keep your stock dtbo if you want to go back.
Click to expand...
Click to collapse
Thanks I shall try this now. One last question, how can I extract my stock dtbo? and flashing it is through fastboot only right?
Does payload dumper extract dtbo from OOS zips? I usually close it after boot so I haven't noticed the other files it outputs
I'm on stable OOS 11 global build on a OP8 btw, I read that it's recommended but not necessary to flash the dtbo image and only has perks for the 8 pro. Is that correct or should I still flash it
rahulcasper said:
Thanks I shall try this now. One last question, how can I extract my stock dtbo? and flashing it is through fastboot only right?
Does payload dumper extract dtbo from OOS zips? I usually close it after boot so I haven't noticed the other files it outputs
Click to expand...
Click to collapse
Ya payload dumper works
fastboot flash dtbo xxxx.img
good jobs bro
xzr467706992 said:
Ya payload dumper works
fastboot flash dtbo xxxx.img
Click to expand...
Click to collapse
Hey I feel guilty I asked you everything about the installation but still haven't flashed it yet lol. Since I just upgraded to A11 I have been testing the radioactive kernel because it was like my main on A10 and it's been going lovely so I was a little hesitant to switch just yet
But I promise I'll try this and review it within this week for sure since I had shifted to horizon during the last week of A10 before stable A11 came and I had really liked it, I'm assuming it's only going to be better on 11
R1 runs pretty well! ?
Thank you dev ?
Planing to make it flashable through FKM or EXKM?
golf60 said:
Planing to make it flashable through FKM or EXKM?
Click to expand...
Click to collapse
You can easily flash boot images in EXKM. Tap on "Flash" and then use the file chooser to navigate to the boot image.
works on 11 stable for the pro?
berndv01 said:
works on 11 stable for the pro?
Click to expand...
Click to collapse
Yes
MlM1c said:
Was doing pretty good but in the end I switched back to stock it didn't have the seamless/optimized feel the OOS does.
Click to expand...
Click to collapse
Yes, this kernel is based on qualcomm's source and dropped many oneplus's stuff.
Also, it prefers battery & low heat, thus you cant get the performance like stock.
Anyone else having stuttering issues when using recents?