Commit edee72b8bc8d47549b77aaf1f27763f9d1580706

Authored by Mohammad Rasim
Committed by Neil Armstrong
1 parent 56c74b6ce2

ARM: board: meson: add p200 board

This adds the defconfig and README files for p200 board

Signed-off-by: Mohammad Rasim <mohammad.rasim96@gmail.com>
Acked-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>

Showing 3 changed files with 145 additions and 0 deletions Side-by-side Diff

board/amlogic/p200/MAINTAINERS
... ... @@ -5,4 +5,5 @@
5 5 F: board/amlogic/p200/
6 6 F: configs/nanopi-k2_defconfig
7 7 F: configs/odroid-c2_defconfig
  8 +F: configs/p200_defconfig
board/amlogic/p200/README.p200
  1 +U-Boot for Amlogic P200
  2 +=======================
  3 +
  4 +P200 is a reference board manufactured by Amlogic with the following
  5 +specifications:
  6 +
  7 + - Amlogic S905 ARM Cortex-A53 quad-core SoC @ 1.5GHz
  8 + - ARM Mali 450 GPU
  9 + - 2GB DDR3 SDRAM
  10 + - Gigabit Ethernet
  11 + - HDMI 2.0 4K/60Hz display
  12 + - 2 x USB 2.0 Host
  13 + - eMMC, microSD
  14 + - Infrared receiver
  15 + - SDIO WiFi Module
  16 + - CVBS+Stereo Audio Jack
  17 +
  18 +Schematics are available from Amlogic on demand.
  19 +
  20 +Currently the u-boot port supports the following devices:
  21 + - serial
  22 + - eMMC, microSD
  23 + - Ethernet
  24 + - I2C
  25 + - Regulators
  26 + - Reset controller
  27 + - Clock controller
  28 + - USB Host
  29 + - ADC
  30 +
  31 +u-boot compilation
  32 +==================
  33 +
  34 + > export ARCH=arm
  35 + > export CROSS_COMPILE=aarch64-none-elf-
  36 + > make p200_defconfig
  37 + > make
  38 +
  39 +Image creation
  40 +==============
  41 +
  42 +Amlogic doesn't provide sources for the firmware and for tools needed
  43 +to create the bootloader image, so it is necessary to obtain them from
  44 +the git tree published by the board vendor:
  45 +
  46 + > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
  47 + > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
  48 + > tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
  49 + > tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
  50 + > export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
  51 + > git clone https://github.com/BayLibre/u-boot.git -b n-amlogic-openlinux-20170606 amlogic-u-boot
  52 + > cd amlogic-u-boot
  53 + > make gxb_p200_v1_defconfig
  54 + > make
  55 + > export FIPDIR=$PWD/fip
  56 +
  57 +Go back to mainline U-boot source tree then :
  58 + > mkdir fip
  59 +
  60 + > cp $FIPDIR/gxl/bl2.bin fip/
  61 + > cp $FIPDIR/gxl/acs.bin fip/
  62 + > cp $FIPDIR/gxl/bl21.bin fip/
  63 + > cp $FIPDIR/gxl/bl30.bin fip/
  64 + > cp $FIPDIR/gxl/bl301.bin fip/
  65 + > cp $FIPDIR/gxl/bl31.img fip/
  66 + > cp u-boot.bin fip/bl33.bin
  67 +
  68 + > $FIPDIR/blx_fix.sh \
  69 + fip/bl30.bin \
  70 + fip/zero_tmp \
  71 + fip/bl30_zero.bin \
  72 + fip/bl301.bin \
  73 + fip/bl301_zero.bin \
  74 + fip/bl30_new.bin \
  75 + bl30
  76 +
  77 + > $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
  78 +
  79 + > $FIPDIR/blx_fix.sh \
  80 + fip/bl2_acs.bin \
  81 + fip/zero_tmp \
  82 + fip/bl2_zero.bin \
  83 + fip/bl21.bin \
  84 + fip/bl21_zero.bin \
  85 + fip/bl2_new.bin \
  86 + bl2
  87 +
  88 + > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
  89 + > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
  90 + > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
  91 + > $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
  92 + > $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
  93 + --output fip/u-boot.bin \
  94 + --bl2 fip/bl2.n.bin.sig \
  95 + --bl30 fip/bl30_new.bin.enc \
  96 + --bl31 fip/bl31.img.enc \
  97 + --bl33 fip/bl33.bin.enc
  98 +
  99 +and then write the image to SD with:
  100 +
  101 + > DEV=/dev/your_sd_device
  102 + > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
  103 + > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
configs/p200_defconfig
  1 +CONFIG_ARM=y
  2 +CONFIG_ARCH_MESON=y
  3 +CONFIG_SYS_TEXT_BASE=0x01000000
  4 +CONFIG_DEBUG_UART_BASE=0xc81004c0
  5 +CONFIG_DEBUG_UART_CLOCK=24000000
  6 +CONFIG_IDENT_STRING=" p200"
  7 +CONFIG_DEBUG_UART=y
  8 +CONFIG_NR_DRAM_BANKS=1
  9 +CONFIG_OF_BOARD_SETUP=y
  10 +CONFIG_MISC_INIT_R=y
  11 +# CONFIG_DISPLAY_CPUINFO is not set
  12 +# CONFIG_DISPLAY_BOARDINFO is not set
  13 +# CONFIG_CMD_BDI is not set
  14 +# CONFIG_CMD_IMI is not set
  15 +CONFIG_CMD_GPIO=y
  16 +CONFIG_CMD_I2C=y
  17 +# CONFIG_CMD_LOADS is not set
  18 +CONFIG_CMD_MMC=y
  19 +# CONFIG_CMD_SETEXPR is not set
  20 +CONFIG_CMD_REGULATOR=y
  21 +CONFIG_OF_CONTROL=y
  22 +CONFIG_DEFAULT_DEVICE_TREE="meson-gxbb-p200"
  23 +CONFIG_NET_RANDOM_ETHADDR=y
  24 +CONFIG_DM_GPIO=y
  25 +CONFIG_DM_I2C=y
  26 +CONFIG_SYS_I2C_MESON=y
  27 +CONFIG_DM_MMC=y
  28 +CONFIG_MMC_MESON_GX=y
  29 +CONFIG_DM_ETH=y
  30 +CONFIG_ETH_DESIGNWARE=y
  31 +CONFIG_PINCTRL=y
  32 +CONFIG_PINCTRL_MESON_GXBB=y
  33 +CONFIG_DM_REGULATOR=y
  34 +CONFIG_DM_REGULATOR_FIXED=y
  35 +CONFIG_DM_RESET=y
  36 +CONFIG_DEBUG_UART_MESON=y
  37 +CONFIG_DEBUG_UART_ANNOUNCE=y
  38 +CONFIG_DEBUG_UART_SKIP_INIT=y
  39 +CONFIG_MESON_SERIAL=y
  40 +CONFIG_OF_LIBFDT_OVERLAY=y
  41 +CONFIG_SYS_BOARD="p200"