Installation error on dtbo_a step [Fairphone 6]

Hi
Little update of the week end…
First, i tried to flash some other images (vbmeta_system vbmeta init_boot pvmfw recovery vendor_boot) according to the order followed by the eos factory script. i didn’t try further because i must read more carefully what is done on the next step.
Due to that, i am now able to reach fastbotD and recovery (murena ???).
in fastbootd, i was able to get some more informations, fastboot getvar all gives me the confirmation that dtbo_a and dtbo_b are not logical :


(bootloader) is-logical:dtbo_a:no

(bootloader) is-logical:dtbo_b:no

@aibd i’m pretty sure fairphone support won’t want to help me since the phone is second hand with no bill and no informations about where it was bought.

For now the phone only boot in fastboot or fastbootD or recovery (with adb sideload available) but I’m pretty sure that with some help (which you are currently providing and I thank you a lot for that) i will be able to make my phone work again.

Thanks for your help

Sounds very positive.

If in doubt e-Recovery looks like this

Are you aware the source of “sideload” images for FP6 is https://ota.ecloud.global/api/v1/FP6/official/

I have been wondering what sort of event in the device’s past could have caused the apparent corruption of dtbo_a (and I guess dtbo_b) ?? Would I be right that you took the phone for a satisfactory test run before you started and it was running Fairphone’s regular Android?

If you have e-Recovery and fastbootd running perhaps you have satisfactory content in dtbo already ?? I wonder if there is still the possibility maybe that some variant of “buggy USB fastboot” means that Volume Full should maybe not be taken in quite the literal way we have been seeing it ??

If there is need of a FP6 to double check something I can do that. Just no experiments since its my daily driver

@aibd
not sure about what could have happened to the phone before i get it but it was running fairphone android os. I used it for some days without errors except it was not able to self update. That was one of the reason I wanted to switch to /e/os.

The recovery I can acces is similar to yours (i just found surprising th murena splash screen appearing before)

Do you think flashing image from your link could be a solution ?

What do you mean by buggy usb fastboot ?

Maybe flashing after removing the dtbo from flash script could help if the current content of dtbo is “satisfactory” ?

@mihi
If you could provide the result of fastboot getvar all i could check the differences in partitions sizes

on my FP3, dtbo size is

0x800000 → 8388608 = 8 MB

thanks, but i was mostly wondering about the sizes on FP6

(bootloader) erase-block-size: 0x1000
(bootloader) logical-block-size: 0x1000
(bootloader) variant:SM_KIMOLOS UFS
(bootloader) partition-type:fsc:raw
(bootloader) partition-size:fsc: 0x20000
(bootloader) partition-type:fsg:raw
(bootloader) partition-size:fsg: 0x600000
(bootloader) partition-type:modemst2:raw
(bootloader) partition-size:modemst2: 0xA00000
(bootloader) partition-type:modemst1:raw
(bootloader) partition-size:modemst1: 0xA00000
(bootloader) partition-type:ALIGN_TO_128K_2:raw
(bootloader) partition-size:ALIGN_TO_128K_2: 0x1A000
(bootloader) partition-type:dpm:raw
(bootloader) partition-size:dpm: 0x2000
(bootloader) partition-type:xbl_sc_logs:raw
(bootloader) partition-size:xbl_sc_logs: 0x20000
(bootloader) partition-type:xbl_sc_test_mode:raw
(bootloader) partition-size:xbl_sc_test_mode: 0x10000
(bootloader) partition-type:spunvm:raw
(bootloader) partition-size:spunvm: 0x2000000
(bootloader) partition-type:tzsc:raw
(bootloader) partition-size:tzsc: 0x20000
(bootloader) partition-type:connsec:raw
(bootloader) partition-size:connsec: 0x20000
(bootloader) partition-type:mdcompress:raw
(bootloader) partition-size:mdcompress: 0x1400000
(bootloader) partition-type:vm-persist:raw
(bootloader) partition-size:vm-persist: 0x7800000
(bootloader) partition-type:secdata:raw
(bootloader) partition-size:secdata: 0x7000
(bootloader) partition-type:uefivarstore:raw
(bootloader) partition-size:uefivarstore: 0x80000
(bootloader) partition-type:storsec:raw
(bootloader) partition-size:storsec: 0x20000
(bootloader) partition-type:logdump:raw
(bootloader) partition-size:logdump: 0x20000000
(bootloader) partition-type:logfs:raw
(bootloader) partition-size:logfs: 0x800000
(bootloader) partition-type:toolsfv:raw
(bootloader) partition-size:toolsfv: 0x100000
(bootloader) partition-type:devinfo:raw
(bootloader) partition-size:devinfo: 0x1000
(bootloader) partition-type:pvmfw_b:raw
(bootloader) partition-size:pvmfw_b: 0x100000
(bootloader) partition-type:cpucp_dtb_b:raw
(bootloader) partition-size:cpucp_dtb_b: 0x10000
(bootloader) partition-type:init_boot_b:raw
(bootloader) partition-size:init_boot_b: 0x800000
(bootloader) partition-type:xbl_ramdump_b:raw
(bootloader) partition-size:xbl_ramdump_b: 0x200000
(bootloader) partition-type:recovery_b:raw
(bootloader) partition-size:recovery_b: 0x6400000
(bootloader) partition-type:studybk_b:raw
(bootloader) partition-size:studybk_b: 0x600000
(bootloader) partition-type:qweslicstore_b:raw
(bootloader) partition-size:qweslicstore_b: 0x40000
(bootloader) partition-type:vendor_boot_b:raw
(bootloader) partition-size:vendor_boot_b: 0x6000000
(bootloader) partition-type:featenabler_b:raw
(bootloader) partition-size:featenabler_b: 0x20000
(bootloader) partition-type:cpucp_b:raw
(bootloader) partition-size:cpucp_b: 0x100000
(bootloader) partition-type:vm-bootsys_b:raw
(bootloader) partition-size:vm-bootsys_b: 0x2191C000
(bootloader) partition-type:shrm_b:raw
(bootloader) partition-size:shrm_b: 0x40000
(bootloader) partition-type:imagefv_b:raw
(bootloader) partition-size:imagefv_b: 0x200000
(bootloader) partition-type:uefisecapp_b:raw
(bootloader) partition-size:uefisecapp_b: 0x200000
(bootloader) partition-type:dtbo_b:raw
(bootloader) partition-size:dtbo_b: 0x1E00000
(bootloader) partition-type:vbmeta_b:raw
(bootloader) partition-size:vbmeta_b: 0x10000
(bootloader) partition-type:qupfw_b:raw
(bootloader) partition-size:qupfw_b: 0x14000
(bootloader) partition-type:devcfg_b:raw
(bootloader) partition-size:devcfg_b: 0x20000
(bootloader) partition-type:boot_b:raw
(bootloader) partition-size:boot_b: 0x6000000
(bootloader) partition-type:keymaster_b:raw
(bootloader) partition-size:keymaster_b: 0x80000
(bootloader) partition-type:dsp_b:raw
(bootloader) partition-size:dsp_b: 0x4000000
(bootloader) partition-type:abl_b:raw
(bootloader) partition-size:abl_b: 0x100000
(bootloader) partition-type:bluetooth_b:raw
(bootloader) partition-size:bluetooth_b: 0x400000
(bootloader) partition-type:modem_b:raw
(bootloader) partition-size:modem_b: 0x15E00000
(bootloader) partition-type:hyp_b:raw
(bootloader) partition-size:hyp_b: 0x800000
(bootloader) partition-type:tz_b:raw
(bootloader) partition-size:tz_b: 0x500000
(bootloader) partition-type:aop_config_b:raw
(bootloader) partition-size:aop_config_b: 0x80000
(bootloader) partition-type:aop_b:raw
(bootloader) partition-size:aop_b: 0x80000
(bootloader) partition-type:uefi_b:raw
(bootloader) partition-size:uefi_b: 0x500000
(bootloader) partition-type:pvmfw_a:raw
(bootloader) partition-size:pvmfw_a: 0x100000
(bootloader) partition-type:cpucp_dtb_a:raw
(bootloader) partition-size:cpucp_dtb_a: 0x10000
(bootloader) partition-type:init_boot_a:raw
(bootloader) partition-size:init_boot_a: 0x800000
(bootloader) partition-type:xbl_ramdump_a:raw
(bootloader) partition-size:xbl_ramdump_a: 0x200000
(bootloader) partition-type:recovery_a:raw
(bootloader) partition-size:recovery_a: 0x6400000
(bootloader) partition-type:studybk_a:raw
(bootloader) partition-size:studybk_a: 0x600000
(bootloader) partition-type:qweslicstore_a:raw
(bootloader) partition-size:qweslicstore_a: 0x40000
(bootloader) partition-type:qmcs:raw
(bootloader) partition-size:qmcs: 0x1E00000
(bootloader) partition-type:vendor_boot_a:raw
(bootloader) partition-size:vendor_boot_a: 0x6000000
(bootloader) partition-type:featenabler_a:raw
(bootloader) partition-size:featenabler_a: 0x20000
(bootloader) partition-type:cpucp_a:raw
(bootloader) partition-size:cpucp_a: 0x100000
(bootloader) partition-type:vm-bootsys_a:raw
(bootloader) partition-size:vm-bootsys_a: 0x2191C000
(bootloader) partition-type:shrm_a:raw
(bootloader) partition-size:shrm_a: 0x40000
(bootloader) partition-type:imagefv_a:raw
(bootloader) partition-size:imagefv_a: 0x200000
(bootloader) partition-type:uefisecapp_a:raw
(bootloader) partition-size:uefisecapp_a: 0x200000
(bootloader) partition-type:dtbo_a:raw
(bootloader) partition-size:dtbo_a: 0x1E00000
(bootloader) partition-type:vbmeta_a:raw
(bootloader) partition-size:vbmeta_a: 0x10000
(bootloader) partition-type:qupfw_a:raw
(bootloader) partition-size:qupfw_a: 0x14000
(bootloader) partition-type:devcfg_a:raw
(bootloader) partition-size:devcfg_a: 0x20000
(bootloader) partition-type:boot_a:raw
(bootloader) partition-size:boot_a: 0x6000000
(bootloader) partition-type:keymaster_a:raw
(bootloader) partition-size:keymaster_a: 0x80000
(bootloader) partition-type:dsp_a:raw
(bootloader) partition-size:dsp_a: 0x4000000
(bootloader) partition-type:abl_a:raw
(bootloader) partition-size:abl_a: 0x100000
(bootloader) partition-type:bluetooth_a:raw
(bootloader) partition-size:bluetooth_a: 0x400000
(bootloader) partition-type:modem_a:raw
(bootloader) partition-size:modem_a: 0x15E00000
(bootloader) partition-type:hyp_a:raw
(bootloader) partition-size:hyp_a: 0x800000
(bootloader) partition-type:tz_a:raw
(bootloader) partition-size:tz_a: 0x500000
(bootloader) partition-type:aop_config_a:raw
(bootloader) partition-size:aop_config_a: 0x80000
(bootloader) partition-type:aop_a:raw
(bootloader) partition-size:aop_a: 0x80000
(bootloader) partition-type:uefi_a:raw
(bootloader) partition-size:uefi_a: 0x500000
(bootloader) partition-type:ddr:raw
(bootloader) partition-size:ddr: 0x100000
(bootloader) partition-type:cdt:raw
(bootloader) partition-size:cdt: 0x20000
(bootloader) partition-type:ALIGN_TO_128K_1:raw
(bootloader) partition-size:ALIGN_TO_128K_1: 0x1A000
(bootloader) partition-type:apdpb:raw
(bootloader) partition-size:apdpb: 0x40000
(bootloader) partition-type:multiimgoem_b:raw
(bootloader) partition-size:multiimgoem_b: 0x8000
(bootloader) partition-type:multiimgqti_b:raw
(bootloader) partition-size:multiimgqti_b: 0x8000
(bootloader) partition-type:xbl_config_b:raw
(bootloader) partition-size:xbl_config_b: 0x80000
(bootloader) partition-type:xbl_b:raw
(bootloader) partition-size:xbl_b: 0x380000
(bootloader) partition-type:apdp:raw
(bootloader) partition-size:apdp: 0x40000
(bootloader) partition-type:multiimgoem_a:raw
(bootloader) partition-size:multiimgoem_a: 0x8000
(bootloader) partition-type:multiimgqti_a:raw
(bootloader) partition-size:multiimgqti_a: 0x8000
(bootloader) partition-type:xbl_config_a:raw
(bootloader) partition-size:xbl_config_a: 0x80000
(bootloader) partition-type:xbl_a:raw
(bootloader) partition-size:xbl_a: 0x380000
(bootloader) partition-type:userdata:ext4
(bootloader) partition-size:userdata: 0x3425273000
(bootloader) partition-type:rawdump:raw
(bootloader) partition-size:rawdump: 0x420000000
(bootloader) partition-type:metadata:raw
(bootloader) partition-size:metadata: 0x4000000
(bootloader) partition-type:vbmeta_system_b:raw
(bootloader) partition-size:vbmeta_system_b: 0x10000
(bootloader) partition-type:vbmeta_system_a:raw
(bootloader) partition-size:vbmeta_system_a: 0x10000
(bootloader) partition-type:super:raw
(bootloader) partition-size:super: 0x240000000
(bootloader) partition-type:swversion:raw
(bootloader) partition-size:swversion: 0x20000
(bootloader) partition-type:study:raw
(bootloader) partition-size:study: 0x600000
(bootloader) partition-type:frp:raw
(bootloader) partition-size:frp: 0x80000
(bootloader) partition-type:keystore:raw
(bootloader) partition-size:keystore: 0x80000
(bootloader) partition-type:misc:raw
(bootloader) partition-size:misc: 0x100000
(bootloader) partition-type:persist:raw
(bootloader) partition-size:persist: 0x2000000
(bootloader) partition-type:ssd:raw
(bootloader) partition-size:ssd: 0x2000
(bootloader) partition-type:oembin:raw
(bootloader) partition-size:oembin: 0x400000
(bootloader) partition-type:fpconfig:raw
(bootloader) partition-size:fpconfig: 0x20000
(bootloader) partition-type:fpconfig_persist:raw
(bootloader) partition-size:fpconfig_persist: 0x20000
(bootloader) partition-type:traceability:raw
(bootloader) partition-size:traceability: 0x100000

Here is a cut out of most of the partition information

1 Like


Thanks @mihi I can see that everything is the same except dtbo_a and dtbo_b sizes
and like @piero points, your dtbo’s partitions size are the same as the file dtbo.img

Yepp, I just wonder how this could have happend :thinking::thinking: Why going back to stock can’t fix it…

1 Like

expose your issue to https://forum.fairphone.com/

1 Like

This would tend to make me think that

Do you think flashing image from your link could be a solution ?

the Android Updater was failing to use the OTA_PACKAGE offered so you would get similar if you were to try adb sideload.

What do you mean by buggy usb fastboot ?

Now that you have more forensic evidence the comment is probably not pertinent but if one checks the Platform-tools release notes bugs within Fastboot, especially for a new device, are not uncommon. The comment was really about certainty of evidence, now seems more clear.

It is possible that Fairphone forum readers can be more useful than my uninformed

have a go ideas.

If you felt you are able to see how Parted works and how to avoid accidental changes, the thing I would be looking for is “empty space” adjoining dtbo which might indicate and validate the theory that the partitions “got shrunk” somehow … then is there potentially space to restore them without messing with the whole partition table.

fairphone support won’t want to help me

I do believe that Fairphone aim to support their devices is a correct commercial way. I would expect them to respond if this error is recognised by their engineers as requiring reimage.

Hi
I finally tested flashing /e/os after removing dtbo from script… and it worked.
I had an issue with screen lock code and like it was suggested in another thread, i reflashed stock fairphone rom (after removing dtbo from flash script), deactivated screen lock code, reflashed /e/os, and now it is fully functional.
I’m pretty sure that there will still be errors on updating via OTA so i will now open a thread on fairphone forum since it appears to be mostly related to firphone instead of /e/os.
I will update this thread as soon as I have an answer.
Thanks a lot for your help, everyone.

1 Like

Happy to read you made some progress.

If you are adventures (not because of risk more in regard of time), you could try to flash an older version, then use the OTA to see how it behaves.

I am also wondering what size dtbo eventually will have :thinking::thinking:

Great news.

Going forward you may find it interesting to learn more about https://source.android.com/docs/core/architecture/dto/partitions. Very loosely speaking dtb provides a “map” for bootloader / recovery. Once you had Recovery running correctly it gave the hint that the existing dtbo was useful and / or accurate (to an extent).

The next update or manual sideload will then I guess test whether this dtbo is acceptable to the sideloaded image. A log of that event might be useful. You could consider moving to the testing channel to run this test sooner rather than later.

Maybe before you get too committed to stuff on your phone you could also experiment with your own Fastboot updater script where you would alternately flash slots a and b (ofc no format data) in the event sideload fails. I haven’t actually checked but within the OTA_PACKAGE I expect the sideload updater script hidden perhaps in /meta which will give a clue which partitions are written by an update.

Just a through :
Choose a slot, fastboot erase dtbo and fastboot flash it to see if adjust the size.

Search and find elements to confirm the idea before acting…