This Repo Is Based On SurfaceDuoPkg
Thanks for Gustave's instructions!
Project Mu UEFI Implementation for SM8150 Devices
- At least 2 cores x86_64 processor running at 2Ghz or higher implementing the X86 ISA with 64 bit AMD extensions (AMD64) (Currently, building on any other ISA is not supported. In other words, do. not. build. this. on. a. phone. running. android. please.)
- SSD
- A linux environment capable of running below tool stack:
- Bash
- Python 3.10 or higher (python3.10, python3.10-venv, python3.10-pip)
- mono-devel
- git-core, git
- build-essential
- PowerShell Core 7
- clang38 (or higher), llvm, ggc-aarch64-linux-gnu
- Exported CLANG38_BIN environment variable pointing to LLVM 10 binary folder
- Exported CLANG38_AARCH64_PREFIX variable equalling to aarch64-linux-gnu-
- Clone this repository to a reasonable location on your disk (There is absolutely no need to initialize submodules, stuart will do it for you later on)
- Run the following commands in order, with 0 typo, and without copy pasting all of them blindly all at once:
- Setup Base environment
./setup_env.sh
pip install --upgrade -r pip-requirements.txt
Alternatively, use docker if you don't have Ubuntu 20.04 environment
docker build -t mu:v1 .
docker run -it mu:v1 -v ./:/build/
Then finish the following process in docker environment
- Activate Workspace
python3 -m venv SurfaceDuo
source SurfaceDuo/bin/activate
- Setup MU environment
./setup_uefi.sh
- Stamp build
python3 ./Platforms/SurfaceDuo1Pkg/StampBuild.py
or
./build_releaseinfo.ps1
- Build UEFI
Usage: build_uefi.sh -d <target-device>
./build_uefi.sh -d <target-name>
- You will see Build/<target-device>.img if it builds successfully.
Device | Target name | DSDT Support | Maintainers |
---|---|---|---|
ASUS ROG2 | asus-I001DC | ✅ | Ww |
Axon Stage 5G | kakao-pine | ❌ | AKA |
BlackShark 2 | blackshark-skywalker | ❌ | NONE |
BlackShark 2 Pro | blackshark-darklighter | ❌ | NONE |
HTC 5G Hub | htc-rtx | ❌ | NONE |
LG G8 | iqoo-pd1936g | ❌ | NONE |
LG G8 | lg-alphaplus | ✅ | Yanhua |
LG G8S | lg-betalm | ✅ | J0SH1X |
LG G8X | lg-mh2lm | ✅ | Molly Sophia |
LG V50 | lg-flashlmdd | ✅ | AKA |
LG V50S | lg-mh2lm5g | ✅ | AKA |
Meizu 16T | meizu-m928q | ❌ | NONE |
Meizu 16s | meizu-m971q | ❌ | NONE |
Nubia RedMagic 3 | nubia-nx629j | ❌ | NONE |
Nubia RedMagic 3S | nubia-nx629jv1s | ❌ | NONE |
Nubia Mini 5G | nubia-tp1803 | ✅ | Alula |
OnePlus 7 | oneplus-guacamoleb | ❌ | NONE |
OnePlus 7 Pro | oneplus-guacamole | ✅ | Waseem Alkurdi |
OnePlus 7T Pro | oneplus-hotdog | ✅ | sunflower2333&Morc |
OnePlus 7T Pro 5G | oneplus-hotdogg | ✅ | NONE |
OPPO Reno 10X | oppo-op46c3 | ❌ | NONE |
OPPO Reno ACE | oppo-pclm10 | ✅ | sunflower2333 |
Qcom QRD 855 | qcom-msmnile | ✅ | not sunflower2333 |
Realme X3 | realme-rmx2086 | ❌ | NONE |
Samsung Galaxy S10 | samsung-beyond1qlte | ✅ | Ww |
Smartisan Pro 3 | smartisan-aries | ❌ | NONE |
Xiaomi 9 | xiaomi-cepheus | ✅ | qaz6750 |
Xiaomi Hercules | xiaomi-hercules | ✅ | Ww |
Xiaomi K20 Pro | xiaomi-raphael | ✅ | sunflower2333 |
Xiaomi Mix3 5G | xiaomi-andromeda | ✅ | sunflower2333 |
Xiaomi Mix Alpha u2 | xiaomi-avenger | ❌ | NONE |
Xiaomi Pad 5 | xiaomi-nabu | ✅ | Map220v |
Xiaomi Poco X3 Pro | xiaomi-vayu | ✅ | Degdag |
- Andrei Warkentin and his RaspberryPiPkg
- Sarah Purohit
- Googulator
- Ben (Bingxing) Wang
- Samuel Tulach and his Rainbow Patcher
- Renegade Project
- Lemon ICE
All code except drivers in GPLDriver
directory are licensed under BSD 2-Clause.
GPL Drivers are licensed under GPLv2 license.