arm: zynqmp: Add ZynqMP minimal R5 support
authorMichal Simek <michal.simek@xilinx.com>
Thu, 12 Apr 2018 15:39:46 +0000 (17:39 +0200)
committerMichal Simek <michal.simek@xilinx.com>
Fri, 11 May 2018 07:38:23 +0000 (09:38 +0200)
commit1d6c54ecb39b8591a98f02f9b47af225ff07cd0b
tree4984d843cbc1da3774ac6b82cd556ac8313da7b8
parent6915dcf35987d654b491524f151e56b91e0d0ec9
arm: zynqmp: Add ZynqMP minimal R5 support

Xilinx ZynqMP also contains dual Cortex R5 which can run U-Boot.
This patch is adding minimal support to get U-Boot boot.
U-Boot on R5 runs out of DDR with default configuration that's why
DDR needs to be partitioned if there is something else running on arm64.
Console is done via Cadence uart driver and the first Cadence Triple
Timer Counter is used for time.

This configuration with uart1 was tested on zcu100-revC.

U-Boot 2018.05-rc2-00021-gd058a08d907d (Apr 18 2018 - 14:11:27 +0200)

Model: Xilinx ZynqMP R5
DRAM:  512 MiB
WARNING: Caches not enabled
MMC:
In:    serial@ff010000
Out:   serial@ff010000
Err:   serial@ff010000
Net:   Net Initialization Skipped
No ethernet found.
ZynqMP r5>

There are two ways how to run this on ZynqMP.
1. Run from ZynqMP arm64
tftpb 20000000 u-boot-r5.elf
setenv autostart no && bootelf -p 20000000
cpu 4 disable && cpu 4 release 10000000 lockstep
or
cpu 4 disable && cpu 4 release 10000000 split

2. Load via jtag when directly to R5

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
14 files changed:
MAINTAINERS
arch/arm/Kconfig
arch/arm/Makefile
arch/arm/dts/Makefile
arch/arm/dts/zynqmp-r5.dts [new file with mode: 0644]
arch/arm/mach-zynqmp-r5/Kconfig [new file with mode: 0644]
arch/arm/mach-zynqmp-r5/Makefile [new file with mode: 0644]
arch/arm/mach-zynqmp-r5/cpu.c [new file with mode: 0644]
board/xilinx/zynqmp_r5/MAINTAINERS [new file with mode: 0644]
board/xilinx/zynqmp_r5/Makefile [new file with mode: 0644]
board/xilinx/zynqmp_r5/board.c [new file with mode: 0644]
configs/xilinx_zynqmp_r5_defconfig [new file with mode: 0644]
drivers/serial/Kconfig
include/configs/xilinx_zynqmp_r5.h [new file with mode: 0644]