Jump to content

Samsung Galaxy A51 (samsung-a51)

From postmarketOS Wiki
Samsung Galaxy A51
Samsung Galaxy A51, running postmarketOS with XFCE 4
Samsung Galaxy A51, running postmarketOS with XFCE 4
Manufacturer Samsung
Name Galaxy A51
Codename samsung-a51
Model SM-A515
Released 2019
Type handset
Hardware
Chipset Samsung Exynos 9611
CPU 4x 2.3 GHz Cortex-A73
4x 1.7 GHz Cortex-A53
GPU Mali-G72
Display 1080 x 2400 Super AMOLED
Storage 64GB / 128GB / 256GB
Memory 4GB / 8GB
Architecture aarch64
Software
Original software Android
Original version
The version the device was shipped with.
13
postmarketOS
Category testing
Pre-built images
Whether pre-built images are available here.
no
pmOS kernel
The kernel version that runs on the device's port.
4.14.113
Unixbench score
Unixbench Whetstone/Dhrystone score. See Unixbench.
3413.6
Features
Flashing
It is possible to flash the device with pmbootstrap flasher.
Partial
USB Networking
After connecting the device with USB to your PC, you can connect to it via telnet (initramfs) or SSH (booted system).
Works
Internal storage
eMMC, SD cards, UFS, ...
Works
SD card
Also includes other external storage cards
Untested
Battery
Charging and battery level reporting works
Works
Screen
Display works. Ideally with sleep mode and brightness control.
Works
Touchscreen
Works
Multimedia
3D Acceleration
Untested
Audio
Audio playback, microphone, headset and buttons.
Untested
Camera
Untested
Camera Flash
Untested
Connectivity
WiFi
Works
Bluetooth


Ethernet
Untested
GPS
Untested
NFC
Near Field Communication
Untested
Modem
Calls
Untested
SMS
Untested
Mobile data
Untested
Miscellaneous
FDE
Full disk encryption and unlocking with unl0kr.
Untested
USB OTG
USB On-The-Go or USB-C Role switching
Untested
HDMI/DP
Video and audio output with HDMI or Display Port works.
Untested
Sensors
Accelerometer
Auto screen rotation works in desktops e.g. Phosh or Plasma Mobile
Untested
Magnetometer
Sensor to measure magnetism
Untested
Ambient Light
Untested
Proximity
Untested
Haptics
Untested


Contributors

  • manoedinata

Users owning this device


How to enter recovery/Odin mode

  • Press and hold Bixby Key + Volume Down simultaneously while device is powered off, then plug USB cable in for Odin mode.
  • Press and hold Bixby Key + Volume Up + Power simultaneously while device is powered off for recovery mode.
  • Press and hold Volume Down + Power simultaneously for 7-8 seconds while device is powered on to force reboot. Once time is up immediately release the keys and press one of combinations above before boot logo appears, otherwise device will boot normally.

Installation

Use pmbootstrap to build your own installation image. The device configuration will also build firmware package, which contains required proprietary blobs for Wi-Fi.

Since dynamic partition support hasn't been added to the port, you will have to either install to external SD Card or use userdata partition as postmarketOS' root partition. This can be done by adding --recovery-install-partition=data to your pmbootstrap's install command. See Installation from recovery mode for more information.

Heimdall installation is untested. Use Installation_from_recovery_mode instead.

Note Particularly for this device, ADB Sideloading through TWRP may cause the installation process to hang after finishing the installation. Install postmarketOS with TWRP's Install GUI instead.

Known Working

  • Touchscreen
  • Display (with Samsung's DECON driver)
  • Framebuffer (additionally with msm-fb-refresher to refresh the screen)
  • Charging & battery status
  • Volume (tested on XFCE)
  • Screen brightness changing (partially)
  • Wi-Fi (with firmware package)

Notes

USB Networking

The device isn't detected on the computer while plugged in through USB cable. dmesg on host shows nothing related to new device being connected. While similar device like Samsung Galaxy Note 9 (Exynos) (samsung-crownlte) and Samsung Galaxy S8 (samsung-dreamlte) uses additional initramfs hook, that doesn't help at all - nothing in dmesg on PC.

USB Networking works without any additional setup by enabling CONFIG_USB_ETH (and additionally CONFIG_USB_ETH_RNDIS).

Wi-Fi

Although the required proprietary blobs are loaded and Wi-Fi did turn on, it can't connect to any available network. This assumption is based on attempt to connect to an AP through NetworkManager (on XFCE 4). Needs more investigation.

To enable Wi-Fi, these proprietary blobs are required to be loaded:

vendor/etc/wifi/mx
vendor/etc/wifi/mx140.bin
vendor/etc/wifi/mx140_wlan.hcf
vendor/etc/wifi/mx140_wlan_sw.hcf

These files are pulled and packaged already in firmware-samsung-a51 pmaports package.

Framebuffer

Some patches are required for framebuffer to fix some issues, e.g. swapped color, missing fb0 device, etc. The last one is required to boot framebuffer-based or text interfaces with CONFIG_FRAMEBUFFER_CONSOLE, or if you want to display kernel console to the screen, otherwise the kernel panics with null pointer dereference.


See also