Message ID | tencent_F76EB8D731C521C18D5D7C4F8229DAA58E08@qq.com (mailing list archive) |
---|---|
Headers | show |
Series | riscv: add initial support for Canaan Kendryte K230 | expand |
On Sat, 23 Mar 2024 05:09:42 PDT (-0700), cyy@cyyself.name wrote: > K230 is an ideal chip for RISC-V Vector 1.0 evaluation now. Add initial > support for it to allow more people to participate in building drivers > to mainline for it. > > This kernel has been tested upon factory SDK [1] with > k230_evb_only_linux_defconfig and patched mainline opensbi [2] to skip > locked pmp and successfully booted to busybox on initrd with this log [3]. > > [1] https://github.com/kendryte/k230_sdk > [2] https://github.com/cyyself/opensbi/tree/k230 > [3] https://gist.github.com/cyyself/b9445f38cc3ba1094924bd41c9086176 > > Changes since v5: > - Deprecate SOC_CANAAN and use SOC_CANAAN_K210 for K210 SoCs > - Modify existing K210 drivers depends on SOC_CANAAN_K210 symbol > - Reword dts commit message > - Modify dts to use Full 512MB memory > - Rebase to linux mainline master > > Changes since v4: > - Reword commit message on dts that the B-ext version of c908 is 1.0 rather > than 1.0-rc1 > > v4: https://lore.kernel.org/linux-riscv/tencent_587730262984A011834F42D0563BC6B10405@qq.com/ > > Changes since v3: > - Refactor Kconfig.soc which uses ARCH_CANAAN for regular Canaan SoCs and > rename SOC_CANAAN to SOC_CANAAN_K210 for K210 in patch [5/7] > - Sort dt-binding stings on Cannan SoCs in alphanumerical order > > v3: https://lore.kernel.org/linux-riscv/tencent_BB2364BBF1812F4E304F7BDDD11E57356605@qq.com/ > > Changes since v2: > - Add MIT License to dts file > - Sort dt-binding stings in alphanumerical order > - Sort filename in dts Makefile in alphanumerical order > - Rename canmv-k230.dts to k230-canmv.dts > > v2: https://lore.kernel.org/linux-riscv/tencent_64A9B4B31C2D70D5633042461AC9F80C0509@qq.com/ > > Changes since v1: > - Patch dt-bindings in clint and plic > - Use enum in K230 compatible dt bindings > - Fix dts to pass `make dtbs_check` > - Add more details in commit message > > v1: https://lore.kernel.org/linux-riscv/tencent_E15F8FE0B6769E6338AE690C7F4844A31706@qq.com/ > > Yangyu Chen (11): > dt-bindings: riscv: Add T-HEAD C908 compatible > dt-bindings: add Canaan K230 boards compatible strings > dt-bindings: timer: Add Canaan K230 CLINT > dt-bindings: interrupt-controller: Add Canaan K230 PLIC > riscv: Kconfig.socs: Split ARCH_CANAAN and SOC_CANAAN_K210 > soc: canaan: Deprecate SOC_CANAAN and use SOC_CANAAN_K210 for K210 > clk: k210: Deprecate SOC_CANAAN and use SOC_CANAAN_K210 > pinctrl: k210: Deprecate SOC_CANAAN and use SOC_CANAAN_K210 > reset: k210: Deprecate SOC_CANAAN and use SOC_CANAAN_K210 > riscv: dts: add initial canmv-k230 and k230-evb dts > riscv: config: enable ARCH_CANAAN in defconfig > > .../sifive,plic-1.0.0.yaml | 1 + > .../devicetree/bindings/riscv/canaan.yaml | 8 +- > .../devicetree/bindings/riscv/cpus.yaml | 1 + > .../bindings/timer/sifive,clint.yaml | 1 + > arch/riscv/Kconfig.socs | 8 +- > arch/riscv/Makefile | 2 +- > arch/riscv/boot/dts/canaan/Makefile | 2 + > arch/riscv/boot/dts/canaan/k230-canmv.dts | 24 +++ > arch/riscv/boot/dts/canaan/k230-evb.dts | 24 +++ > arch/riscv/boot/dts/canaan/k230.dtsi | 140 ++++++++++++++++++ > arch/riscv/configs/defconfig | 1 + > arch/riscv/configs/nommu_k210_defconfig | 3 +- > .../riscv/configs/nommu_k210_sdcard_defconfig | 3 +- > drivers/clk/Kconfig | 4 +- > drivers/pinctrl/Kconfig | 4 +- > drivers/reset/Kconfig | 4 +- > drivers/soc/Makefile | 2 +- > drivers/soc/canaan/Kconfig | 4 +- > 18 files changed, 220 insertions(+), 16 deletions(-) > create mode 100644 arch/riscv/boot/dts/canaan/k230-canmv.dts > create mode 100644 arch/riscv/boot/dts/canaan/k230-evb.dts > create mode 100644 arch/riscv/boot/dts/canaan/k230.dtsi > > base-commit: 8e938e39866920ddc266898e6ae1fffc5c8f51aa Acked-by: Palmer Dabbelt <palmer@rivosinc.com>