
From: David Feng fenghua@phytium.com.cn
The porting has been merged with arm architecture. Most architecture codes are placed in arch/arm/cpu/armv8 directory. Generic board is also supported after a few bugs are fixed. u-boot could be running at EL1 or EL2.
Changes for v6: - Check the patches with checkpatch.pl and get rid of almost all warnings. There are a few warnings still, but I think it should be that. - change printf format in cmd_pxe.c, use %zd indtead of %ld to format size_t type variable. - add macro PGTABLE_SIZE to identify tlb table size.
Changes for v5: - Make modification to inappropriate licensed file and bugs according to ScottWood's advice. Thanks Scott for his checking to these patches. - Enable u-boot's running at EL1. - Get rid of compiling warnings originated from cmd_pxe.c.
Changes for v4: - fix the generic board_f.c, remove zero_global_data from init_sequence_f array and move it to board_init_f() function with CONFIG_X86 switch. The previous fixup is inaccurate. - Replace __ARMEB__ with __AARCH64EB__ in byteorder.h and unaligned.h, gcc for aarch64 use __AARCH64EB__ and __AARCH64EL__ to identify endian. - Some modification to README.armv8
Changes for v3: - merge arm64 to arm architecture.
David Feng (5): core support of arm64 board support of vexpress_aemv8a generic board patch of manual reloc and zero gd_t 64bit initrd start address support remove compiling warnings
MAINTAINERS | 4 + arch/arm/config.mk | 4 + arch/arm/cpu/armv8/Makefile | 56 ++++ arch/arm/cpu/armv8/cache.S | 145 ++++++++++ arch/arm/cpu/armv8/cache_v8.c | 275 +++++++++++++++++++ arch/arm/cpu/armv8/config.mk | 31 +++ arch/arm/cpu/armv8/cpu.c | 68 +++++ arch/arm/cpu/armv8/crt0.S | 130 +++++++++ arch/arm/cpu/armv8/exceptions.S | 173 ++++++++++++ arch/arm/cpu/armv8/interrupts.c | 158 +++++++++++ arch/arm/cpu/armv8/relocate.S | 73 +++++ arch/arm/cpu/armv8/start.S | 253 ++++++++++++++++++ arch/arm/cpu/armv8/timer.c | 97 +++++++ arch/arm/cpu/armv8/tlb.S | 45 ++++ arch/arm/cpu/armv8/u-boot.lds | 83 ++++++ arch/arm/include/asm/arch-armv8/gpio.h | 26 ++ arch/arm/include/asm/arch-armv8/mmu.h | 117 ++++++++ arch/arm/include/asm/byteorder.h | 12 + arch/arm/include/asm/cache.h | 5 + arch/arm/include/asm/config.h | 10 + arch/arm/include/asm/global_data.h | 6 +- arch/arm/include/asm/io.h | 15 +- arch/arm/include/asm/macro.h | 34 +++ arch/arm/include/asm/posix_types.h | 17 ++ arch/arm/include/asm/proc-armv/ptrace.h | 37 +++ arch/arm/include/asm/proc-armv/system.h | 59 ++++- arch/arm/include/asm/system.h | 78 ++++++ arch/arm/include/asm/types.h | 4 + arch/arm/include/asm/u-boot.h | 4 + arch/arm/include/asm/unaligned.h | 2 +- arch/arm/lib/Makefile | 8 + arch/arm/lib/board.c | 16 +- arch/arm/lib/bootm.c | 20 +- board/armltd/dts/vexpress64.dts | 439 +++++++++++++++++++++++++++++++ board/armltd/vexpress64/Makefile | 43 +++ board/armltd/vexpress64/vexpress64.c | 79 ++++++ boards.cfg | 1 + common/board_f.c | 19 +- common/board_r.c | 18 ++ common/cmd_pxe.c | 4 +- common/fdt_support.c | 66 ++--- common/image.c | 1 + doc/README.armv8 | 10 + examples/standalone/stubs.c | 15 ++ include/configs/vexpress_aemv8a.h | 205 +++++++++++++++ include/image.h | 1 + 46 files changed, 2912 insertions(+), 54 deletions(-) create mode 100644 arch/arm/cpu/armv8/Makefile create mode 100644 arch/arm/cpu/armv8/cache.S create mode 100644 arch/arm/cpu/armv8/cache_v8.c create mode 100644 arch/arm/cpu/armv8/config.mk create mode 100644 arch/arm/cpu/armv8/cpu.c create mode 100644 arch/arm/cpu/armv8/crt0.S create mode 100644 arch/arm/cpu/armv8/exceptions.S create mode 100644 arch/arm/cpu/armv8/interrupts.c create mode 100644 arch/arm/cpu/armv8/relocate.S create mode 100644 arch/arm/cpu/armv8/start.S create mode 100644 arch/arm/cpu/armv8/timer.c create mode 100644 arch/arm/cpu/armv8/tlb.S create mode 100644 arch/arm/cpu/armv8/u-boot.lds create mode 100644 arch/arm/include/asm/arch-armv8/gpio.h create mode 100644 arch/arm/include/asm/arch-armv8/mmu.h create mode 100644 board/armltd/dts/vexpress64.dts create mode 100644 board/armltd/vexpress64/Makefile create mode 100644 board/armltd/vexpress64/vexpress64.c create mode 100644 doc/README.armv8 create mode 100644 include/configs/vexpress_aemv8a.h