[U-Boot] [PATCH v8 0/5] arm64 patch

fenghua at phytium.com.cn fenghua at phytium.com.cn
Fri Sep 13 05:24:52 CEST 2013


From: David Feng <fenghua at 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 v7:
  - Integrate SMC91111 patch of sharma bhupesh.
  - remove v8_outer_cache* which is not need currently.
  - Change license tag.
  - Mov crt0.S/relocate.S/interrupts.c to arm/lib and
    rename them with _64 suffix.
  - Make el3/el2 initializing process of start.S as
    two separate routines. It could be easier to be
    replaced with processor specific codes.
  - Remove exception stack save and restore routine,
    it is unnecessary now.

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             |   38 +++
 arch/arm/cpu/armv8/cache.S              |  130 +++++++++
 arch/arm/cpu/armv8/cache_v8.c           |  228 ++++++++++++++++
 arch/arm/cpu/armv8/config.mk            |   16 ++
 arch/arm/cpu/armv8/cpu.c                |   67 +++++
 arch/arm/cpu/armv8/exceptions.S         |   68 +++++
 arch/arm/cpu/armv8/start.S              |  236 +++++++++++++++++
 arch/arm/cpu/armv8/timer.c              |   80 ++++++
 arch/arm/cpu/armv8/tlb.S                |   30 +++
 arch/arm/cpu/armv8/u-boot.lds           |   71 +++++
 arch/arm/include/asm/arch-armv8/gpio.h  |   11 +
 arch/arm/include/asm/arch-armv8/mmu.h   |  106 ++++++++
 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            |   20 ++
 arch/arm/include/asm/posix_types.h      |   10 +
 arch/arm/include/asm/proc-armv/ptrace.h |   37 +++
 arch/arm/include/asm/proc-armv/system.h |   59 ++++-
 arch/arm/include/asm/system.h           |   84 ++++++
 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                   |   14 +
 arch/arm/lib/board.c                    |   16 +-
 arch/arm/lib/bootm.c                    |   16 ++
 arch/arm/lib/crt0_64.S                  |  116 ++++++++
 arch/arm/lib/interrupts_64.c            |  122 +++++++++
 arch/arm/lib/relocate_64.S              |   57 ++++
 board/armltd/dts/vexpress64.dts         |  439 +++++++++++++++++++++++++++++++
 board/armltd/vexpress64/Makefile        |   27 ++
 board/armltd/vexpress64/vexpress64.c    |   70 +++++
 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                        |   18 ++
 examples/standalone/stubs.c             |   15 ++
 include/configs/vexpress_aemv8a.h       |  193 ++++++++++++++
 include/image.h                         |    1 +
 46 files changed, 2518 insertions(+), 52 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/exceptions.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 arch/arm/lib/crt0_64.S
 create mode 100644 arch/arm/lib/interrupts_64.c
 create mode 100644 arch/arm/lib/relocate_64.S
 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

-- 
1.7.9.5




More information about the U-Boot mailing list