From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sergey Temerkhanov Date: Wed, 14 Oct 2015 09:55:43 -0700 Subject: [U-Boot] [PATCH v7 0/9] Add support for ThunderX 88xx SoC family Message-ID: <1444841757-28043-1-git-send-email-s.temerkhanov@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de This patch series adds support for Cavium ThunderX 88xx SoC family (http://cavium.com/ThunderX_ARM_Processors.html) This is the version 6 of the series I posted at http://lists.denx.de/pipermail/u-boot/2015-September/228716.html http://lists.denx.de/pipermail/u-boot/2015-September/227088.html http://lists.denx.de/pipermail/u-boot/2015-August/224324.html http://lists.denx.de/pipermail/u-boot/2015-August/223618.html Changes in v7: - Removed stale board.c changes - Removed rebase/merge residue - Added CONFIG_CMD_ATF - Updated defconfig - Fixed typo in the 'uboot,skip-init' preperty Changes in v6: - Fixed lack of protection in global_data.h - Changed the 'PL0X_PREINITIALIZED' flag to the 'skip-init' bool - Added /chosen node - Added 'u-boot,skip-init' property to the FDT Changes in v5: - Allow setting of different memory attributes in the memory map - Added OF control support - Added FDT for ThunderX 88xx series - Added CONFIG_OF_CONTROL support - Changed memory attributes - Moved dram_init() from a separate file to thunderx.c Changes in v4: - Use ALIGN macro for address alignment - Document FW calls - Fixed build warnings - Moved to DM_SERIAL - Moved CONFIG_SYS_PROMPT to configs/thunderx_88xx_defconfig - Added proper DM_SERIAL definitions Changes in v3: - Reduced code duplication - Renamed CONFIG_SYS_PTL1_BITS to CONFIG_SYS_PTL2_BITS - Moved 'reset_sctrl' call to the 'reset' label - Rebased to the actual upstream tree - Documented newly added config options - Fixed clobber lists (thanks to Corey) - Added __used keyword - Fixed formatting - Added MAINTAINERS - Moved command definitions to defconfig Changes in v2: - Changed code licensing - Completed the patchset Sergey Temerkhanov (9): armv8: Add read_mpidr() function armv8: New MMU setup code allowing to use 48+ bits PA/VA armv8: Add Secure Monitor/Hypervisor Call (SMC/HVC) infrastructure armv8: Add psci.h from the Linux kernel arm: serial: Add ability to use pre-initialized UARTs armv8: cavium: Add the device tree for ThunderX armv8: cavium: Add ThunderX 88xx board definition armv8: cavium: Add an implementation of ATF calling functions armv8: cavium: Get DRAM size from ATF arch/arm/Kconfig | 5 + arch/arm/cpu/armv8/Makefile | 1 + arch/arm/cpu/armv8/cache_v8.c | 79 +++++++ arch/arm/cpu/armv8/fwcall.c | 75 ++++++ arch/arm/cpu/armv8/start.S | 36 +++ arch/arm/dts/Makefile | 1 + arch/arm/dts/thunderx-88xx.dts | 31 +++ arch/arm/dts/thunderx-88xx.dtsi | 363 ++++++++++++++++++++++++++++++ arch/arm/include/asm/armv8/mmu.h | 82 ++++++- arch/arm/include/asm/global_data.h | 3 + arch/arm/include/asm/system.h | 39 ++++ board/cavium/thunderx/Kconfig | 27 +++ board/cavium/thunderx/MAINTAINERS | 6 + board/cavium/thunderx/Makefile | 8 + board/cavium/thunderx/atf.c | 312 +++++++++++++++++++++++++ board/cavium/thunderx/thunderx.c | 102 +++++++++ configs/thunderx_88xx_defconfig | 24 ++ doc/README.arm64 | 35 ++- doc/device-tree-bindings/serial/pl01x.txt | 3 + drivers/serial/serial_pl01x.c | 14 +- include/cavium/atf.h | 22 ++ include/cavium/atf_part.h | 26 +++ include/cavium/thunderx_svc.h | 67 ++++++ include/configs/thunderx_88xx.h | 147 ++++++++++++ include/dm/platform_data/serial_pl01x.h | 2 + include/linux/psci.h | 90 ++++++++ 26 files changed, 1582 insertions(+), 18 deletions(-) create mode 100644 arch/arm/cpu/armv8/fwcall.c create mode 100644 arch/arm/dts/thunderx-88xx.dts create mode 100644 arch/arm/dts/thunderx-88xx.dtsi create mode 100644 board/cavium/thunderx/Kconfig create mode 100644 board/cavium/thunderx/MAINTAINERS create mode 100644 board/cavium/thunderx/Makefile create mode 100644 board/cavium/thunderx/atf.c create mode 100644 board/cavium/thunderx/thunderx.c create mode 100644 configs/thunderx_88xx_defconfig create mode 100644 include/cavium/atf.h create mode 100644 include/cavium/atf_part.h create mode 100644 include/cavium/thunderx_svc.h create mode 100644 include/configs/thunderx_88xx.h create mode 100644 include/linux/psci.h -- 2.1.4