rv1126-uboot/board/rockchip/evb_rk3399
Tom Rini aee63dc84c MAINTAINERS: Add missing boards and config entries
As part of my usual round of build testing, output about missing
MAINTAINERS information was not logged, and thus often overlooked.
Correct that mistake by ensuring that I log the output of
genboardscfg.py every time.  As part of that, address a number of
missing MAINTAINERS entires.  In the case of a missing file, I have put
the original submitter down.  In the rest of the cases I have added the
config (and sometimes relevant header file) to the existing set of file
globs.

Change-Id: Ic4524445489daba323d638470c369ad914d5bfef
Signed-off-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
(cherry picked from commit 79df00fdb40b4584919c8bcef42d323a8d38d0f1)
2018-01-17 15:27:28 +08:00
..
Kconfig
MAINTAINERS MAINTAINERS: Add missing boards and config entries 2018-01-17 15:27:28 +08:00
Makefile
README rockchip: evb-rk3399: update document for board bring up 2017-09-12 16:04:31 +08:00
evb-rk3399.c rockchip: rk3399: make spl_board_init board-specific 2018-01-17 15:27:28 +08:00
mk_fit_atf.sh rockchip: rk3399-evb: add script for atf fit 2017-09-12 16:04:30 +08:00

README

Introduction
============

RK3399 key features we might use in U-Boot:
* CPU: ARMv8 64bit Big-Little architecture,
*      Big: dual-core Cortex-A72
*      Little: quad-core Cortex-A53
* IRAM: 200KB
* DRAM: 4GB-128MB dual-channel
* eMMC: support eMMC 5.0/5.1, suport HS400, HS200, DDR50
* SD/MMC: support SD 3.0, MMC 4.51
* USB: USB3.0 typc-C port *2 with dwc3 controller
*      USB2.0 EHCI host port *2
* Display: RGB/HDMI/DP/MIPI/EDP

evb key features:
* regulator: pwm regulator for CPU B/L
* PMIC: rk808
* debug console: UART2

In order to support Arm Trust Firmware(ATF), we can use either SPL or
miniloader from rockchip to do:
* do DRAM init
* load and verify ATF image
* load and verify U-Boot image

Here is the step-by-step to boot to U-Boot on rk3399.

Get the Source and prebuild binary
==================================

  > mkdir ~/evb_rk3399
  > cd ~/evb_rk3399
  > git clone https://github.com/ARM-software/arm-trusted-firmware.git
  > git clone https://github.com/rockchip-linux/rkbin.git
  > git clone https://github.com/rockchip-linux/rkdeveloptool.git

Compile the ATF
===============

  > cd arm-trusted-firmware
  > make realclean
  > make CROSS_COMPILE=aarch64-linux-gnu- PLAT=rk3399 bl31
  Get bl31.elf in this step, copy it to U-Boot root dir:
  > cp bl31.elf ../u-boot/

Compile the U-Boot
==================

  > cd ../u-boot
  > export ARCH=arm64
  > export CROSS_COMPILE=aarch64-linux-gnu-
  > make evb-rk3399_defconfig
  for firefly-rk3399, use below instead:
  > make evb-firefly_defconfig
  > make
  > make u-boot.itb

  Get spl/u-boot-spl.bin and u-boot.itb in this step.

Compile the rkdeveloptool
=======================
  Follow instructions in latest README
  > cd ../rkflashtool
  > autoreconf -i
  > ./configure
  > make
  > sudo make install

  Get rkdeveloptool in you Host in this step.

Both origin binaries and Tool are ready now, choose either option 1 or
option 2 to deploy U-Boot.

Package the image
=================

Package the image for U-Boot SPL(option 1)
--------------------------------
  > cd ..
  > tools/mkimage -n rk3399 -T rksd -d spl/u-boot-spl.bin idbspl.img

  Get idbspl.img in this step.

Package the image for Rockchip miniloader(option 2)
------------------------------------------
  > cd ..
  > cp arm-trusted-firmware/build/rk3399/release/bl31.elf rkbin/rk33
  > ./rkbin/tools/trust_merger rkbin/tools/RK3399TRUST.ini
  > ./rkbin/tools/loaderimage --pack --uboot u-boot/u-boot-dtb.bin uboot.img

  Get trust.img and uboot.img in this step.

Flash the image to eMMC
=======================

Flash the image with U-Boot SPL(option 1)
-------------------------------
Power on(or reset with RESET KEY) with MASKROM KEY preesed, and then:
  > rkdeveloptool db rkbin/rk33/rk3399_loader_v1.08.106.bin
  > rkdeveloptool wl 64 u-boot/idbspl.img
  > rkdeveloptool wl 512 u-boot/u-boot.itb
  > rkdeveloptool rd

Flash the image with Rockchip miniloader(option 2)
----------------------------------------
Power on(or reset with RESET KEY) with MASKROM KEY preesed, and then:
  > rkdeveloptool db rkbin/rk33/rk3399_loader_v1.08.106.bin
  > rkdeveloptool ul rkbin/rk33/rk3399_loader_v1.08.106.bin
  > rkdeveloptool wl 0x4000 u-boot/uboot.img
  > rkdeveloptool wl 0x6000 u-boot/trust.img
  > rkdeveloptool rd

You should be able to get U-Boot log message in console/UART2 now.
For more detail, please reference to:
http://opensource.rock-chips.com/wiki_Boot_option