Skip to content

Flashing U‐Boot in ARC AXS10x Software Development Platforms (SDP)

ladatrimasova edited this page Apr 19, 2016 · 9 revisions

ARC AXS10x Software Development Platforms (SDP) have built-in SPI-flash storage which may be used to host auto-started applications such as bootloaders, etc.

U-Boot is a good fit for such application. Very early boot SDP's pre-bootloader application is able to find images in that SPI-flash, load them in specified memory location and then execute it.

It's also possible to have separate images to be loaded and executed for different CPU cores. This allows us to have U-Boot images for both ARC 770D and ARC HS38 at once each starting when appropriate CPU tile is mounted on the base-board.

Below are command for preparing [if needed - for ARCv2 CPUs] and flashing U-Boot in SPI flash.

  • For ARC 770D
  • Build U-Boot binary image:make axs101_defconfig && make u-boot.bin
  • Flash image: axs_comm -c 0434 -a 00000000 -p 81000000 -f u-boot.bin
  • For ARC HS38
  • Build U-Boot binary image:make axs103_defconfig && make u-boot.bin

  • Add jump location just before the image:printf "\x00\x00\x00\x81" | cat - u-boot.bin > u-boot-offset.bin

  • Flash image:
    AXS103 1.0: axs_comm -c 0051 -a 00080000 -p 80FFFFFC -f u-boot-offset.bin
    AXS103 2.0: axs_comm -c 0052 -a 00100000 -p 80FFFFFC -f u-boot-offset.bin
    Note for ARC HS38 3rd pin in dip-switch SW2501 must be in "off" position (wich is closer to CPU tile). Otherwise image from SPI-flash won't be read.

Clone this wiki locally