From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gregory CLEMENT Date: Tue, 25 Sep 2018 15:01:02 +0200 Subject: [U-Boot] [PATCH 0/6] Add support for VCore III SoCs found in Microsemi switches Message-ID: <20180925130108.19211-1-gregory.clement@bootlin.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hello, This series add the support of 2 SoCs: Ocelot and Luton from Microsemi. Both of them belongs to the same family Vcore III. We found them on various advanced switches product. The support for Ocelot already have been submit to Linux, but not yet the Luton support. Besides this series 3 others patches are needed but they are driver related: DW SPI: Allow to overload the management of the external CS gpio: mscc-bitbang-spi: Add a simple gpio driver for bitbgang spi pinctrl: mscc: Add gpio and pinctrl driver for MSCC MIPS SoCs (VcoreIII based) They will be submitted separately. Thanks, Gregory Gregory CLEMENT (6): MIPS: move create_tlb() in an proper header: mipsregs.h MSCC: add support for VCoreIII SoCs MSCC: add board support for the VCoreIII based evaluation boards MSCC: add device tree for Ocelot and Luton (boards and SoCs) MSCC: add configuration for Ocelot and Luton based boards MIPS: bootm: Add support for Vcore III linux kernel arch/mips/Kconfig | 6 + arch/mips/Makefile | 1 + arch/mips/cpu/cpu.c | 10 - arch/mips/dts/luton_pcb091.dts | 36 + arch/mips/dts/mscc,luton.dtsi | 87 ++ arch/mips/dts/mscc,ocelot.dtsi | 132 +++ arch/mips/dts/mscc,ocelot_pcb.dtsi | 37 + arch/mips/dts/ocelot_pcb120.dts | 12 + arch/mips/dts/ocelot_pcb123.dts | 12 + arch/mips/include/asm/mipsregs.h | 11 + arch/mips/lib/bootm.c | 62 +- arch/mips/mach-mscc/Kconfig | 101 ++ arch/mips/mach-mscc/Makefile | 6 + arch/mips/mach-mscc/cpu.c | 72 ++ arch/mips/mach-mscc/dram.c | 62 ++ arch/mips/mach-mscc/include/ioremap.h | 49 + arch/mips/mach-mscc/include/mach/cache.h | 36 + arch/mips/mach-mscc/include/mach/common.h | 31 + arch/mips/mach-mscc/include/mach/ddr.h | 753 +++++++++++++++ .../mips/mach-mscc/include/mach/luton/luton.h | 37 + .../include/mach/luton/luton_devcpu_gcb.h | 16 + .../include/mach/luton/luton_icpu_cfg-ref.h | 884 ++++++++++++++++++ .../include/mach/luton/luton_icpu_cfg.h | 247 +++++ .../mach-mscc/include/mach/ocelot/ocelot.h | 35 + .../include/mach/ocelot/ocelot_devcpu_gcb.h | 353 +++++++ .../include/mach/ocelot/ocelot_icpu_cfg.h | 884 ++++++++++++++++++ arch/mips/mach-mscc/include/mach/tlb.h | 65 ++ arch/mips/mach-mscc/lowlevel_init.S | 29 + arch/mips/mach-mscc/lowlevel_init_luton.S | 63 ++ arch/mips/mach-mscc/reset.c | 37 + board/mscc/common/board.c | 29 + board/mscc/luton/Kconfig | 14 + board/mscc/luton/Makefile | 4 + board/mscc/luton/luton.c | 14 + board/mscc/ocelot/Kconfig | 24 + board/mscc/ocelot/Makefile | 5 + board/mscc/ocelot/ocelot.c | 38 + configs/mscc_luton_defconfig | 66 ++ configs/mscc_ocelot_defconfig | 57 ++ configs/mscc_ocelot_pcb120_defconfig | 56 ++ include/configs/vcoreiii.h | 72 ++ 41 files changed, 4515 insertions(+), 30 deletions(-) create mode 100644 arch/mips/dts/luton_pcb091.dts create mode 100644 arch/mips/dts/mscc,luton.dtsi create mode 100644 arch/mips/dts/mscc,ocelot.dtsi create mode 100644 arch/mips/dts/mscc,ocelot_pcb.dtsi create mode 100644 arch/mips/dts/ocelot_pcb120.dts create mode 100644 arch/mips/dts/ocelot_pcb123.dts create mode 100644 arch/mips/mach-mscc/Kconfig create mode 100644 arch/mips/mach-mscc/Makefile create mode 100644 arch/mips/mach-mscc/cpu.c create mode 100644 arch/mips/mach-mscc/dram.c create mode 100644 arch/mips/mach-mscc/include/ioremap.h create mode 100644 arch/mips/mach-mscc/include/mach/cache.h create mode 100644 arch/mips/mach-mscc/include/mach/common.h create mode 100644 arch/mips/mach-mscc/include/mach/ddr.h create mode 100644 arch/mips/mach-mscc/include/mach/luton/luton.h create mode 100644 arch/mips/mach-mscc/include/mach/luton/luton_devcpu_gcb.h create mode 100644 arch/mips/mach-mscc/include/mach/luton/luton_icpu_cfg-ref.h create mode 100644 arch/mips/mach-mscc/include/mach/luton/luton_icpu_cfg.h create mode 100644 arch/mips/mach-mscc/include/mach/ocelot/ocelot.h create mode 100644 arch/mips/mach-mscc/include/mach/ocelot/ocelot_devcpu_gcb.h create mode 100644 arch/mips/mach-mscc/include/mach/ocelot/ocelot_icpu_cfg.h create mode 100644 arch/mips/mach-mscc/include/mach/tlb.h create mode 100644 arch/mips/mach-mscc/lowlevel_init.S create mode 100644 arch/mips/mach-mscc/lowlevel_init_luton.S create mode 100644 arch/mips/mach-mscc/reset.c create mode 100644 board/mscc/common/board.c create mode 100644 board/mscc/luton/Kconfig create mode 100644 board/mscc/luton/Makefile create mode 100644 board/mscc/luton/luton.c create mode 100644 board/mscc/ocelot/Kconfig create mode 100644 board/mscc/ocelot/Makefile create mode 100644 board/mscc/ocelot/ocelot.c create mode 100644 configs/mscc_luton_defconfig create mode 100644 configs/mscc_ocelot_defconfig create mode 100644 configs/mscc_ocelot_pcb120_defconfig create mode 100644 include/configs/vcoreiii.h -- 2.19.0