Jump to content

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
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
Works
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


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