---- Changes in v4: - 02/10 - Use riscv_aclint_timer and update CPU timer settings - 03/10 - Fixed inconsistent empty line usage in gpio-eg20t driver - 08/10 - Replaced inline assembly accessors with generic macros - Dropped AMO instructions emulation patch - Dropped P8700-specific timer patch
Changes in v3: - 01/12 - Split original patch into CPU/Board parts - 02/12 - New patch: extracted board-specific logic from original 01/12 - 01/12 - Relocated object rule for p8700 into p8700-specific Makefile - 01/12 - Explained .word usage for mcache instruction and replaced it with symbolic macro - 01/12 - Replaced inline assembly lw instruction with readl() - 01/12 - Removed p8700 code from start.S, moved to harts_early_init() - 02/12 - Fixed operand spacing in assembly - 02/12 - Replaced hardcoded address with properly macros - 02/12 - Switched from riscv,isa to riscv,isa-extensions - 02/12 - Sorted DT properties properly Changes in v2: - 03/11 - Remove redundant pcie_xilinx_probe() and update commit message accordingly. ---- Chao-ying Fu (10): riscv: Add initial support for P8700 SoC board: boston-riscv: Add initial support for P8700 Boston board gpio: Add GPIO driver for Intel EG20T pci: xilinx: Avoid writing memory base/limit for root bridge riscv: Add support for MIPS GIC syscon on RISC-V SoCs net: pch_gbe: Add PHY reset and MAC address fallback for RISC-V libfdt: Allow non-64b aligned memreserve entries riscv: p8700: Add Coherence Manager (CM) and IOCU support riscv: boston: Add support for LED character display command cmd: riscv: Add 'startharts' command to start multiple harts arch/riscv/Kconfig | 22 ++ arch/riscv/cpu/p8700/Kconfig | 14 ++ arch/riscv/cpu/p8700/Makefile | 11 + arch/riscv/cpu/p8700/cache.c | 103 ++++++++ arch/riscv/cpu/p8700/cm-iocu.c | 75 ++++++ arch/riscv/cpu/p8700/cm.c | 92 +++++++ arch/riscv/cpu/p8700/cpu.c | 13 + arch/riscv/cpu/p8700/dram.c | 37 +++ arch/riscv/cpu/p8700/p8700_platform_setup.S | 169 +++++++++++++ arch/riscv/dts/Makefile | 1 + arch/riscv/dts/boston-p8700.dts | 263 ++++++++++++++++++++ arch/riscv/include/asm/arch-p8700/cm.h | 61 +++++ arch/riscv/include/asm/arch-p8700/p8700.h | 144 +++++++++++ arch/riscv/include/asm/global_data.h | 2 + arch/riscv/lib/Makefile | 1 + arch/riscv/lib/mips_gic.c | 47 ++++ board/mips/boston-riscv/Kconfig | 51 ++++ board/mips/boston-riscv/MAINTAINERS | 15 ++ board/mips/boston-riscv/Makefile | 10 + board/mips/boston-riscv/boston-lcd.h | 20 ++ board/mips/boston-riscv/boston-regs.h | 38 +++ board/mips/boston-riscv/boston-riscv.c | 9 + board/mips/boston-riscv/checkboard.c | 43 ++++ board/mips/boston-riscv/config.mk | 15 ++ board/mips/boston-riscv/display.c | 33 +++ board/mips/boston-riscv/iocu.c | 104 ++++++++ board/mips/boston-riscv/lowlevel_init.S | 20 ++ board/mips/boston-riscv/reset.c | 15 ++ cmd/Kconfig | 14 ++ cmd/Makefile | 2 + cmd/display.c | 51 ++++ cmd/start_harts.c | 103 ++++++++ configs/boston-p8700_defconfig | 95 +++++++ doc/README.LED_display | 26 ++ drivers/clk/Kconfig | 2 +- drivers/gpio/Kconfig | 7 + drivers/gpio/Makefile | 1 + drivers/gpio/eg20t-gpio.c | 140 +++++++++++ drivers/net/pch_gbe.c | 37 ++- drivers/net/pch_gbe.h | 1 + drivers/pci/pcie_xilinx.c | 9 + include/asm-generic/global_data.h | 5 + include/configs/boston-riscv.h | 11 + include/led-display.h | 33 +++ net/eth-uclass.c | 2 + scripts/dtc/libfdt/fdt_ro.c | 11 +- 46 files changed, 1972 insertions(+), 6 deletions(-) create mode 100644 arch/riscv/cpu/p8700/Kconfig create mode 100644 arch/riscv/cpu/p8700/Makefile create mode 100644 arch/riscv/cpu/p8700/cache.c create mode 100644 arch/riscv/cpu/p8700/cm-iocu.c create mode 100644 arch/riscv/cpu/p8700/cm.c create mode 100644 arch/riscv/cpu/p8700/cpu.c create mode 100644 arch/riscv/cpu/p8700/dram.c create mode 100644 arch/riscv/cpu/p8700/p8700_platform_setup.S create mode 100644 arch/riscv/dts/boston-p8700.dts create mode 100644 arch/riscv/include/asm/arch-p8700/cm.h create mode 100644 arch/riscv/include/asm/arch-p8700/p8700.h create mode 100644 arch/riscv/lib/mips_gic.c create mode 100644 board/mips/boston-riscv/Kconfig create mode 100644 board/mips/boston-riscv/MAINTAINERS create mode 100644 board/mips/boston-riscv/Makefile create mode 100644 board/mips/boston-riscv/boston-lcd.h create mode 100644 board/mips/boston-riscv/boston-regs.h create mode 100644 board/mips/boston-riscv/boston-riscv.c create mode 100644 board/mips/boston-riscv/checkboard.c create mode 100644 board/mips/boston-riscv/config.mk create mode 100644 board/mips/boston-riscv/display.c create mode 100644 board/mips/boston-riscv/iocu.c create mode 100644 board/mips/boston-riscv/lowlevel_init.S create mode 100644 board/mips/boston-riscv/reset.c create mode 100644 cmd/display.c create mode 100644 cmd/start_harts.c create mode 100644 configs/boston-p8700_defconfig create mode 100644 doc/README.LED_display create mode 100644 drivers/gpio/eg20t-gpio.c create mode 100644 include/configs/boston-riscv.h create mode 100644 include/led-display.h -- 2.34.1