Samsung Galaxy S7 (samsung-herolte)

From postmarketOS Wiki
Samsung Galaxy S7
Samsung Galaxy S7 running PMOS SXMO
Samsung Galaxy S7 running PMOS SXMO
Manufacturer Samsung
Name Galaxy S7
Codename samsung-herolte
Released 2016
Type handset
Hardware
Chipset Samsung Exynos 8890 Octa
CPU Octa-core Exynos M1 & Cortex-A53
GPU Mali-T880 MP12
Display 2560x1440 2K Super AMOLED
Storage 32/64 GB
Memory 4 GB
Architecture aarch64
Software
Original software Android
Original version 6.0
postmarketOS
Category testing
Pre-built images no
Features
Flashing
Partial
USB Networking
Works
Internal storage
SD card
Battery
Works
Screen
Works
Touchscreen
Works
Multimedia
3D Acceleration
Audio
Camera
Camera Flash
Connectivity
WiFi
Works
Bluetooth
GPS
NFC
Modem
Calls
SMS
Mobile data
Miscellaneous
FDE
USB OTG
HDMI/DP
Sensors
Accelerometer
Magnetometer
Ambient Light
Proximity
Hall Effect
Haptics
Barometer


Note This is the exynos device. For the qualcomm version, see samsung-heroqlte.

Contributors

  • Polynomdivision

Users owning this device


What works

  • Compiling the kernel and booting (!314)
  • Wifi with the proprietary firmware (!309)
  • Display
  • TouchScreen
  • Flashing via android recovery zip
  • Wayland/Weston/Xwayland

Notes

  • The device and kernel packages are basically just a copy of the Galaxy S7 Edge's packages. The only difference is that the two devices use different panels.
  • using command: apk upgrade can cause loading forever...

Mainline notes

For uniLoader:

  • To enable the framebuffer we need to write 0x1290 to address 0x13960070. To get this value search for the decon_f base address and add 0x70 (HW_SW_TRIG_CONTROL) to it, then use devmem2 together with the value you calculated on a downstream kernel with CONFIG_DEVMEM enabled.
  • The MUIC UART is located under address 0x14c50000. To get minimal output follow this guide (add 0x20 to the UART address for the TX offset).

Installation

  • Install TWRP recovery as described here.
  • Wipe the device while in TWRP.
  • Put device in download mode by holding the home, volume down and power buttons when powered off.
  • Execute $ pmbootstrap flasher flash_kernel to flash the kernel. (Note: You do not need to reflash the kernel if you want to reinstall PMOS with a different image)
  • Reboot Device into TWRP Recovery and execute pmbootstrap install --android-recovery-zip
  • While in TWRP, enable sideloading by going to Advanced -> ADB Sideload and then execute $ pmbootstrap flasher --method=adb sideload

Links