-
Android.mk- Android makefile with TWRP and OrangeFox support -
AndroidProducts.mk- Product makefile with both TWRP and OrangeFox options -
BoardConfig.mk- Board configuration with A/B partition support -
twrp_jlhs.mk- TWRP product configuration -
ofox_jlhs.mk- OrangeFox product configuration
-
ofox.mk- OrangeFox base configuration -
recovery/root/etc/ofox.rc- OrangeFox init script
-
recovery/root/init.recovery.jlhan00.rc- Recovery init script -
recovery/root/init.recovery.jlhan00.usb.rc- USB configuration -
recovery/root/etc/twrp.fstab- Filesystem table with A/B support
-
system.prop- System properties for the device
-
setup.sh- Setup script for device tree -
extract_kernel.sh- Kernel extraction script -
makefile- Makefile for building
-
README.md- General documentation -
kernel_analysis.md- Kernel source analysis -
PREBUILD_INSTRUCTIONS.md- Prebuilt files preparation guide -
BUILD_CHECKLIST.md- This checklist
-
prebuilt/- Prebuilt files directory -
prebuilt/dtb/- Device tree blobs directory
-
AB_OTA_UPDATER := true -
BOARD_BUILD_SYSTEM_ROOT_IMAGE := false - Recovery A/B partitions configured:
-
recovery_a/recovery_b -
recovery_ramdisk_a/recovery_ramdisk_b -
recovery_vendor_a/recovery_vendor_b
-
- Boot A/B partitions configured:
-
boot_a/boot_b -
vendor_boot_a/vendor_boot_b
-
- Super partition configured
- Dynamic partitions listed: system, system_ext, vendor, product
- Main partition size: 9122611200 bytes
- BOOT: 67108864 bytes (64MB)
- VENDOR_BOOT: 67108864 bytes (64MB)
- RECOVERY: 67108864 bytes (64MB)
- RECOVERY_RAMDISK: 67108864 bytes (64MB)
- RECOVERY_VENDOR: 67108864 bytes (64MB)
- SUPER: 9126805504 bytes (8.5GB)
- Architecture: ARM64 (armv8-a)
- CPU: Cortex-A76 + Cortex-A55 (big.LITTLE)
- Platform: MediaTek MT6877 (Dimensity 900)
- GPU: Mali-G57
- Display: 1080x2400 (FHD+)
- Pixel format: BGRA_8888
- Kernel base: 0x40078000
- Kernel offset: 0x00008000
- Ramdisk offset: 0x11088000
- DTB offset: 0x07c08000
- Kernel image name: Image.gz-dtb
- Header version: 2
- FBE (File-Based Encryption) support
- Metadata decryption support
- USB MTP/ADB support
- Touchscreen support
- Display support
- Storage support (UFS/F2FS/EXT4)
- TWRP build option:
lunch twrp_jlhs-eng - OrangeFox build option:
lunch ofox_jlhs-eng
-
prebuilt/kernel- Kernel Image.gz-dtb (to be extracted) -
prebuilt/dtb/mt6877-jlh-an00.dtb- Device tree blob (to be extracted)
-
boot_a.img- Boot kernel image (30MB) -
recovery_a.img- Recovery kernel image (45MB) -
recovery_ramdisk_a.img- Recovery ramdisk (32MB) -
recovery_vendor_a.img- Recovery vendor partition (24MB) -
vendor_boot_a.img- Vendor boot image (64MB) -
ramdisk_a.img- Ramdisk image (2MB)
- Extract kernel from
boot_a.imgusing magiskboot - Extract DTB from
boot_a.imgor build from kernel source - Copy extracted files to prebuilt directories
- Android 11+ source tree
- TWRP source tree or OrangeFox source tree
- Proper build environment (Java, Python, etc.)
- Toolchain (aarch64-linux-android-)
- magiskboot - For extracting kernel and DTB
- make - Build tool
- mka (Android's wrapper for make) - Recommended
- Python - Required for build system
- Git - For source management
cd C:\Users\Administrator\Desktop\iflow\extracted_images
magiskboot.exe unpack boot_a.img
copy kernel ..\twrp_jlh_an00\prebuilt\kernel
copy dtb ..\twrp_jlh_an00\prebuilt\dtb\mt6877-jlh-an00.dtb- Kernel extracted successfully
- DTB extracted successfully
- Files copied to correct locations
cd <android_source_root>
source build/envsetup.sh- Environment variables set correctly
For TWRP:
lunch twrp_jlhs-eng- Build target selected: twrp_jlhs-eng
For OrangeFox:
lunch ofox_jlhs-eng- Build target selected: ofox_jlhs-eng
mka recoveryimage- Build started successfully
- Build completed without errors
- Recovery image generated
ls -lh out/target/product/jlhs/recovery.img- Recovery image exists
- Image size is reasonable (40-60MB)
- Image can be flashed
- All Android build files present
- All recovery configuration files present
- All OrangeFox specific files present
- All documentation files present
- A/B partition support enabled
- All three recovery partitions configured
- Dynamic partition support configured
- Hardware parameters correctly set
- Kernel parameters correctly set
- Recovery features properly configured
- TWRP build support
- OrangeFox build support
- Naming conventions followed
- File structure compatible with Android build system
- Device name: Honor 50 SE (JLH-AN00)
- Platform: MediaTek MT6877
- Architecture: ARM64
- Display: 1080x2400
- Three recovery partitions: recovery_a, recovery_ramdisk_a, recovery_vendor_a
- Need to extract kernel and DTB from stock images
- Cannot build without prebuilt kernel
- Kernel must match device variant
- Display driver may need testing
- Touchscreen driver may need calibration
- Encryption support may need additional configuration
- Must use A/B partition aware tools
- Recovery images must support A/B slots
- Flashing requires slot selection
- Extract Prebuilt Files: Follow
PREBUILD_INSTRUCTIONS.md - Test Build: Attempt to build recovery image
- Verify Image: Check if image boots correctly
- Test Functionality: Test all recovery features
- Refine Configuration: Adjust based on testing results
- Kernel Source:
C:\Users\Administrator\Desktop\iflow\Code_Opensource\kernel\ - Device Trees:
C:\Users\Administrator\Desktop\iflow\Code_Opensource\kernel\arch\arm64\boot\dts\mediatek\hihonor_mt6877_jlh_an00_*.dts - Source Images:
C:\Users\Administrator\Desktop\iflow\extracted_images\ - TWRP: https://twrp.me/
- OrangeFox: https://orangefox.org/
- This device tree supports both TWRP and OrangeFox Recovery
- A/B partition system is fully configured
- Three recovery partitions are properly configured
- All hardware parameters are based on actual device specifications
- Kernel configuration is based on Honor 50 SE kernel source analysis
Date: 2026-02-05 Status: Ready for build (pending prebuilt files extraction) Compatibility: TWRP 11+ / OrangeFox R11.1+