Jump to content

Fairphone (Gen. 6) (fairphone-fp6)

From postmarketOS Wiki
Fairphone (Gen. 6)
File:FP6-Phosh.jpg
Manufacturer Fairphone
Name (Gen. 6)
Codename fairphone-fp6
Model FP6
Released 2025
Type handset
Hardware
Chipset Qualcomm Snapdragon 7s Gen 3 (SM7635)
CPU 1x2.5GHz Cortex-A720
3x2.4GHz Cortex-A720
4x1.8GHz Cortex-A520
GPU Adreno 710
Display 1116 x 2484 OLED
Storage 256 GB
Memory 8 GB
Architecture aarch64
Software
Original software
The software and version the device was shipped with.
Android 15
Extended version
The most recent supported version from the manufacturer.
Android 16
Optional software eOS
FOSS bootloader no
postmarketOS
Category testing
Pre-built images
Whether pre-built images are available from the postmarketOS Installation page.
no
Mainline
Instead of a Linux kernel fork, it is possible to run (Close to) Mainline.
yes
pmOS kernel
The kernel version that runs on the device's port.
6.18.5
Unixbench score
Unixbench Whetstone/Dhrystone score. See Unixbench.
10095.0
Device package device-fairphone-fp6
Kernel package linux-postmarketos-qcom-sm7635
Features
Flashing
Whether it is possible to flash the device with pmbootstrap flasher.
Works
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
Battery
Whether charging and battery level reporting work.
Works
Screen
Whether the display works; ideally with sleep mode and brightness control.
Partial
Touchscreen
Works
Multimedia
3D Acceleration
Broken
Audio
Audio playback, microphone, headset and buttons.
Broken
Camera
Broken
Camera Flash
Works
Connectivity
WiFi
Works
Bluetooth
Works
GPS
Broken
NFC
Near Field Communication
Broken
Modem
Calls
Partial
SMS
Works
Mobile data
Broken
Miscellaneous
FDE
Full disk encryption and unlocking with unl0kr.
Works
USB OTG
USB On-The-Go or USB-C Role switching.
Works
Fingerprint
Fingerprint reader.
Broken
Sensors
Accelerometer
Handles automatic screen rotation in many interfaces.
Broken
Magnetometer
Sensor to measure the Earth's magnetism
Broken
Ambient Light
Measures the light level; used for automatic screen dimming in many interfaces.
Broken
Proximity
Broken
Hall Effect
Measures magnetic fields; usually used as a flip cover sensor
Works
Haptics
Works
Barometer
Sensor to measure air pressure
Broken

Description

  • Beyond Future-Proof: Backed by a 5-year warranty and 8 years of software support.
  • Iconically modular: Replaceable modules, integrated accessories and an elevated design that just feels right.
  • Simply Powerful: The Fairphone keeps pace with your day—powered by the Snapdragon 7s Gen 3 processor, a silky 120Hz OLED display, and a battery that lasts. Everything just flows.

Boot modes

By holding various button combinations while booting, the device can boot into different modes. Unplug from USB, power off the device and press and hold the below buttons to enter the specific boot mode.

Boot mode PWR Vol+ Vol-
Fastboot Y N Y
Recovery Y Y N
Download N N N

Installation

Note You should upgrade your phone to the latest official firmware before start tinkering with it. Development is mostly done on the latest firmware.

Unlock the bootloader according to the official instructions.

Manual install

  • You can choose to install postmarketOS on slot B: fastboot set_active b reboot bootloader
  • Firstly, flash the boot partition: fastboot flash boot *boot.img
  • Secondly, you have a few choices to flash the postmarketOS rootfs:
    • userdata partition (209GiB usable space): fastboot flash userdata *rootfs.img
    • super partition (9GiB usable space): fastboot flash super *rootfs.img
    • SD memory card: dd if=*rootfs.img of=/dev/$blk_dev bs=8M status=progress
  • Finally, erase the dtbo partition and reboot the device: fastboot erase dtbo reboot

Return to Android

Follow the instructions on the respective official page of Fairphone-OS or Murena-/e/OS to return to stock Android.

Partition layout

fdisk -lo Device,Start,End,Sectors,Size,Name /dev/sda

Disk /dev/sda: 234.19 GiB, 251456913408 bytes, 61390848 sectors
Disk model: MT256GBEAZ4U3139
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes
Disklabel type: gpt
Disk identifier: 99551845-0054-B5DD-F794-CDC925BCDEEF

Device       Start      End  Sectors   Size Name
/dev/sda1        6      261      256     1M traceability
/dev/sda2      262      293       32   128K fpconfig_persist
/dev/sda3      294      325       32   128K fpconfig
/dev/sda4      326     1349     1024     4M oembin
/dev/sda5     1350     1351        2     8K ssd
/dev/sda6     1352     9543     8192    32M persist
/dev/sda7     9544     9799      256     1M misc
/dev/sda8     9800     9927      128   512K keystore
/dev/sda9     9928    10055      128   512K frp
/dev/sda10   10056    11591     1536     6M study
/dev/sda11   11592    11623       32   128K swversion
/dev/sda12   11624  2370919  2359296     9G super
/dev/sda13 2370920  2370935       16    64K vbmeta_system_a
/dev/sda14 2370936  2370951       16    64K vbmeta_system_b
/dev/sda15 2370952  2387335    16384    64M metadata
/dev/sda16 2387336  6712711  4325376  16.5G rawdump
/dev/sda17 6712712 61390842 54678131 208.6G userdata

fdisk -lo Device,Start,End,Sectors,Size,Name /dev/sdb

Disk /dev/sdb: 20 MiB, 20971520 bytes, 5120 sectors
Disk model: MT256GBEAZ4U3139
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes
Disklabel type: gpt
Disk identifier: 0E939536-4731-4B6E-56B0-837A23CF59D2

Device     Start   End Sectors  Size Name
/dev/sdb1      6   901     896  3.5M xbl_a
/dev/sdb2    902  1029     128  512K xbl_config_a
/dev/sdb3   1030  1037       8   32K multiimgqti_a
/dev/sdb4   1038  1045       8   32K multiimgoem_a
/dev/sdb5   1046  1109      64  256K apdp
/dev/sdb6   1110  5114    4005 15.6M last_parti

fdisk -lo Device,Start,End,Sectors,Size,Name /dev/sdc

Disk /dev/sdc: 20 MiB, 20971520 bytes, 5120 sectors
Disk model: MT256GBEAZ4U3139
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes
Disklabel type: gpt
Disk identifier: 249C4952-45BD-73D1-4740-48B11F446BC8

Device     Start   End Sectors  Size Name
/dev/sdc1      6   901     896  3.5M xbl_b
/dev/sdc2    902  1029     128  512K xbl_config_b
/dev/sdc3   1030  1037       8   32K multiimgqti_b
/dev/sdc4   1038  1045       8   32K multiimgoem_b
/dev/sdc5   1046  1109      64  256K apdpb
/dev/sdc6   1110  5114    4005 15.6M last_parti

fdisk -lo Device,Start,End,Sectors,Size,Name /dev/sdd

Disk /dev/sdd: 32 MiB, 33554432 bytes, 8192 sectors
Disk model: MT256GBEAZ4U3139
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes
Disklabel type: gpt
Disk identifier: 647F6426-03EE-08CA-0707-A2D926D0FC17

Device     Start   End Sectors  Size Name
/dev/sdd1      6    31      26  104K ALIGN_TO_128K_1
/dev/sdd2     32    63      32  128K cdt
/dev/sdd3     64   319     256    1M ddr
/dev/sdd4    320  8186    7867 30.7M last_parti

fdisk -lo Device,Start,End,Sectors,Size,Name /dev/sde

Disk /dev/sde: 4 GiB, 4294967296 bytes, 1048576 sectors
Disk model: MT256GBEAZ4U3139
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes
Disklabel type: gpt
Disk identifier: 1EB2CB8A-4110-D6EA-D48C-DD01D618EDC4

Device      Start     End Sectors   Size Name
/dev/sde1       6    1285    1280     5M uefi_a
/dev/sde2    1286    1413     128   512K aop_a
/dev/sde3    1414    1541     128   512K aop_config_a
/dev/sde4    1542    2821    1280     5M tz_a
/dev/sde5    2822    4869    2048     8M hyp_a
/dev/sde6    4870   94469   89600   350M modem_a
/dev/sde7   94470   95493    1024     4M bluetooth_a
/dev/sde8   95494   95749     256     1M abl_a
/dev/sde9   95750  112133   16384    64M dsp_a
/dev/sde10 112134  112261     128   512K keymaster_a
/dev/sde11 112262  136837   24576    96M boot_a
/dev/sde12 136838  136869      32   128K devcfg_a
/dev/sde13 136870  136889      20    80K qupfw_a
/dev/sde14 136890  136905      16    64K vbmeta_a
/dev/sde15 136906  144585    7680    30M dtbo_a
/dev/sde16 144586  145097     512     2M uefisecapp_a
/dev/sde17 145098  145609     512     2M imagefv_a
/dev/sde18 145610  145673      64   256K shrm_a
/dev/sde19 145674  283173  137500 537.1M vm-bootsys_a
/dev/sde20 283174  283429     256     1M cpucp_a
/dev/sde21 283430  283461      32   128K featenabler_a
/dev/sde22 283462  308037   24576    96M vendor_boot_a
/dev/sde23 308038  315717    7680    30M qmcs
/dev/sde24 315718  315781      64   256K qweslicstore_a
/dev/sde25 315782  317317    1536     6M studybk_a
/dev/sde26 317318  342917   25600   100M recovery_a
/dev/sde27 342918  343429     512     2M xbl_ramdump_a
/dev/sde28 343430  345477    2048     8M init_boot_a
/dev/sde29 345478  345493      16    64K cpucp_dtb_a
/dev/sde30 345494  345749     256     1M pvmfw_a
/dev/sde31 345750  347029    1280     5M uefi_b
/dev/sde32 347030  347157     128   512K aop_b
/dev/sde33 347158  347285     128   512K aop_config_b
/dev/sde34 347286  348565    1280     5M tz_b
/dev/sde35 348566  350613    2048     8M hyp_b
/dev/sde36 350614  440213   89600   350M modem_b
/dev/sde37 440214  441237    1024     4M bluetooth_b
/dev/sde38 441238  441493     256     1M abl_b
/dev/sde39 441494  457877   16384    64M dsp_b
/dev/sde40 457878  458005     128   512K keymaster_b
/dev/sde41 458006  482581   24576    96M boot_b
/dev/sde42 482582  482613      32   128K devcfg_b
/dev/sde43 482614  482633      20    80K qupfw_b
/dev/sde44 482634  482649      16    64K vbmeta_b
/dev/sde45 482650  490329    7680    30M dtbo_b
/dev/sde46 490330  490841     512     2M uefisecapp_b
/dev/sde47 490842  491353     512     2M imagefv_b
/dev/sde48 491354  491417      64   256K shrm_b
/dev/sde49 491418  628917  137500 537.1M vm-bootsys_b
/dev/sde50 628918  629173     256     1M cpucp_b
/dev/sde51 629174  629205      32   128K featenabler_b
/dev/sde52 629206  653781   24576    96M vendor_boot_b
/dev/sde53 653782  653845      64   256K qweslicstore_b
/dev/sde54 653846  655381    1536     6M studybk_b
/dev/sde55 655382  680981   25600   100M recovery_b
/dev/sde56 680982  681493     512     2M xbl_ramdump_b
/dev/sde57 681494  683541    2048     8M init_boot_b
/dev/sde58 683542  683557      16    64K cpucp_dtb_b
/dev/sde59 683558  683813     256     1M pvmfw_b
/dev/sde60 683814  683814       1     4K devinfo
/dev/sde61 683815  684070     256     1M toolsfv
/dev/sde62 684071  686118    2048     8M logfs
/dev/sde63 686119  817190  131072   512M logdump
/dev/sde64 817191  817222      32   128K storsec
/dev/sde65 817223  817350     128   512K uefivarstore
/dev/sde66 817351  817357       7    28K secdata
/dev/sde67 817358  848077   30720   120M vm-persist
/dev/sde68 848078  853197    5120    20M mdcompress
/dev/sde69 853198  853229      32   128K connsec
/dev/sde70 853230  853261      32   128K tzsc
/dev/sde71 853262  861453    8192    32M spunvm
/dev/sde72 861454  861469      16    64K xbl_sc_test_mode
/dev/sde73 861470  861501      32   128K xbl_sc_logs
/dev/sde74 861502  861503       2     8K dpm
/dev/sde75 861504 1048570  187067 730.7M last_parti

fdisk -lo Device,Start,End,Sectors,Size,Name /dev/sdf

Disk /dev/sdf: 32 MiB, 33554432 bytes, 8192 sectors
Disk model: MT256GBEAZ4U3139
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes
Disklabel type: gpt
Disk identifier: 13F0C0E1-931F-C385-7D34-055E73F4F99A

Device     Start   End Sectors  Size Name
/dev/sdf1      6    31      26  104K ALIGN_TO_128K_2
/dev/sdf2     32  2591    2560   10M modemst1
/dev/sdf3   2592  5151    2560   10M modemst2
/dev/sdf4   5152  6687    1536    6M fsg
/dev/sdf5   6688  6719      32  128K fsc
/dev/sdf6   6720  8186    1467  5.7M last_parti

Components

Component table

Component Model Notes
Modem QLN5020
eSIM S3FV9RR
Power button PMK7635
Volume down PMK7635
Volume up GPIO
Slide key GPIO
Display BJ631JHM-T71-D900
Touchscreen EPH8621
Chipset SM7635
GPU Adreno 810
SD card sdhc_2
Internal storage UFS 3.1
Main camera IMX896 C-PHY
Wide camera OV13B10 D-PHY
Front camera S5KKD1 D-PHY
ToF sensor L53L0CAV0DH
Camera flash A-SL689W1D-QA5-4T
Audio codec WCD9378
Amplifier AW88261FCR
Earpiece XHSR121005LY-24-RH
Speaker XHS151151LN-01-RH
Microphones SM0103B-RIS421-M02
Vibration motor AW86938FCR
WiFi WCN6755
Bluetooth WCN6755
GNSS/GPS AW15245DNR
NFC S3NR4VX
Fingerprint ?
Sixaxis ICM-42630+
Light / Proximity STK36C61
Magnetometer QCM6308
Barometer SPL07
Fuel gauge PMIV0108 via pmic-glink
Charger PMIV0108 via pmic-glink

Audio

No internal speakers or microphones are currently working. Media sound (not calls) is working if connecting a Bluetooth or USB audio device.

Fairphone 6 shares the same sound amplifier as the previous version, therefore, development might be related to Fairphone 5: Wiki Gitlab.

Audio path:

  • CPU via I2S (senary?) to AW88261FCR: speaker
  • CPU via SoundWire to WCD9378: microphones (AMIC1, AMIC3)

Camera

No camera is currently working.

Camera Purpose Part number
Front camera Sensor Samsung S5KKD1
EEPROM Puya P24C128F
Actuator Awinic AW86016
Main camera Sensor Sony IMX896
EEPROM Puya P24C128F
Actuator Dongwoon DW9784
Wide camera Sensor OmniVision OV13B10
EEPROM Puya P24C128F
Actuator Awinic AW86017

UART

Fairphone 6 UART pins

The RX/TX are already exposed by the manufacturer while the ground pin is taken from the blueprint with the respective code:

  • RXD = TP4014
  • TXD = TP4013
  • GND = TP4009

Contributors

Users owning this device

  • Fossdd (Notes: daily driver with android)
  • Mariob (Notes: Daily driver with degoogled Android 16)
  • Mdhill (Notes: daily driver with android)
  • Mupuf
  • Tulpenkiste (Notes: Primary phone (stock android, rooted))
  • Z3ntu


Resources

See also