/kernel_samsung_m307f

mint kernel for m30s

Primary LanguageCOtherNOASSERTION

Mint branding

Mint Kernel

Freshen up your Galaxy. An optimized, One UI-first kernel for Samsung Galaxy devices on the Exynos 9610 platform.

Common Mint kernel source for the Exynos 9610 Platform

Supports the following devices:

  • Samsung Galaxy A50 (a50)
  • Samsung Galaxy A50 (m30s)

Looking for the Linux kernel readme? Click here.

Source References and Contributors

Mint Kernel will never be possible without the unwavering work of these awesome people. I have tried my best to keep their authorships on the commit history. Thank you very much!

About

Mint is an optimized kernel source based on Samsung's open-source kernel drops of the Galaxy A50. Additional features include:

  • Built with LLVM/Clang (proton-clang) 13
  • Built with Link-Time Optimizations (LTO) enabled
  • A fully-revamped Exynos Mobile Scheduler (EMS) optimized for low-latency tasks.
  • A smarter governor with boost algorithms from the Galaxy S10 as well as 'inferencing' from the S20.
  • Added additional I/O schedulers, anxiety is set as default.
  • Various kernel and performance improvements from Linux upstream, and even from Qualcomm devices.
  • Backported changes from multiple devices, including newer Galaxy devices.
  • RAM Plus support (requires ROM support), including support for per-process swap.
  • Disabled basic Samsung hardening (Knox, etc).
  • Added support for WireGuard VPN tunnel.

How to Install

The device must have an unlocked bootloader; as well as TWRP, SHRP, or any recovery of your choice installed.

  1. Download latest available release from GitHub Releases.
  2. Copy the ZIP file to your SD card if necessary.
  3. Reboot to recovery.
  4. Flash downloaded ZIP.
  5. Reboot to System instead of recovery.
  6. ???
  7. Profit

Building Locally

Local and GitHub Action builds of Mint are built using Ubuntu 22.04 LTS. The following prerequisites are needed to build with this source:

Ubuntu/Debian

sudo apt-get install libelf-dev bzip2 bc p7zip-full jq git python3 python-is-python3

Fedora

sudo dnf install elfutils-libelf-devel bzip2 bc p7zip jq git python3

Once you have the prerequisites installed, simply run this on the Terminal.

./build.sh -d|--device <device> -v|--variant <variant> -a|--android <Android version> [main options]

Device options:

- a50 # For Samsung Galaxy A50
- m30s # For Samsung Galaxy M30S

More options are available on the script by executing ./build.sh --help|-h. The script will download all it needs (including the toolchain) and builds a new kernel build for you.