Very nice indeedUpdate to 4.1.0
Hey guys and girls,
I hope everyone started into a good week. Here´s the next release. It´s for stable Android 13.
Thanks to Google releasing the kernel source for the previews and the betas I´m able to push this update out very quickly. As in the past, the code didn´t change between last beta and stable release.
There are again a lot of changes in this release. I´ll try to keep the release post short as I don´t have that much time lately.
FHD/1080P Support for Pixel 6 Pro
The biggest change is FHD support for the Pixel 6 Pro. If you follow twitter you might have seen this tweet from @MishaalRahman.
Instead of using the display driver that´s supposedly for the Pixel 7 Pro, FHD support was added to the Pixel 6 Pro display driver. There were a few obstacles to make it run properly on the Pixel 6 Pro, but I got it working nicely so far. If anyone has more experience than me regarding panel timings, display drivers etc, feel free to push any improvement as a pull request to my github or point me towards any improvement.
As a result you can now select 1080p resolution from settings after flashing the kernel. Dynamic refresh rate works, brightness scaling works, no tints, colour shifts or contrast issues either. AOD has a 1080p Low-Power timing as well.
You´ll find a few more infos with a short video on my tweet here:
View attachment 5687025View attachment 5687029
It´s perfectly usable on a daily basis so far. I ran it for a few days without issues on my end. While the advantage might be debatable (saving battery, less load on GPU, still needing to drive the same amount of pixels in the end even on lower resolution, etc etc) having options is nice and this is why I decided to ship it.
Apps need to redraw after switching resolution, sometimes 1080p on big display size selected in settings the UI looks a bit sketchy. So I think Google is still working on that.
There´s however one bug I found so far that makes me believe this is still very much a WIP from google. If having the "show current refresh rate" option from dev settings enabled while switching resolutions, the display will black out and a restart needs to be forced by keeping the power button pressed or using adb interface to restart the phone. This is not due to the kernel, but display settings in framework getting scrambled as it´s not yet implemented 100% on googles end. So be warned.
MM Subsystem Rework
MM subsystem was completely reworked including many improvements from linux-mainline. During this MGLRU was also reworked a bit and works better now. I´ll include links to a few of the improvements/patchsets in hide-tags below, if you´re interested beyond that please check out my github.
Additionally tie in a few of the MM changes into the powerhal. For example Proactive compaction is more aggressive during screen-off/device suspended operations to improve long term-performance.
Also tune the powerhal and implement all A13 changes, according to the changes that were already present on A12.
Latest changes from f2fs-stable are included, which include several bugfixes and small improvements.
Binder improvments/fixes, scheduler improvements from kernel/common, performance for exfat formatted storage device improved (niche use case, but still nice) and other little improvements.
For other changes and details please take a look at github.
I wish everyone a nice day.
If you´re one of the unfortunate ones that suffer from the device is corrupt bug on pixel 6 series please take a look at the FAQ at the beginning of this thread it contains a solution. The issue is probably caused by a bug that affects pixel 6 devices and has nothing to do with magisk or a kernel, it just happens to get triggered when using any of those.
- Rebase kernel fully on A13 trees
- Linux-Stable bumped to 5.10.136
- FHD/1080p support for Pixel 6 Pro
- all previous features and improvements kept intact
- bump f2fs-stable to latest available
- rework mm subsystem (check git for more details)
- scheduler improvements
- binder improvements from kernel/common
- improve exfat performance (if someones uses exfat formatted devices)
- loads of other changes from kernel/common
- update powerhal to account for a13 changes and port existing changes over
- loads of other changes, please check github
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.www.androidfilehost.com
If you´re coming from another kernel restore stock boot.img, dtbo.img, vendor_boot.img and vendor_dlkm.img before flashing. Thank you.
I wish everybody a great day/evening!
Have fun, enjoy the kernel and your phone.
If you like my work please consider a donation.
Donations are not mandatory but very welcome.
If you like my work and want to buy me a coffee/green tea: http://paypal.me/freak07
I'd really like this too.
fastboot flash boot <drag and drop master root.img here>
The same solutions that worked for me on Android 12 Stable are working for me on Android 13 Stable. [How To Guide] Working SafetyNet with Pixel 6 Pro Android 12. I did have to wipe the Play Store's app data and cache for the store to show me as having a certified device, but I still passed Basic Integrity before that.
Reinstalling SafetyNet Fix 2.3.1 in Magisk Modules seems to be working fine.The same solutions that worked for me on Android 12 Stable are working for me on Android 13 Stable. [How To Guide] Working SafetyNet with Pixel 6 Pro Android 12. I did have to wipe the Play Store's app data and cache for the store to show me as having a certified device, but I still passed Basic Integrity before that.
It absolutely effects image quality. Rendering at a lower resolution is absolutely going to be fuzzy and look worse.
There are sources for QPR Beta available, that´s not the problem.
No there´s no telegram group. Everything you need is here on XDA. All information is in the first few posts. If you use the search function you´ll find even more I guess.
Neither do I have a problem running my kernel with now playing enabled
No, that´s not related to the kernel. The framework decides how the framerate is handled. The kernel just provides the endpoints the frameworks decides when to switch from and has nothing to say about this.