Samsung Galaxy S9 (samsung-starqltechn)
![]() SM-G9600 with SXMO running Firefox (WIP kernel from dsankouski repository) | |
Manufacturer | Samsung |
---|---|
Name |
Galaxy S9 (SM-G9600 DS) |
Codename | samsung-starqltechn |
Released | 2018 |
Type | handset |
Hardware | |
Chipset | Qualcomm Snapdragon 845 (SDM845) |
CPU |
Octa-core (4x 2.8 GHz Kryo 385 Gold 4x 1.7 GHz Kryo 385 Silver) |
GPU | Adreno 630 |
Display | 5.8 inch 18.5:9, 2960 x 1440 pixel 568 PPI, capacitive touchscreen, 10 multi-touch points, Super AMOLED, Corning Gorilla Glass 5, glossy: yes |
Storage | 64 GB |
Memory | 4 GB |
Architecture | aarch64 |
Software | |
Original software The software and version the device was shipped with. |
Android 8 |
Extended version The most recent supported version from the manufacturer. |
Android 10 |
postmarketOS | |
Category | community |
Mainline Instead of a Linux kernel fork, it is possible to run (Close to) Mainline. |
yes |
Device package |
![]() |
Kernel package |
![]() |
Flashing It is possible to flash the device with pmbootstrap flasher . |
Broken
|
---|---|
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 |
Works
|
Screen Display works. Ideally with sleep mode and brightness control. |
Works
|
Touchscreen |
Works
|
Multimedia | |
Audio Audio playback, microphone, headset and buttons. |
Untested
|
Camera |
Untested
|
Connectivity | |
WiFi |
Broken
|
Bluetooth |
Broken
|
GPS |
Untested
|
Modem | |
Calls |
Broken
|
SMS |
Works
|
Mobile data |
Works
|
Miscellaneous | |
FDE Full disk encryption and unlocking with unl0kr. |
Works
|
USB OTG USB On-The-Go or USB-C Role switching |
Untested
|
Sensors | |
Accelerometer Auto screen rotation works in desktops e.g. Phosh or Plasma Mobile |
Untested
|
Haptics |
Works
|
Primary Bootloader It is possible to replace stock bootloader with U-Boot. |
Broken
|
---|---|
Secondary Bootloader It is possible to chainload U-Boot from stock bootloader. |
Works
|
Mainline Latest versions of U-Boot are not broken and it is possible to use them. |
Broken
|
Buttons It is possible to navigate in boot menu or grub with volume and power buttons. |
Works
|
Contributors
- dsankouski
Maintainer(s)
Users owning this device
- Davitek (Notes: Running PostmarketOS!!)
- Dsankouski
- Ghatto404 (Notes: all buttons gone except volume rocker)
- Retrocountry (Notes: (almost) Running PostmarketOS!)
- Vicenre22 (Notes: my S9 has Windows 10 ARM installed)
- Zephyr1112 (Notes: Backup device, AOSP 13, 4/64GB)
How to enter flash mode
Hold
+ + until screen shows vendor logo. Use Odin or Heimdall to flash.Installation
Prerequisites
Upgrade
Before installing postmarketOS, it's recommended that you upgrade your device to the latest release of Android. This is not a requirement but is heavily recommended.
Unlock the bootloader
Before installing postmarketOS you have to unlock your bootloader. Remember, it will irrevocably trip knox flag, hence making Samsung pay no longer usable.
1. Open setting, go to "About phone", then "Software information" and tap on the "Build number" box ~10 times until the "You are now a developer" toast message appears.
2. Go back to the main settings page, go to "Developer options". Toggle the switch to "OEM unlocking"
Manual build
The vendor is Samsung, the codename is "starqltechn".
Follow the pmbootstrap article, until you have done the install action (note that --fde
stands for full-disk-encryption - this can also be left out).
pmbootstrap install --fde
Reboot back into flash mode as explained above.
By default the rootfs will be flashed to system, this doesn't leave much free space for your applications / data, if you don't mind factory resetting the device you can instead flash to userdata by specifying the partition like below.
pmbootstrap flasher flash_rootfs --partition userdata --method heimdall-bootimg --no-reboot pmbootstrap flasher flash_kernel --method heimdall-bootimg --resume
The phone should reboot into PostmarketOS now.
Post install
pd-mapper
Kernel CONFIG_QCOM_PD_MAPPER option was disabled in 6.13 due to 'some weird race conditions', and we stick with userspace pd-mapper. Since starqltechn relies on `msm-firmware-loader` package to link phone's firmware (as opposed to dedicated firmware package in majority sdm845 devices), starqltechn has non standard firmware location, and pd-mapper should be built with firmware class parameter path support.
Build instructions:
- clone dsankouski pd-mapper repo
- checkout support_msm_firmware_loader branch
make
- copy pd-mapper to phone at
/usr/bin/pd-mapper