OK download the full stock 0105 dump :
TWRP for Fairphone 3 (remove dsp.img)
And the non-corrupted dsp : https://forum.fairphone.com/uploads/short-url/tajRvRzKZ3dWL8zwk9BMFfhXOVU.pdf (rename it dsp.zip and unzip it)
Then do :
fastboot --set-active=a
fastboot reboot bootloader
fastboot getvar current-slot 2>&1 | grep "current-slot: a" >/dev/null || exit 2
fastboot flash product product.img -S 522239K || exit 1
fastboot flash keymaster keymaster.img -S 522239K || exit 1
fastboot flash cmnlib64 cmnlib64.img -S 522239K || exit 1
fastboot flash cmnlib cmnlib.img -S 522239K || exit 1
fastboot flash lksecapp lksecapp.img -S 522239K || exit 1
fastboot flash mdtp mdtp.img -S 522239K || exit 1
fastboot flash vendor vendor.img -S 522239K || exit 1
fastboot flash system system.img -S 522239K || exit 1
fastboot flash boot boot.img -S 522239K || exit 1
fastboot flash vbmeta vbmeta.img -S 522239K || exit 1
fastboot flash dtbo dtbo.img -S 522239K || exit 1
fastboot flash dsp dsp.img -S 522239K || exit 1
fastboot flash devcfg devcfg.img -S 522239K || exit 1
fastboot flash tz tz.img -S 522239K || exit 1
fastboot flash rpm rpm.img -S 522239K || exit 1
fastboot flash sbl1 sbl1.img -S 522239K || exit 1
fastboot flash modem modem.img -S 522239K || exit 1
fastboot flash aboot aboot.img -S 522239K || exit 1
fastboot reboot bootloader
fastboot getvar current-slot 2>&1 | grep "current-slot: a" || exit 2
echo "Ok worked."
You absolutely need to see current-slot:a
(and “Ok worked” if you do it in a script). If not, do :
fastboot flash product_a product.img -S 522239K || exit 1
fastboot flash keymaster_a keymaster.img -S 522239K || exit 1
fastboot flash cmnlib64_a cmnlib64.img -S 522239K || exit 1
fastboot flash cmnlib_a cmnlib.img -S 522239K || exit 1
fastboot flash lksecapp_a lksecapp.img -S 522239K || exit 1
fastboot flash mdtp_a mdtp.img -S 522239K || exit 1
fastboot flash vendor_a vendor.img -S 522239K || exit 1
fastboot flash system_a system.img -S 522239K || exit 1
fastboot flash boot_a boot.img -S 522239K || exit 1
fastboot flash vbmeta_a vbmeta.img -S 522239K || exit 1
fastboot flash dtbo_a dtbo.img -S 522239K || exit 1
fastboot flash dsp_a dsp.img -S 522239K || exit 1
fastboot flash devcfg_a devcfg.img -S 522239K || exit 1
fastboot flash tz_a tz.img -S 522239K || exit 1
fastboot flash rpm_a rpm.img -S 522239K || exit 1
fastboot flash sbl1_a sbl1.img -S 522239K || exit 1
fastboot flash modem_a modem.img -S 522239K || exit 1
fastboot flash aboot_a aboot.img -S 522239K || exit 1
fastboot reboot bootloader
fastboot getvar current-slot 2>&1 | grep "current-slot: a" || exit 2
echo "Ok worked."
If still not, please tell before doing anything
If the first one worked, change --set-active=a
to --set-active=b
and the two grep "current-slot: a"
to grep "current-slot: b"
Then you’ll have stock 0105 on both slots and you’ll be able to boot TWRP