[U-Boot] [PATCH v2 0/8] U-Boot port to Xtensa architecture

Max Filippov jcmvbkbc at gmail.com
Fri Jul 8 17:41:58 CEST 2016


Hi Tom,

this series adds U-Boot port to Xtensa, configurable processor architecture
from Tensilica, Inc., now Cadence Design Systems Inc.

Two patches add proper xtensa bits: changes to shares files and contents
of arch/xtensa. Next three patches add three sample xtensa CPU
configurations: one without MMU, with MMUv2 and with MMUv3. Two more
patches clean up OpenCores 10/100 MBit driver, enable it to be used with
dedicated packet memory and with gigabit PHY. 
One more patch adds xtfpga board family that consists of Avnet LX60, LX110
and LX200 and Xilinx ML605 and KC705 FPGA boards configured with xtensa
bitstream.

The whole series is also available in the following git tree:

git://github.com/jcmvbkbc/u-boot-xtensa.git tags/xtensa-2016.07-rc3

The port has been done mainly by Chris Zankel. I've been maintaining it
internally for some time now and I'll maintain it upstream.

This is my second attempt to submit it, the first one:
  http://lists.denx.de/pipermail/u-boot/2014-August/186771.html

Changes since v1:
- code rebased to v2016.07-rc3;
- the port now uses generic board;
- timer_get_us is implemented for CPU cores that have CCOUNT option;
- functional atomic.h is provided;
- both windowed and call0 ABIs are supported;
- noMMU, MMUv2 and MMUv3 cores are supported;
- CONFIG_OF_CONTROL is supported and DTS for the latest XTFPGA boards
  are provided.

Please review.

Chris Zankel (5):
  xtensa: add support for the xtensa processor architecture [1/2]
  xtensa: add support for the xtensa processor architecture [2/2]
  xtensa: add core information for the dc232b processor
  net/ethoc: support private memory configurations
  xtensa: add support for the 'xtfpga' evaluation board

Max Filippov (3):
  xtensa: add core information for the dc233c processor
  xtensa: add core information for the de212 processor
  net/ethoc: don't advertise gigabit on the connected PHY

 MAINTAINERS                                   |   5 +
 MAKEALL                                       |   6 +
 Makefile                                      |  10 +-
 arch/Kconfig                                  |   8 +
 arch/xtensa/Kconfig                           |  29 +
 arch/xtensa/Makefile                          |   8 +
 arch/xtensa/config.mk                         |  12 +
 arch/xtensa/cpu/Makefile                      |   9 +
 arch/xtensa/cpu/cpu.c                         |  92 ++++
 arch/xtensa/cpu/exceptions.c                  |  64 +++
 arch/xtensa/cpu/start.S                       | 737 ++++++++++++++++++++++++++
 arch/xtensa/cpu/u-boot.lds                    | 116 ++++
 arch/xtensa/dts/Makefile                      |  15 +
 arch/xtensa/dts/include/dt-bindings           |   1 +
 arch/xtensa/dts/kc705.dts                     |  15 +
 arch/xtensa/dts/kc705_nommu.dts               |  17 +
 arch/xtensa/dts/ml605.dts                     |  15 +
 arch/xtensa/dts/ml605_nommu.dts               |  18 +
 arch/xtensa/dts/xtfpga-flash-128m.dtsi        |  28 +
 arch/xtensa/dts/xtfpga-flash-16m.dtsi         |  28 +
 arch/xtensa/dts/xtfpga.dtsi                   | 137 +++++
 arch/xtensa/include/asm/addrspace.h           |  31 ++
 arch/xtensa/include/asm/arch-dc232b/core.h    | 422 +++++++++++++++
 arch/xtensa/include/asm/arch-dc232b/tie-asm.h | 120 +++++
 arch/xtensa/include/asm/arch-dc232b/tie.h     | 129 +++++
 arch/xtensa/include/asm/arch-dc233c/core.h    | 475 +++++++++++++++++
 arch/xtensa/include/asm/arch-dc233c/tie-asm.h | 193 +++++++
 arch/xtensa/include/asm/arch-dc233c/tie.h     | 150 ++++++
 arch/xtensa/include/asm/arch-de212/core.h     | 594 +++++++++++++++++++++
 arch/xtensa/include/asm/arch-de212/tie-asm.h  | 170 ++++++
 arch/xtensa/include/asm/arch-de212/tie.h      | 136 +++++
 arch/xtensa/include/asm/asmmacro.h            | 152 ++++++
 arch/xtensa/include/asm/atomic.h              |  55 ++
 arch/xtensa/include/asm/bitops.h              |  36 ++
 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            | 211 ++++++++
 arch/xtensa/include/asm/config.h              |  24 +
 arch/xtensa/include/asm/errno.h               |   1 +
 arch/xtensa/include/asm/global_data.h         |  20 +
 arch/xtensa/include/asm/io.h                  | 149 ++++++
 arch/xtensa/include/asm/ldscript.h            | 222 ++++++++
 arch/xtensa/include/asm/linkage.h             |   4 +
 arch/xtensa/include/asm/misc.h                |  20 +
 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            |  12 +
 arch/xtensa/include/asm/string.h              |  10 +
 arch/xtensa/include/asm/system.h              |  27 +
 arch/xtensa/include/asm/types.h               |  60 +++
 arch/xtensa/include/asm/u-boot.h              |  41 ++
 arch/xtensa/include/asm/unaligned.h           |   6 +
 arch/xtensa/include/asm/xtensa.h              |  29 +
 arch/xtensa/lib/Makefile                      |  10 +
 arch/xtensa/lib/bootm.c                       | 197 +++++++
 arch/xtensa/lib/misc.S                        | 179 +++++++
 arch/xtensa/lib/time.c                        | 121 +++++
 board/cadence/xtfpga/Kconfig                  |  43 ++
 board/cadence/xtfpga/MAINTAINERS              |   6 +
 board/cadence/xtfpga/Makefile                 |   8 +
 board/cadence/xtfpga/README                   | 125 +++++
 board/cadence/xtfpga/lcd.c                    |  88 +++
 board/cadence/xtfpga/lcd.h                    |  12 +
 board/cadence/xtfpga/xtfpga.c                 | 173 ++++++
 cmd/bdinfo.c                                  |  22 +
 common/board_f.c                              |   7 +-
 common/image.c                                |   1 +
 configs/xtfpga_defconfig                      |  13 +
 doc/README.xtensa                             | 100 ++++
 drivers/net/ethoc.c                           |  97 ++++
 examples/standalone/stubs.c                   |  47 ++
 include/configs/xtfpga.h                      | 286 ++++++++++
 include/image.h                               |   1 +
 include/linux/stat.h                          |   4 +-
 77 files changed, 6871 insertions(+), 6 deletions(-)
 create mode 100644 arch/xtensa/Kconfig
 create mode 100644 arch/xtensa/Makefile
 create mode 100644 arch/xtensa/config.mk
 create mode 100644 arch/xtensa/cpu/Makefile
 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
 create mode 100644 arch/xtensa/dts/Makefile
 create mode 120000 arch/xtensa/dts/include/dt-bindings
 create mode 100644 arch/xtensa/dts/kc705.dts
 create mode 100644 arch/xtensa/dts/kc705_nommu.dts
 create mode 100644 arch/xtensa/dts/ml605.dts
 create mode 100644 arch/xtensa/dts/ml605_nommu.dts
 create mode 100644 arch/xtensa/dts/xtfpga-flash-128m.dtsi
 create mode 100644 arch/xtensa/dts/xtfpga-flash-16m.dtsi
 create mode 100644 arch/xtensa/dts/xtfpga.dtsi
 create mode 100644 arch/xtensa/include/asm/addrspace.h
 create mode 100644 arch/xtensa/include/asm/arch-dc232b/core.h
 create mode 100644 arch/xtensa/include/asm/arch-dc232b/tie-asm.h
 create mode 100644 arch/xtensa/include/asm/arch-dc232b/tie.h
 create mode 100644 arch/xtensa/include/asm/arch-dc233c/core.h
 create mode 100644 arch/xtensa/include/asm/arch-dc233c/tie-asm.h
 create mode 100644 arch/xtensa/include/asm/arch-dc233c/tie.h
 create mode 100644 arch/xtensa/include/asm/arch-de212/core.h
 create mode 100644 arch/xtensa/include/asm/arch-de212/tie-asm.h
 create mode 100644 arch/xtensa/include/asm/arch-de212/tie.h
 create mode 100644 arch/xtensa/include/asm/asmmacro.h
 create mode 100644 arch/xtensa/include/asm/atomic.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/system.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/bootm.c
 create mode 100644 arch/xtensa/lib/misc.S
 create mode 100644 arch/xtensa/lib/time.c
 create mode 100644 board/cadence/xtfpga/Kconfig
 create mode 100644 board/cadence/xtfpga/MAINTAINERS
 create mode 100644 board/cadence/xtfpga/Makefile
 create mode 100644 board/cadence/xtfpga/README
 create mode 100644 board/cadence/xtfpga/lcd.c
 create mode 100644 board/cadence/xtfpga/lcd.h
 create mode 100644 board/cadence/xtfpga/xtfpga.c
 create mode 100644 configs/xtfpga_defconfig
 create mode 100644 doc/README.xtensa
 create mode 100644 include/configs/xtfpga.h

-- 
2.1.4



More information about the U-Boot mailing list