[Samsung Galaxy S9 & S9+ Cross Device Development] Eamo5:
FAQ

A FAQ section will be established as kernel development progresses. If you have any explicit unanswered questions, feel free to ask away. If you must contact me due to an issue, please report your device variant, ROM, firmware, vendor and previous kernel.

1. I can’t unlock / boot my phone! What do I do?

If you're stuck in a lockscreen loop, make sure you're on a firmware with a matching ramdisk to the kernel. Do not mix a CSC1 kernel ramdisk with a CSA2 ROM for example. Anytime the ramdisk is changed, it will be listed in the changelog. Are you on the correct firmware and vendor? If not, you can always flash this zip or revert back to previous versions through the Android File Host folder. Can anyone else successfully flash the kernel? If yes, verify the MD5 sum by referencing and ensuring a matching MD5 sum between the local file and the Android File Host file. Is it isolated to one device variant? (G960F / G965F) Did I just push an update? If yes, contact me on Telegram in the Endurance Kernel group for a faster response, and XDA for an eventual response. Does your ROM require a permissive SELinux status to boot? If yes, use the 'Magisk SELinux Manager' module to adjust your SELinux status. If none of this can solve your problem, contact me through the Endurance Kernel group.​

2. Why doesn't my camera work after flashing the kernel?

Verify that you are on the correct firmware, vendor and a ROM that supports the current kernels sources. If you are still encountering issues after verifying this is correct, then let me know! If you do not wish to update, you can maintain a version of the kernel that does support your ROM by reading the relevant changelog for your OS and downloading the previous version from the Android File Host folder​

3. Why doesn't my Bluetooth work after flashing the kernel?

Are you on an Oreo ROM that does not patch libsecure_storage, such as DevBase? If your Bluetooth is broken, the answer is probably. Instead you can use ianmacd's Magisk module 'libsecure_storage companion for rooted Samsung (Oreo) devices' or you can manually flash a zip to patch it yourself, without the need for Magisk.​

4. Should I use the permissive or enforcing SELinux status?

The decision is yours. There is plenty of documentation available online outlining their differences. I strongly recommend enforcing, hence why permissive is not officially supported. Permissive is far less secure, and hence I do not condone the use of permissive. If you are using permissive, you should either have to due to a dependency or have another specific reason for doing so. eg. ROM requires disabled signature check. For most users, unless directed otherwise, use the default enforcing build.​

5. When will you update the kernel?

Once ELS is updated and the kernel is ready! This is just a side hobby and I do have a life outside of kernel development. Be patient, the update will arrive within a few days if not ASAP.​

6. Does this kernel support 9.0 AOSP GSI's?

Yes! Anything that's currently working on the Pixel Experience YEET kernel (lol) such as dual audio and MTP should also be working there too, plus some extra relevant changes.​

7. Does the 8.1 AOSP kernel work with Lineage OS?

As of the Lineage OS 20181112 release, the kernel will no longer boot at all on Lineage OS due to the merging of Note 9 sources and the dependency on the incompatible Note 9 vendor. Albeit, Lineage previously wasn't recommended regardless due to the outdated vendor and kernel sources, which breaks the camera.​

8. Will you add CPU undervolting?

No, EAS (Energy Aware Scheduling) has mostly made undervolting mostly irrelevant. Google EAS if you would like it find out more information as to why it is the case. I've included a detailed YouTube video outlining the scheduling mechanisms of EAS here.​

9. Does this kernel support Note 9 ROM ports?

Not at this point in time but perhaps in the future. Almost certainly not within Oreo's lifespan anyway.​

10. Do I need to install Magisk?

Nope, Magisk is entirely optional with this kernel.​

11. Why when I flash the kernel, do I get a Magisk zip not found error?

Unfortunately, that means your Magisk distribution is not supported by the Magisk chaining feature. The kernel should have still installed despite not finding the Magisk zip, so you'll just have to flash Magisk manually afterwards. Personally I use ianmacd's nightly builds for S9 and have 0 issues with the chaining feature.​

12. Why does this kernel offer no additional governors?

Because most of them are unstable and cause the device to crash, as well as EAS' integration with schedutil and EHMP.​

13. Why does this kernel makes my device crash / battery poor / performance poor?

Because this kernel is still in beta. At this point, these should hopefully not be issues due to me and several others testing this kernel for several months. If this is the case, report it on the XDA thread or Telegram group.​

14. Why is my WiFi performance worse when using this kernel?

This may be the case for some people. This kernel uses the Westwood+ TCP algorithm for enhanced WiFi speeds on certain networks. However there may be scenarios on poor signal networks, this TCP algorithm may cause packet loss at a greater rate than is default. This should hopefully not be an issue for anyone, however if it is, try using bic as default and contact me.​

15. Why is my battery still terrible?

Are you in an area with poor signal reception? Unfortunately that is one thing a custom kernel cannot compensate for due to the device modem having restricted access and also legal issues. That leaves us with optimizations that can only be done to the SOC of the device. How you use your device can also greatly lead to variation in battery stats. If you are in need of further battery, 'underclocking' is available and is explained in OP. If you want the best battery life, I advise you try out that build.​

16. Does the kernel support Samsung's Pie beta program?

Not yet, we still have to wait for sources to be released. Once sources are available, I'll begin work!​

17. Why doesn't Bluetooth work on Pixel Experience with the 8.1 AOSP kernel?

Due to SELinux interfering with Bluetooth's functioning, you will need to set the kernel to a permissive SELinux status through the 'Magisk SELinux Manager' module.​

18. Why does SafetyNet fail on the AOSP kernels?

This is a minor issue I don't believe I can address on my end. This can be worked around however to allow SafetyNet to pass. You will need the 'MagiskHideProps' module installed. After rebooting, using a Terminal Emulator app enter the following commands in the order listed without quotation marks.

Type 'su'

Type 'props'

Type '1' to edit the device fingerprint

Type 'f'

Type '13' to select Samsung

Type '23' if you have a Galaxy S9 (G960X) or '24' if you have a Galaxy S9+ (G965X)

Reboot

19. How do I overclock / underclock?

I can't believe I need this as a FAQ still. If you've been redirected here, read the OP! In order to use overclocking or underclocking, simply rename 'Endurance-Kernel-1.x.x' to 'Endurance-Kernel-1.x.x_oc' or 'Endurance-Kernel-1.x.x_uc'. If the kernel has '_uc' or '_oc' in the name of the zip file, it will flash the selected build of the kernel.​

20. How can I use F2FS?

To use F2FS, you must erase your data and format your data partition (and optionally cache partition) to F2FS using the N9 TWRP available here, even if you are on S9. From there you should be able to reboot your device and restore your data through a backup.​

21. Where can I donate?

I used to not accept donations but while I'm undertaking my degree, a small donation could go a long way. You can donate through my PayPal link here.​