Fairphone 4 (fairphone-fp4): Difference between revisions
Remove "Fairphone" from name property since it's normally concatenated with manufacturer, so we get "Fairphone" twice |
Apollo3zehn (talk | contribs) Add more info about SD card flashing procedure |
||
Line 81: | Line 81: | ||
=== Manually === | === Manually === | ||
You need to erase the <code>dtbo</code> partition for the current slot with <code>fastboot erase dtbo</code>. | You need to erase the <code>dtbo</code> partition for the current slot with <code>fastboot erase dtbo</code>, otherwise the device will not boot. | ||
The rest of the installation is standard, but because the device contains A/B slots, you must watch out for the correct slot being active. | {{note|You can always restore the original <code>dtbo</code> partition by downloading and extracting [https://code.fairphone.com/projects/fairphone-4/kernel.html dtbo.img.gz] and then flashing it via <code>fastboot flash dtbo <path/to/dtbo.img></code>. This works similar for the <code>boot</code> partition.}} | ||
The rest of the installation is standard, but because the device contains A/B slots, you must watch out for the correct slot being active. | |||
{{note|The device does not contain a <code>system</code> as you might be used to, it contains one <code>super</code> partition which contains <code>system</code>/<code>system_ext</code>/<code>product</code>/<code>vendor</code>/<code>odm</code> partitions, in <code>_a</code> and <code>_b</code> variant each. This concept is called [https://source.android.com/devices/tech/ota/dynamic_partitions/implement Dynamic Partitions].}} | {{note|The device does not contain a <code>system</code> as you might be used to, it contains one <code>super</code> partition which contains <code>system</code>/<code>system_ext</code>/<code>product</code>/<code>vendor</code>/<code>odm</code> partitions, in <code>_a</code> and <code>_b</code> variant each. This concept is called [https://source.android.com/devices/tech/ota/dynamic_partitions/implement Dynamic Partitions].}} | ||
Line 90: | Line 92: | ||
* <code>userdata</code> partition (> 100 GB space): <code>pmbootstrap flasher flash_rootfs --partition userdata</code> | * <code>userdata</code> partition (> 100 GB space): <code>pmbootstrap flasher flash_rootfs --partition userdata</code> | ||
* <code>super</code> partition (6 GB space): <code>pmbootstrap flasher flash_rootfs --partition super</code> | * <code>super</code> partition (6 GB space): <code>pmbootstrap flasher flash_rootfs --partition super</code> | ||
* Subpartition of <code>super</code> using [https://source.android.com/devices/bootloader/fastbootd fastbootd]. | |||
* SD card: <code>pmbootstrap flasher flash_rootfs --sdcard /dev/$blk_dev</code> | * SD card: <code>pmbootstrap flasher flash_rootfs --sdcard /dev/$blk_dev</code> | ||
See also [[Dual Booting]] if you want to run postmarketOS in parallel with another operating system. | |||
=== SD card notes === | |||
In case you want to flash to SD card on a different computer, do the following: | |||
1. Edit <code>$(pmbootstrap config work)/cache_git/pmaports/device/community/device-fairphone-fp4/deviceinfo</code> and change the value of <code>deviceinfo_rootfs_image_sector_size</code> to <code>512</code> (the SD card sector size) | |||
2. Run <code>pmbootstrap install --no-sparse</code> (we do not need a sparse image for the SD card) | |||
3. Copy the newly created <code>$(pmbootstrap config work)/chroot_native/home/pmos/rootfs/fairphone-fp4.img</code> to the other computer and flash it there with your preferred flashing tool. | |||
== Resources == | == Resources == | ||
* [https://www.fairphone.com/wp-content/uploads/2022/09/FP4_Information-for-repairers-and-recyclers.pdf Repairability and recyclers information on Fairphone 4] - Schematics and other information | * [https://www.fairphone.com/wp-content/uploads/2022/09/FP4_Information-for-repairers-and-recyclers.pdf Repairability and recyclers information on Fairphone 4] - Schematics and other information | ||
* [https://code.fairphone.com/projects/fairphone-4/kernel.html Fairphone 4 - Kernel Source Code] | |||
== Partition layout == | == Partition layout == |
Revision as of 20:33, 30 December 2023
![]() Framebuffer console on mainline kernel | |
Manufacturer | Fairphone |
---|---|
Name | 4 |
Codename | fairphone-fp4 |
Released | 2021 |
Type | handset |
Hardware | |
Chipset | Qualcomm Snapdragon 750G (SM7225) |
CPU | Octa-core Kryo 570 |
GPU | Adreno 619 |
Display | 1080x2340 |
Storage | 128GB/256GB |
Memory | 6GB/8GB |
Architecture | aarch64 |
Software | |
Original software | Android |
Original version | 11 |
postmarketOS | |
Category | community |
Pre-built images | yes |
Flashing |
Works |
---|---|
USB Networking |
Works |
Internal storage |
No data |
SD card |
No data |
Battery |
Broken |
Screen |
Works |
Touchscreen |
Works |
Multimedia | |
3D Acceleration |
Works |
Audio |
Broken |
Camera |
Broken |
Camera Flash |
Works |
Connectivity | |
WiFi |
Works |
Bluetooth |
Works |
GPS |
Broken |
NFC |
Broken |
Modem | |
Calls |
Broken |
SMS |
Broken |
Mobile data |
Broken |
Miscellaneous | |
FDE |
No data |
USB OTG |
Broken |
HDMI/DP |
Broken |
Sensors | |
Accelerometer |
Broken |
Magnetometer |
Broken |
Ambient Light |
Broken |
Proximity |
Broken |
Haptics |
Works |
Contributors
Users owning this device
- AnaxMorden (Notes: Using 8/256GB (Ubuntu Touch))
- Apollo3zehn (Notes: /e/OS + Plasma Mobile)
- Ariebombarie (Notes: CalyxOS (Android))
- Ayakael (Notes: Main phone, OryxOS))
- BEEDELLROKEJULIANLOCKHART
- Bitals (Notes: /E/OS)
- Brittle
- Cafehaine (Notes: Daily device)
- Deathmist (Notes: Gray, 6/128 GB, UT 20.04 daily driver)
- Electrodeyt (Notes: Gray, 6/128 GB, Ubuntu Touch daily driver)
- GeraltvonNVIDIA (Notes: Ubuntu Touch 20.04 stable)
- Grimler
- Idi112 (Notes: Main phone, currently running Iodé (android))
- Kasesag (Notes: Daily device.)
- Peerke (Notes: Gnome mobile)
- Pseudomind (Notes: pmOS phosh)
- Uclydde
- Z3ntu
- ⬡hexa
How to enter flash mode
For booting into fastboot, turn off the phone, hold volume down and plug in the USB cable.
Installation
Unlock the bootloader according to the official instructions.
UBports Installer
You can use UBports Installer v0.9.8 (or later) to flash a prebuilt image of postmarketOS onto your Fairphone 4. Just select postmarketOS in the OS selection and choose the desired UI and lean back!
Manually
You need to erase the dtbo
partition for the current slot with fastboot erase dtbo
, otherwise the device will not boot.
You can always restore the original dtbo partition by downloading and extracting dtbo.img.gz and then flashing it via fastboot flash dtbo <path/to/dtbo.img> . This works similar for the boot partition. |
The rest of the installation is standard, but because the device contains A/B slots, you must watch out for the correct slot being active.
The device does not contain a system as you might be used to, it contains one super partition which contains system /system_ext /product /vendor /odm partitions, in _a and _b variant each. This concept is called Dynamic Partitions. |
You have a few possibilities to flash the postmarketOS rootfs:
userdata
partition (> 100 GB space):pmbootstrap flasher flash_rootfs --partition userdata
super
partition (6 GB space):pmbootstrap flasher flash_rootfs --partition super
- Subpartition of
super
using fastbootd. - SD card:
pmbootstrap flasher flash_rootfs --sdcard /dev/$blk_dev
See also Dual Booting if you want to run postmarketOS in parallel with another operating system.
SD card notes
In case you want to flash to SD card on a different computer, do the following:
1. Edit $(pmbootstrap config work)/cache_git/pmaports/device/community/device-fairphone-fp4/deviceinfo
and change the value of deviceinfo_rootfs_image_sector_size
to 512
(the SD card sector size)
2. Run pmbootstrap install --no-sparse
(we do not need a sparse image for the SD card)
3. Copy the newly created $(pmbootstrap config work)/chroot_native/home/pmos/rootfs/fairphone-fp4.img
to the other computer and flash it there with your preferred flashing tool.
Resources
- Repairability and recyclers information on Fairphone 4 - Schematics and other information
- Fairphone 4 - Kernel Source Code
Partition layout
fairphone-fp4:~# fdisk -l -o Device,Start,End,Sectors,Size,Name /dev/sda
fairphone-fp4:~# fdisk -l -o Device,Start,End,Sectors,Size,Name /dev/sdb
fairphone-fp4:~# fdisk -l -o Device,Start,End,Sectors,Size,Name /dev/sdc
fairphone-fp4:~# fdisk -l -o Device,Start,End,Sectors,Size,Name /dev/sdd
fairphone-fp4:~# fdisk -l -o Device,Start,End,Sectors,Size,Name /dev/sde
fairphone-fp4:~# fdisk -l -o Device,Start,End,Sectors,Size,Name /dev/sdf
fairphone-fp4:~# fdisk -l -o Device,Start,End,Sectors,Size,Name /dev/sdg
See also
- Device package
- Kernel package (close to mainline)
- Firmware package