[LG G6 ROMs, Kernels, Recoveries, & Other Developme] zefie:
Melina Reborn

Melina returns for AOSP Support
​

If you loved Melina Kernel, you will be happy to hear that Melina Reborn has been developed with new V30A sources (as of rel_r5, Melina is now using more stable sources), with all of the features and performance you loved from Melina Kernel, but now with AOSP support! I did have to disable F2FS, if it is requested, I will try to re-implement it, but AFAIK it was never used on our devices anyway. Aside from F2FS everything else is available. Or should be :)

Tested on HavocOS-v3.2 on a US997 with BL 21E. (Note: My SD Card slot is broken. I cannot test any SDCard related issues. No issues are foreseen, but if any SDCard related issues happen to arise, please report them in as much detail as possible (dmesg, logcat, etc), as I cannot test SDCard functionality myself.)

Note: There have been reports of missing functionality under Pixel Experience Pie. This may occur on all Pie ROMs, but this is yet unknown. Pie was not tested, so consider this an Android 10 Only kernel for now.

"bootloop" note: Your G6 may reboot itself once after flashing my kernel, before reaching the OS boot animation. Do not panic, this is normal. I believe it is part of the Magisk recovery. If the bootloop occurs more than 1 time, even if it makes it to the OS, please report it here.

Primary Features:

Can now charge while powered off (offline charging) (rel_r5)

clang compiled and optimized kernel with extended armv8-a attributes (rel_r5) (for real this time!)

WiFi Hotspot working with properly configured ROM (rel_r5) (including 5ghz)

USB disconnect issues should be fixed (rel_r5)

Charging issues should be fixed (rel_r5)

Enabled FM Radio (requires supported ROM which currently there is none because it is still in testing, but looking promising)

Switched to more stable kernel sources (rel_r5) (see github readme)

Optimized and DEBUG editions (rel_r4)

Even more debug routines reduced (rel_r4)

Updated CPU optimizations one more time (tune for Kyro) (rel_r4) (this actually failed silently that is why rel_r4 was terrible)

More adjustments to reduce (and hopefully remove) the chance of random reboots (rel_r4)

Updated to AnyKernel 3, allows retaining Magisk when flashing kernel (rel_r3)

Module-less Kernel (rel_r3)

Removed old exFAT driver in favor of new sdfat driver (rel_r3)

Significantly reduce debugging messages/routines for performance enhancements (rel_r2)

Cleaner Kernel code, fixed all compiler warnings (with ubertc 6.x) (rel_r2)

Optimize compiler flags with big.LITTLE optimizations (rel_r2)

Updated AnyKernel Installer to place modules where they should be (rel_r2)

Fixed crashes due to missing 32-bit support (rel_r1.1)

Added maple iosched, enabled tcp westwood congestion sched

New kernel defaults: iosched (now: maple, was: cfq), tcp (now: westwood, was: bic) (Note: These default values may be overridden by the ROM. Be sure to use something like kernel adiutor to verify and set the values as desired.)

Binary releases built with ubertc aarch64-linux-android-6.x

DriveDroid CD-ROM Emulation Support

zzmove and elementalx governors

Various other improvements

Removes /sbin/rctd and related service entry in init.lge.rc if detected (for Stock ROMs, untested)

Remove forceencrypt (for Stock ROMs, untested)

Open source compatible replacement for Tuxera exFAT driver (removed in rel_r3, superseded by sdfat)

The following features from the original Melina Kernel are no longer available due to issues:

Flash Friendly FS (F2FS) Support

Downloads

Note: The difference between optimized and DEBUG is that the optimized version of Melina Kernel has extra debugging removed, which may increase battery life and performance slightly, but at the cost of making it harder to fix problems. The DEBUG kernel is more like most other kernels that are based on LGE official code, where LGE left on a lot of debug routines that aren't needed once the ROM is functional. However, those wanting to help fix issues, or ROM developers working on their ROM may want this extra information. This is why Melina Reborn now offers both kernels as an option.

rel_r5

US997: Optimized - DEBUG

H870 Optimized - DEBUG

H872 Optimized - DEBUG

rel_r4

US997: Optimized - DEBUG

H870 Optimized - DEBUG

H872 Optimized - DEBUG

rel_r3

US997

H870

H872

rel_r2

US997

H870

H872

rel_r1.1

US997

H870

H872

Known Issues

Some users have been reporting "random" reboots with rel_r1.1 and rel_r2. It seems linked to spi8 (fingerprint) and spi12 (touchscreen). An attempt to address this was added to rel_r3.

Attribution

For a full list of credits, please see the Github sources below, and browse the commit log. I try to keep commits as authentic as possible (except my own which I rebase and amend alot lol).

[MENTION=7503768]TheWolfSVK[/MENTION] for his work on the V30A sources, as well as for his incredible Havoc ROM

[MENTION=4544860]osm0sis[/MENTION] for AnyKernel3

Everyone who used and helped test the original Melina Kernel

When reporting any issues please be as detailed as possible. At a minimum, include your model and bootloader version. Any logs would be appreciated but I know sometimes it's not possible to get them (check for /sys/fs/pstore/console-ramoops). Also try to explain with as much detail as possible what you were doing when the problem happened (What app was active (running and on screen)? Which apps were in the background? Are you rooted? etc)

Github Sources

ROM Developers: You may include this kernel in your ROM so long as you link back to this thread in your release thread. If you modify any of the kernel or config, please also change the name from melinareborn to melinamodified in arch/arm64/configs/melina_common_android_intree_subconfig. This kernel can now be used in-tree while building Android, without clang, although ubertc may be required, untested (I built with ubertc in the tree, see here how to add Melina to a lineage-based G6 device tree.)

clang in-tree building now works and the bluetooth issue was found and addressed (don't ask, it was silly)