This patch series adds support for the Synopsys DesignWare ARC700 architecture.
DesignWare ARC700 is family of 32-bit CPUs developed by Synopsys, Inc. Since version 3.9 ARC architecture is supported in mainline Linux developemnt. And now to get better support in commonly used boot-loader we are introducing port of U-Boot for ARC700 CPUs. Patches included in this series are also available on GitHub in the 'for-upstream-v3' branch: g...@github.com:foss-for-synopsys-dwc-arc-processors/u-boot.git Also browsable here: https://github.com/foss-for-synopsys-dwc-arc-processors/u-boot/tree/for-upstream-v3 NOTE: there's an acked by Tom Rini prerequisite for Arcangel4 board: http://patchwork.ozlabs.org/patch/300901/ For those who are interested in building this port please download pre-built toolchains for x86_64 hosts. For RedHat-based distros: https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/download/arc-4.8-R2/arc_gnu_4.8-R2_prebuilt_uclibc_le_rhel6_install.tar.gz For Debian-based distros: https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/download/arc-4.8-R2/arc_gnu_4.8-R2_prebuilt_uclibc_le_ubuntu_install.tar.gz Major changes for v3: * Clean-up of headers copied from Linux kernel and other architectures. * Fix checkpatch.pl errors and most of warnings (except really required "typedefs" in "posix_types.h" and "volatile" in data accessors implemented with assembly instuctions). * Arcangel4 board now has big-endian modificatoin so both endianesses could be used for testing and debugging. * Common board init functionality moved from boards to cpu sources. Each patch that follows has detailed description of its changes. Alexey Brodkin (9): arc: add architecture header files arc: add cpu files arc: add library functions arc: bdinfo, image and arc-specific init functions declarations support arc: add support for standalone programs arc: add Arcangel4 board support arc: add AXS101 board support arc: add architecture to MAKEALL arc: add README for architecture MAKEALL | 6 + arch/arc/config.mk | 31 ++++ arch/arc/cpu/arc700/Makefile | 13 ++ arch/arc/cpu/arc700/cache.c | 138 ++++++++++++++++ arch/arc/cpu/arc700/config.mk | 7 + arch/arc/cpu/arc700/cpu.c | 47 ++++++ arch/arc/cpu/arc700/interrupts.c | 142 ++++++++++++++++ arch/arc/cpu/arc700/reset.c | 19 +++ arch/arc/cpu/arc700/start.S | 241 ++++++++++++++++++++++++++++ arch/arc/cpu/arc700/timer.c | 24 +++ arch/arc/cpu/arc700/u-boot.lds | 72 +++++++++ arch/arc/include/asm/arch-arc700/hardware.h | 10 ++ arch/arc/include/asm/arcregs.h | 55 +++++++ arch/arc/include/asm/bitops.h | 19 +++ arch/arc/include/asm/byteorder.h | 23 +++ arch/arc/include/asm/cache.h | 23 +++ arch/arc/include/asm/config.h | 12 ++ arch/arc/include/asm/errno.h | 1 + arch/arc/include/asm/global_data.h | 19 +++ arch/arc/include/asm/io.h | 218 +++++++++++++++++++++++++ arch/arc/include/asm/posix_types.h | 39 +++++ arch/arc/include/asm/ptrace.h | 50 ++++++ arch/arc/include/asm/sections.h | 14 ++ arch/arc/include/asm/string.h | 27 ++++ arch/arc/include/asm/types.h | 55 +++++++ arch/arc/include/asm/u-boot-arc.h | 12 ++ arch/arc/include/asm/u-boot.h | 15 ++ arch/arc/include/asm/unaligned.h | 1 + arch/arc/lib/Makefile | 16 ++ arch/arc/lib/bootm.c | 106 ++++++++++++ arch/arc/lib/memcmp.S | 121 ++++++++++++++ arch/arc/lib/memcpy-700.S | 63 ++++++++ arch/arc/lib/memset.S | 62 +++++++ arch/arc/lib/relocate.c | 72 +++++++++ arch/arc/lib/sections.c | 21 +++ arch/arc/lib/strchr-700.S | 141 ++++++++++++++++ arch/arc/lib/strcmp.S | 97 +++++++++++ arch/arc/lib/strcpy-700.S | 67 ++++++++ arch/arc/lib/strlen.S | 80 +++++++++ board/synopsys/arcangel4/Makefile | 11 ++ board/synopsys/axs101/Makefile | 8 + board/synopsys/axs101/axs101.c | 44 +++++ board/synopsys/axs101/nand.c | 226 ++++++++++++++++++++++++++ boards.cfg | 3 + common/cmd_bdinfo.c | 18 +++ common/image.c | 1 + doc/README.ARC | 27 ++++ examples/standalone/stubs.c | 13 ++ include/common.h | 3 + include/configs/arcangel4-be.h | 96 +++++++++++ include/configs/arcangel4.h | 95 +++++++++++ include/configs/axs101.h | 186 +++++++++++++++++++++ include/image.h | 1 + 53 files changed, 2911 insertions(+) create mode 100644 arch/arc/config.mk create mode 100644 arch/arc/cpu/arc700/Makefile create mode 100644 arch/arc/cpu/arc700/cache.c create mode 100644 arch/arc/cpu/arc700/config.mk create mode 100644 arch/arc/cpu/arc700/cpu.c create mode 100644 arch/arc/cpu/arc700/interrupts.c create mode 100644 arch/arc/cpu/arc700/reset.c create mode 100644 arch/arc/cpu/arc700/start.S create mode 100644 arch/arc/cpu/arc700/timer.c create mode 100644 arch/arc/cpu/arc700/u-boot.lds create mode 100644 arch/arc/include/asm/arch-arc700/hardware.h create mode 100644 arch/arc/include/asm/arcregs.h create mode 100644 arch/arc/include/asm/bitops.h create mode 100644 arch/arc/include/asm/byteorder.h create mode 100644 arch/arc/include/asm/cache.h create mode 100644 arch/arc/include/asm/config.h create mode 100644 arch/arc/include/asm/errno.h create mode 100644 arch/arc/include/asm/global_data.h create mode 100644 arch/arc/include/asm/io.h create mode 100644 arch/arc/include/asm/posix_types.h create mode 100644 arch/arc/include/asm/ptrace.h create mode 100644 arch/arc/include/asm/sections.h create mode 100644 arch/arc/include/asm/string.h create mode 100644 arch/arc/include/asm/types.h create mode 100644 arch/arc/include/asm/u-boot-arc.h create mode 100644 arch/arc/include/asm/u-boot.h create mode 100644 arch/arc/include/asm/unaligned.h create mode 100644 arch/arc/lib/Makefile create mode 100644 arch/arc/lib/bootm.c create mode 100644 arch/arc/lib/memcmp.S create mode 100644 arch/arc/lib/memcpy-700.S create mode 100644 arch/arc/lib/memset.S create mode 100644 arch/arc/lib/relocate.c create mode 100644 arch/arc/lib/sections.c create mode 100644 arch/arc/lib/strchr-700.S create mode 100644 arch/arc/lib/strcmp.S create mode 100644 arch/arc/lib/strcpy-700.S create mode 100644 arch/arc/lib/strlen.S create mode 100644 board/synopsys/arcangel4/Makefile create mode 100644 board/synopsys/axs101/Makefile create mode 100644 board/synopsys/axs101/axs101.c create mode 100644 board/synopsys/axs101/nand.c create mode 100644 doc/README.ARC create mode 100644 include/configs/arcangel4-be.h create mode 100644 include/configs/arcangel4.h create mode 100644 include/configs/axs101.h Cc: Vineet Gupta <vgu...@synopsys.com> Cc: Francois Bedard <fbed...@synopsys.com> Cc: Wolfgang Denk <w...@denx.de> Cc: Heiko Schocher <h...@denx.de> -- 1.8.5.3 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot