From mboxrd@z Thu Jan 1 00:00:00 1970 From: Simon Glass Date: Sun, 31 Aug 2014 22:02:30 -0700 Subject: [U-Boot] [PATCH 6/8] xtensa: add support for the xtensa processor architecture [2/2] In-Reply-To: <1408556533-22433-7-git-send-email-jcmvbkbc@gmail.com> References: <1408556533-22433-1-git-send-email-jcmvbkbc@gmail.com> <1408556533-22433-7-git-send-email-jcmvbkbc@gmail.com> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Max, On 20 August 2014 10:42, Max Filippov wrote: > From: Chris Zankel > > The Xtensa processor architecture is a configurable, extensible, > and synthesizable 32-bit RISC processor core provided by Tensilica, inc. > > This is the second part of the basic architecture port, adding the > 'arch/xtensa' directory and a readme file. > > Signed-off-by: Chris Zankel > Signed-off-by: Max Filippov > --- > arch/Kconfig | 4 + > arch/xtensa/Kconfig | 26 ++ > arch/xtensa/config.mk | 13 + > arch/xtensa/cpu/.gitignore | 1 + > arch/xtensa/cpu/Makefile | 13 + > arch/xtensa/cpu/config.mk | 9 + > arch/xtensa/cpu/cpu.c | 84 +++++ > arch/xtensa/cpu/exceptions.c | 67 ++++ > arch/xtensa/cpu/start.S | 672 ++++++++++++++++++++++++++++++++++ > arch/xtensa/cpu/u-boot.lds.S | 107 ++++++ > arch/xtensa/include/asm/addrspace.h | 43 +++ > arch/xtensa/include/asm/asmmacro.h | 136 +++++++ > arch/xtensa/include/asm/bitops.h | 14 + > arch/xtensa/include/asm/bootparam.h | 54 +++ > arch/xtensa/include/asm/byteorder.h | 81 ++++ > arch/xtensa/include/asm/cache.h | 20 + > arch/xtensa/include/asm/cacheasm.h | 187 ++++++++++ > arch/xtensa/include/asm/config.h | 17 + > arch/xtensa/include/asm/errno.h | 1 + > arch/xtensa/include/asm/global_data.h | 24 ++ > arch/xtensa/include/asm/io.h | 148 ++++++++ > arch/xtensa/include/asm/ldscript.h | 220 +++++++++++ > arch/xtensa/include/asm/linkage.h | 4 + > arch/xtensa/include/asm/misc.h | 24 ++ > arch/xtensa/include/asm/posix_types.h | 74 ++++ > arch/xtensa/include/asm/processor.h | 11 + > arch/xtensa/include/asm/ptrace.h | 133 +++++++ > arch/xtensa/include/asm/regs.h | 95 +++++ > arch/xtensa/include/asm/sections.h | 15 + > arch/xtensa/include/asm/string.h | 10 + > arch/xtensa/include/asm/types.h | 60 +++ > arch/xtensa/include/asm/u-boot.h | 43 +++ > arch/xtensa/include/asm/unaligned.h | 6 + > arch/xtensa/include/asm/xtensa.h | 36 ++ > arch/xtensa/lib/Makefile | 9 + > arch/xtensa/lib/board.c | 173 +++++++++ > arch/xtensa/lib/bootm.c | 202 ++++++++++ > arch/xtensa/lib/misc.S | 178 +++++++++ > arch/xtensa/lib/time.c | 111 ++++++ > 39 files changed, 3125 insertions(+) > create mode 100644 arch/xtensa/Kconfig > create mode 100644 arch/xtensa/config.mk > create mode 100644 arch/xtensa/cpu/.gitignore > create mode 100644 arch/xtensa/cpu/Makefile > create mode 100644 arch/xtensa/cpu/config.mk > create mode 100644 arch/xtensa/cpu/cpu.c > create mode 100644 arch/xtensa/cpu/exceptions.c > create mode 100644 arch/xtensa/cpu/start.S > create mode 100644 arch/xtensa/cpu/u-boot.lds.S > create mode 100644 arch/xtensa/include/asm/addrspace.h > create mode 100644 arch/xtensa/include/asm/asmmacro.h > create mode 100644 arch/xtensa/include/asm/bitops.h > create mode 100644 arch/xtensa/include/asm/bootparam.h > create mode 100644 arch/xtensa/include/asm/byteorder.h > create mode 100644 arch/xtensa/include/asm/cache.h > create mode 100644 arch/xtensa/include/asm/cacheasm.h > create mode 100644 arch/xtensa/include/asm/config.h > create mode 100644 arch/xtensa/include/asm/errno.h > create mode 100644 arch/xtensa/include/asm/global_data.h > create mode 100644 arch/xtensa/include/asm/io.h > create mode 100644 arch/xtensa/include/asm/ldscript.h > create mode 100644 arch/xtensa/include/asm/linkage.h > create mode 100644 arch/xtensa/include/asm/misc.h > create mode 100644 arch/xtensa/include/asm/posix_types.h > create mode 100644 arch/xtensa/include/asm/processor.h > create mode 100644 arch/xtensa/include/asm/ptrace.h > create mode 100644 arch/xtensa/include/asm/regs.h > create mode 100644 arch/xtensa/include/asm/sections.h > create mode 100644 arch/xtensa/include/asm/string.h > create mode 100644 arch/xtensa/include/asm/types.h > create mode 100644 arch/xtensa/include/asm/u-boot.h > create mode 100644 arch/xtensa/include/asm/unaligned.h > create mode 100644 arch/xtensa/include/asm/xtensa.h > create mode 100644 arch/xtensa/lib/Makefile > create mode 100644 arch/xtensa/lib/board.c > create mode 100644 arch/xtensa/lib/bootm.c > create mode 100644 arch/xtensa/lib/misc.S > create mode 100644 arch/xtensa/lib/time.c This all looks quite tidy, from a brief look. But please make sure you use generic board - CONFIG_SYS_GENERIC_BOARD. You should not need a board.c file. Also for your do_bootm_linux() implementation, see if you can check the flags, and thus support the bootm sub-commands. If you have a microsecond timer, you could implement timer_get_us(). Regards, Simon