Samsung Galaxy S7 Edge (samsung-hero2lte)
How to enter flash mode
When the device is fully powered off, hold Power, Volume Down and Home for a few seconds.
A (turquoise) download mode warning screen should appear, press Volume Up to confirm.
It is recommended to sideload an android recovery zip through TWRP for the easiest process, since heimdall freaks out about the subpartitions in SYSTEM and won't move past ~7%.
You can use
pmbootstrap flasher flash_kernel and then use netcat or similar to flash SYSTEM, but this is a longer and more redundant method.
$ pmbootstrap install --android-recovery-zip $ pmbootstrap flasher --method=adb sideload
What is tested and works
- The kernel with in-tree built exynos DTBH based image
- USB Networking (you might have to set its MAC address beforehand though)
- All display environments with software rendering (yes, even plasma mobile works, albeit slowly and with rubbish dpi scaling)
- Exynos (at least modern exynos) has a different dt.img format to Qualcomm devices, requiring a special dtbtool to go along with it. There is one included in the kernel source we have, which should make the dtb automatically. In future, for other exynos devices (S8 and up come to mind) we should package this as a common tool and treat it in a way similar to qcdt.
- Camera drivers (Samsung FIMC-IS2) (and accompanying flash LED drivers, controlled by a Samsung PMIC) needed to be disabled in the kernel to prevent boot loops.
To get working
- FDE with osk-sdl - Tested and interface works, but crashes and bootloops attempting any decryption
- (If possible) 3D acceleration using the binary Mali userspace drivers from ARM, under Halium
- Mainlining (should probably help the android community too)