Boot sequence (Naon)

From DAVE Developer's Wiki
Jump to: navigation, search
Info Box
Naon am387x-dm814x.png Applies to Naon

Default boot sequence[edit | edit source]

DM8148 provides several boot sequences selectable via BTMODE[4:0] bootstrap pins. In order to fully understand boot options, please read [Memory organization (Naon)|Memory organization] first.

By default, Naon provides the following configuration:

  • BTMODE[15]: 0
  • BTMODE[14:13]: 10
  • BTMODE[12]: 1
  • BTMODE[11]: 0
  • BTMODE[10]: 0
  • BTMODE[9:8]: 01
  • BTMODE[7:5]: 000
  • BTMODE[4:0]: 10111.

Thus default boot sequence is:

  1. MMC
  2. SPI
  3. UART
  4. EMAC.

Boot sequence options[edit | edit source]

Please note that this sequence can be changed by optional external circuitry implemented on carrier board. Assuming default configuration is not changed and no boot MMC card is connected to processor's MMC1 interface, the actual boot sequence performed by ARM core will be:

  1. bootrom: this is executed from internal ROM code memory
  2. U-Boot bootloader (1st stage)
    • copied from on-board NOR flash memory connected to SPI0 port to on-chip SRAM by bootrom
    • executed from on-chip SRAM
  3. U-Boot bootloader (2nd stage)
    • copied by U-Boot 1st stage from NOR flash memory connected to SPI0 port to SDRAM
    • executed from SDRAM.