Customize d emmc partition method bricks DB410C


#1

Hi - I need to add a partition to the stock linaro debian install boot from emmc. I have followed the instructions here: https://www.96boards.org/documentation/consumer/dragonboard410c/guides/customize-emmc-partition.md.html

I have done 2 experiments with same results both times.

  1. add my new partition to partitions.txt before the devinfo and rootfs partitions - I assume rootfs always has to be last so it can auto-expand to fill the remaining emmc.
  2. use the existing partitions.txt unmodified.

Results in both cases: I have a bricked board - no boot activity at all with boot from emmc. If I use the SD recovery SD card with UART mezzanine board to monitor boot messages, I get messages that indicate the partition table is corrupt.

Fortunately, I am able to restore reliably using the dragonboard-410c-sdcard-installer-buster-359.img.

Really need some help on this one - it appears that just flashing the new partition table is not enough. It sure seems that second stage bootloader is unhappy about the partition format change. If I need to make changes to ssbl to add a partition I need to know pretty quickly so I can change gears. The link to customize emmc partitions implies this is not necessary but does not work.


#2

ouch. you are right. just flashing an updated gpt_both.bin file is not enough, you need to reflash all firmware partitions (e.g. you need to run the commands from flashall script).

This is because when you reflash the GPT , you ‘move’ the partitions around, so before you reboot you need to reflash the bootloaders so that they will be found when you reboot.

So the instructions should say:

  1. rebuild custom gpt_both.bin
  2. replace the on from the bootloader package (from linaro.org)
  3. run ./flashall script

please let us know if that works better, then we will need to update the wiki…


#3

Ok thank you that makes sense. So I need to know where to get the prebuilt partition files hyp.mbn, rpm.mbn, sbl1.mbn and tz.mbn. Can you please provide a link?


#4

from http://snapshots.linaro.org/96boards/dragonboard410c/linaro/rescue/, just get the latest one. we have different ‘flavor’ for Linux vs AOSP, because we use different GPT, but in your case it doesn’t matter since you have your own.


#5

OK thanks - working on this now, will let you know how it goes.


#6

OK, with your help, I am close. I am able to flash the board using flashall and the components I downloaded from the Linaro link you gave me. I am able to load the flash partitions with my built kernel/OS/RFS boot.img and also my LK bootloader image. The only thing missing right now is I do not know what to put into the devinfo partition. The board boots but I get no HDMI and I am assuming it needs something in the devinfo partitoin for that to come alive.


#7

ok, that’s better!

devinfo is not used in our builds, so I doubt it’s your problem. When you use your GPT, but our released image, does HDMI work fine?

can you please share the complete boot log and the output of the following commands:

uname -a
lsmod
dpkg -l

#8

So I now have a hard brick this morning. Something about yesterday’s experiments has rendered the board unable to boot from SD. I have a terminal connected to UART mezzanine and no output at all either from SD Recovery or full image SD. I have another board which works and I can use it to confirm my terminal setup and SD cards. I am using that second board as reference and not performing experiments on it. Is there a way to recover this? I don’t know what conditions would make it stop booting from SD.
Also, putting the board in fastboot mode (switches 0-0-0-0 and hold vol- while powering) does not work.


#9

the best ‘unbrick’ method is the one that relies on USB flashing tool (QDL). If that one doesn’t work it means something is fundamentally broken on the board (power , board, …) and that the board can be claimed as damaged.

booting from SD means that the full bootloader stack will have to come up, so booting from SD might fail because of a ‘software’ bug in one of the bootchain software components, such as we cannot conclude the board is damaged just with failure to boot from SD.


#10

OK thanks I am trying to get a Win machine set up to run QFIL. Is there any way that modifying the GPT can cause the SD boot to fail? The SD boot of the full emmc install image had been working for me all along and I was able to use it recover until last night. My understanding was tif I put the board in SD boot then everything would get flashed to the emmc from the SD including gpt. Is that not so?

Also the SD card boots just fine on another DB410C so I know it is not an SD image issue.