BROM

A10/A20
The A10A20 has several ways to boot. It has an integrated non-replaceable 32KiB ROM chip (Boot ROM or BROM) which could be considered the primary boot-loader. The boot-loader can boot the following options in order:


 * 1) SD Card0
 * 2) NAND Flash
 * 3) SD Card2
 * 4) SPI NOR Flash
 * 5) FEL/USB Boot

To boot into FEL mode, a lot would need to 'fail' or skip booting, especially if there is on-board bootable data in NAND or SPI Flash. As a bypass mechanism, the A10 has the so called Boot Select Pin (BSP). This pin is normally internally pulled up by a 50KΩ resistor. If the pin is pulled low to GND, the A10 will try to boot into FEL mode. Otherwise the above boot-order will be tried.

A31
The A31 has three pin the decide where to boot. One fel pin, which is the same as A10/A20. Two boot select pins, boot sel0 and boot sel1, which decide where to boot. The fel key priority is higher than the boot select key. The boot process is brief as below.

boot-> check fel key pressed (yes)-> check if sd0 bootable(no) -->go to fel mode \                                  \                          \                              (yes)\__ boot from sd0 \                            \                                       _____[00] boot from nand flash (go to fel mode if failed) (no) \                                     /_____[01] boot from sd2 (go to fel mode if failed) \                                  /                               \___check boot sel[0:1]---[10] boot from emmc2 (go to fel mode if failed) \                                                                  \______[11] boot from spi (go to fel mode if failed) by hipboi

Other booting methods

 * How to boot the A10 over the network