blob: 6cbb66a4cf87e4f7044d0fd056885cac3a426d18 [file] [log] [blame]
Kever Yang975a2ab2017-02-23 15:37:55 +08001Introduction
2============
3
4RK3328 key features we might use in U-Boot:
5* CPU: ARMv8 64bit quad-core Cortex-A53
6* IRAM: 36KB
7* DRAM: 4GB-16MB dual-channel
8* eMMC: support eMMC 5.0/5.1, suport HS400, HS200, DDR50
9* SD/MMC: support SD 3.0, MMC 4.51
10* USB: USB2.0 EHCI host port *2
11* Display: RGB/HDMI/DP/MIPI/EDP
12
13evb key features:
14* regulator: pwm regulator for CPU B/L
15* PMIC: rk808
16* debug console: UART2
17
18In order to support Arm Trust Firmware(ATF), we need to use the
19miniloader from rockchip which:
20* do DRAM init
21* load and verify ATF image
22* load and verify U-Boot image
23
24Here is the step-by-step to boot to U-Boot on rk3328.
25
26Get the Source and prebuild binary
27==================================
28
29 > mkdir ~/evb_rk3328
30 > cd ~/evb_rk3328
31 > git clone https://github.com/ARM-software/arm-trusted-firmware.git
32 > git clone https://github.com/rockchip-linux/rkbin
33 > git clone https://github.com/rockchip-linux/rkflashtool
34
35Compile ATF
36===============
37
38 > cd arm-trusted-firmware
39 > make realclean
40 > make CROSS_COMPILE=aarch64-linux-gnu- PLAT=rk3328 bl31
41
42Compile U-Boot
43==================
44
45 > cd ../u-boot
46 > make CROSS_COMPILE=aarch64-linux-gnu- evb-rk3328_defconfig all
47
48Compile rkflashtool
49=======================
50
51 > cd ../rkflashtool
52 > make
53
54Package image for miniloader
55================================
56 > cd ..
57 > cp arm-trusted-firmware/build/rk3328/release/bl31.bin rkbin/rk33
58 > ./rkbin/tools/trust_merger rkbin/tools/RK3328TRUST.ini
59 > ./rkbin/tools/loaderimage --pack --uboot u-boot/u-boot-dtb.bin uboot.img
60 > mkdir image
61 > mv trust.img ./image/
62 > mv uboot.img ./image/rk3328evb-uboot.bin
63
64Flash image
65===============
66Power on(or reset with RESET KEY) with MASKROM KEY preesed, and then:
67
68 > ./rkflashtool/rkflashloader rk3328evb
69
70You should be able to get U-Boot log message in console/UART2 now.