Jump to content

Samsung Galaxy S7 Edge (samsung-hero2lte)

From postmarketOS Wiki
Revision as of 18:33, 5 July 2019 by IdanHoro (talk | contribs) (--no-fde removed (deprecated))
Samsung Galaxy S7 edge
Samsung Galaxy S7 Edge
Samsung Galaxy S7 Edge
Manufacturer Samsung
Name Galaxy S7 edge
Codename samsung-hero2lte
Released 2016
Hardware
Chipset Samsung Exynos 8890 Octa
CPU Exynos M1 (4x @ 2.3GHz) and ARM Cortex-A53 (4x @ 1.6GHz)
GPU ARM Mali T880 MP12
Display 1440x2560 AMOLED
Storage 32GB (upgradeable via microSD)
Memory 4GB
Architecture aarch64
Software
Original software Android 6.0 on Linux 3.18.14
postmarketOS
Category testing
Pre-built images no
Features
Flashing
Partial
USB Networking
Works
Internal storage
No data
SD card
No data
Battery
Works
Screen
Works
Touchscreen
Works
Multimedia
3D Acceleration
No data
Audio
No data
Camera
No data
Camera Flash
No data
Connectivity
WiFi
No data
Bluetooth
No data
GPS
No data
NFC
No data
Modem
Calls
No data
SMS
No data
Mobile data
No data
Miscellaneous
FDE
No data
USB OTG
No data
HDMI/DP
No data
Sensors
Accelerometer
No data
Magnetometer
No data
Ambient Light
No data
Proximity
No data
Hall Effect
No data
Haptics
No data
Barometer
No data


Contributors

  • WilliamO7

Maintainer(s)

  • WilliamO7

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.

Installation

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)
  • SSH
  • All display environments with software rendering (yes, even plasma mobile works, albeit slowly and with rubbish dpi scaling)

Quirks

  • 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
  • Wi-Fi
  • (If possible) 3D acceleration using the binary Mali userspace drivers from ARM, under Halium
  • Panfrost?
  • Mainlining (should probably help the android community too)

See also