From patchwork Mon Feb 10 22:09:41 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Sverdlin X-Patchwork-Id: 13969277 Received: from mail-wm1-f44.google.com (mail-wm1-f44.google.com [209.85.128.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EC00024CEEB for ; Mon, 10 Feb 2025 22:10:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739225407; cv=none; b=e3B2yv/Yrvfvfxb2W2lzCDkyPLfPXgOiHXkmkTs7FrgfBcovmKS/PyauutdkBMOc3zkVv+LFiE4s/Xx4wYPFX3/Exv9gKP9rdWBS30TNTQPdEirkLltHWGRIJyzwnp6qAYU0hWelZ7cEoKMbwnC8uXk9NClHHKscHmvAAiDMbNU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739225407; c=relaxed/simple; bh=aVmMv3gSg+myp9H8JiotQvb+dp0CF+XuguseRfSLLR0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=rEHtC5T6hSxXsxjIlnGPVk5AqCYL9GZqN4uOCex5HWmk9lW3FAduT+ekQItT+ZX8eQkfXOYLTw5BhSlqoE7N5OqNFwNTQ4UZN/Y2ZNaIIygf281panhkIqn90+JuMjkwnUfCg8lngLmjyBQX4oE9D7FNgX1BLxhUHkOqnFXXooc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=kQm52FR/; arc=none smtp.client-ip=209.85.128.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="kQm52FR/" Received: by mail-wm1-f44.google.com with SMTP id 5b1f17b1804b1-43946b5920cso8754425e9.1 for ; Mon, 10 Feb 2025 14:10:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739225403; x=1739830203; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ycacqOivXCpuiiDgsNxx0+xAkMZRAd46lqRqXyDUmhE=; b=kQm52FR/xF3OuoNwmL49/MBpqLBOPe30GtZ94QT1J6b5cjpkH371A9zeLBQaphSLd1 G9Z30HODrp9OBTubyYE/NyXtk/AySVTdHAIAWrhWMSX0O0WeGCt9ntjbD2KgRRDqNcYg Dv6vGOT2e1ru2fB8LY+CbLsEwvsWAREKlX0DjZ+NKde827Tvj6coFw9hu7IlDHHpqiYn pqETHNVO7iiEtbjkzEhogKh9YXf+PwI7+hd2qauMklwe0DEa0XeQ+G9bQHasW0HCHi1g wHUiR9B1yrWY2xcJ0wzc3iMeOACs4QRuUsfP2SRMZq1sltd07oqr72JIADg9IqTfP/4s 7ZSw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739225403; x=1739830203; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ycacqOivXCpuiiDgsNxx0+xAkMZRAd46lqRqXyDUmhE=; b=H3PovjGbx6JYjIprKLI/UBfq5nmHehGh21e7NMDDPmDqpDMiXs4QrexjcngAoSKwZL kduL1Zhu6l3Yxcfi/rYoza+60+p4jQ+oCCA/lXW1gY8mkf70bputZtGyIOmjIaVdHucf iKhC90ci/eH1UPrzQrBI9w06dJmdqdDDayDWx5+VUUJoDmkodUD9pYgzgP7j7uObL551 t4NwBTCK7Ww13GR8DVLRhrcwo5fAF6mAXwD/kYwzH4qb4EUaTSRKq+dnKzuI+hS6FHC8 DgAO8/uVfaxbx4y+leGFm/S7kBM6g2/H1aunlTuYkpuNzujtelNsYEHcMJ/9uf2SBQKj VgxA== X-Gm-Message-State: AOJu0YxbdhvfLyUb27lBy/Cvj4+b8Lr6HB9Kj2gj5irKqJBF5flAXwJe lgSMRsfhqPOIb581SruH3v0g/lhQ2m7XtJdcpYVXWlunBLtpSm7ysI0Vkh0T X-Gm-Gg: ASbGncvbxeNi+VdLvlt4i2jzgFms+J5mogBMvK75k7Doi5DKACfvEqWAtEC4l5r2REy shuXUz0DSLxd413b0O8z+kex5h7Xt/STb4xoVzxIN8/KDtfg2ENFWGCwdyQXrdCH06fdIydUwbH FTg4O4GCxW3x8aH4nRBO6y6F7PKWTZsdSmJcsOhpQM7IUxbsVvb+d83XM3PbykWwhSdV9X9WY6u o6q8ectYTgt6kkN5IowiyREP8MK88jkkzOQeWG3UR+32lXu4C9db+UwePASRg7c1rbzHHAG7zFW COjlejVP/iqXAD8o7a7QRn7+WD9L X-Google-Smtp-Source: AGHT+IF0vxhyYmoHMueP8NN7Qu1KBzOLRXRa5VzXyW6nA9poUPt4CKv2oJx28349+0Ii2IhZoSFc5Q== X-Received: by 2002:a05:600c:1911:b0:439:34d3:63c0 with SMTP id 5b1f17b1804b1-43934d365ebmr99807915e9.16.1739225402816; Mon, 10 Feb 2025 14:10:02 -0800 (PST) Received: from giga-mm.. ([2a02:1210:861b:6f00:82ee:73ff:feb8:99e3]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38dbde1dfaesm13443450f8f.90.2025.02.10.14.10.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 10 Feb 2025 14:10:02 -0800 (PST) From: Alexander Sverdlin To: soc@lists.linux.dev Cc: Alexander Sverdlin , Chen Wang , Inochi Amaoto , linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, Haylen Chu , linux-arm-kernel@lists.infradead.org, Paul Walmsley , Palmer Dabbelt , Albert Ou , Arnd Bergmann , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Jisheng Zhang , Chao Wei Subject: [PATCH v2 1/7] riscv: dts: sophgo: cv18xx: Move RiscV-specific part into SoCs' .dtsi files Date: Mon, 10 Feb 2025 23:09:41 +0100 Message-ID: <20250210220951.1248533-2-alexander.sverdlin@gmail.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250210220951.1248533-1-alexander.sverdlin@gmail.com> References: <20250210220951.1248533-1-alexander.sverdlin@gmail.com> Precedence: bulk X-Mailing-List: soc@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Make the peripheral device tree re-usable on ARM64 platform by moving CPU core and interrupt controllers' parts into the respective per-SoC .dtsi files. Add SOC_PERIPHERAL_IRQ() macro which explicitly maps peripheral nubering into "plic" interrupt-controller numbering. Have a nice refactoring side-effect that "plic" and "clint" "compatible" property is not specified outside of the corresponding device itself. Signed-off-by: Alexander Sverdlin --- Changelog: v2: - instead of carving out peripherals' part, carve out ARCH-specifics (CPU core, interrupt controllers) and spread them among 3 SoC .dtsi files which included cv18xx.dtsi; - define a label for the "soc" node and use it in the newly introduced DTs; arch/riscv/boot/dts/sophgo/cv1800b.dtsi | 64 ++++++++++++--- arch/riscv/boot/dts/sophgo/cv1812h.dtsi | 64 ++++++++++++--- arch/riscv/boot/dts/sophgo/cv181x.dtsi | 2 +- arch/riscv/boot/dts/sophgo/cv18xx-cpu.dtsi | 57 ++++++++++++++ arch/riscv/boot/dts/sophgo/cv18xx.dtsi | 91 ++++++---------------- arch/riscv/boot/dts/sophgo/sg2002.dtsi | 64 ++++++++++++--- 6 files changed, 240 insertions(+), 102 deletions(-) create mode 100644 arch/riscv/boot/dts/sophgo/cv18xx-cpu.dtsi diff --git a/arch/riscv/boot/dts/sophgo/cv1800b.dtsi b/arch/riscv/boot/dts/sophgo/cv1800b.dtsi index aa1f5df100f0..eef2884b36f9 100644 --- a/arch/riscv/boot/dts/sophgo/cv1800b.dtsi +++ b/arch/riscv/boot/dts/sophgo/cv1800b.dtsi @@ -3,6 +3,8 @@ * Copyright (C) 2023 Jisheng Zhang */ +#define SOC_PERIPHERAL_IRQ(nr) ((nr) + 16) + #include #include "cv18xx.dtsi" @@ -14,22 +16,62 @@ memory@80000000 { reg = <0x80000000 0x4000000>; }; - soc { - pinctrl: pinctrl@3001000 { - compatible = "sophgo,cv1800b-pinctrl"; - reg = <0x03001000 0x1000>, - <0x05027000 0x1000>; - reg-names = "sys", "rtc"; + cpus: cpus { + #address-cells = <1>; + #size-cells = <0>; + timebase-frequency = <25000000>; + + cpu0: cpu@0 { + compatible = "thead,c906", "riscv"; + device_type = "cpu"; + reg = <0>; + d-cache-block-size = <64>; + d-cache-sets = <512>; + d-cache-size = <65536>; + i-cache-block-size = <64>; + i-cache-sets = <128>; + i-cache-size = <32768>; + mmu-type = "riscv,sv39"; + riscv,isa = "rv64imafdc"; + riscv,isa-base = "rv64i"; + riscv,isa-extensions = "i", "m", "a", "f", "d", "c", "zicntr", "zicsr", + "zifencei", "zihpm"; + + cpu0_intc: interrupt-controller { + compatible = "riscv,cpu-intc"; + interrupt-controller; + #interrupt-cells = <1>; + }; }; }; }; -&plic { - compatible = "sophgo,cv1800b-plic", "thead,c900-plic"; -}; +&soc { + interrupt-parent = <&plic>; + dma-noncoherent; -&clint { - compatible = "sophgo,cv1800b-clint", "thead,c900-clint"; + pinctrl: pinctrl@3001000 { + compatible = "sophgo,cv1800b-pinctrl"; + reg = <0x03001000 0x1000>, + <0x05027000 0x1000>; + reg-names = "sys", "rtc"; + }; + + plic: interrupt-controller@70000000 { + compatible = "sophgo,cv1800b-plic", "thead,c900-plic"; + reg = <0x70000000 0x4000000>; + interrupts-extended = <&cpu0_intc 11>, <&cpu0_intc 9>; + interrupt-controller; + #address-cells = <0>; + #interrupt-cells = <2>; + riscv,ndev = <101>; + }; + + clint: timer@74000000 { + compatible = "sophgo,cv1800b-clint", "thead,c900-clint"; + reg = <0x74000000 0x10000>; + interrupts-extended = <&cpu0_intc 3>, <&cpu0_intc 7>; + }; }; &clk { diff --git a/arch/riscv/boot/dts/sophgo/cv1812h.dtsi b/arch/riscv/boot/dts/sophgo/cv1812h.dtsi index 8a1b95c5116b..54f7e229bcd8 100644 --- a/arch/riscv/boot/dts/sophgo/cv1812h.dtsi +++ b/arch/riscv/boot/dts/sophgo/cv1812h.dtsi @@ -3,6 +3,8 @@ * Copyright (C) 2023 Inochi Amaoto */ +#define SOC_PERIPHERAL_IRQ(nr) ((nr) + 16) + #include #include #include "cv18xx.dtsi" @@ -16,22 +18,62 @@ memory@80000000 { reg = <0x80000000 0x10000000>; }; - soc { - pinctrl: pinctrl@3001000 { - compatible = "sophgo,cv1812h-pinctrl"; - reg = <0x03001000 0x1000>, - <0x05027000 0x1000>; - reg-names = "sys", "rtc"; + cpus: cpus { + #address-cells = <1>; + #size-cells = <0>; + timebase-frequency = <25000000>; + + cpu0: cpu@0 { + compatible = "thead,c906", "riscv"; + device_type = "cpu"; + reg = <0>; + d-cache-block-size = <64>; + d-cache-sets = <512>; + d-cache-size = <65536>; + i-cache-block-size = <64>; + i-cache-sets = <128>; + i-cache-size = <32768>; + mmu-type = "riscv,sv39"; + riscv,isa = "rv64imafdc"; + riscv,isa-base = "rv64i"; + riscv,isa-extensions = "i", "m", "a", "f", "d", "c", "zicntr", "zicsr", + "zifencei", "zihpm"; + + cpu0_intc: interrupt-controller { + compatible = "riscv,cpu-intc"; + interrupt-controller; + #interrupt-cells = <1>; + }; }; }; }; -&plic { - compatible = "sophgo,cv1812h-plic", "thead,c900-plic"; -}; +&soc { + interrupt-parent = <&plic>; + dma-noncoherent; -&clint { - compatible = "sophgo,cv1812h-clint", "thead,c900-clint"; + pinctrl: pinctrl@3001000 { + compatible = "sophgo,cv1812h-pinctrl"; + reg = <0x03001000 0x1000>, + <0x05027000 0x1000>; + reg-names = "sys", "rtc"; + }; + + plic: interrupt-controller@70000000 { + compatible = "sophgo,cv1812h-plic", "thead,c900-plic"; + reg = <0x70000000 0x4000000>; + interrupts-extended = <&cpu0_intc 11>, <&cpu0_intc 9>; + interrupt-controller; + #address-cells = <0>; + #interrupt-cells = <2>; + riscv,ndev = <101>; + }; + + clint: timer@74000000 { + compatible = "sophgo,cv1812h-clint", "thead,c900-clint"; + reg = <0x74000000 0x10000>; + interrupts-extended = <&cpu0_intc 3>, <&cpu0_intc 7>; + }; }; &clk { diff --git a/arch/riscv/boot/dts/sophgo/cv181x.dtsi b/arch/riscv/boot/dts/sophgo/cv181x.dtsi index 5fd14dd1b14f..bbdb30653e9a 100644 --- a/arch/riscv/boot/dts/sophgo/cv181x.dtsi +++ b/arch/riscv/boot/dts/sophgo/cv181x.dtsi @@ -11,7 +11,7 @@ soc { emmc: mmc@4300000 { compatible = "sophgo,cv1800b-dwcmshc"; reg = <0x4300000 0x1000>; - interrupts = <34 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; clocks = <&clk CLK_AXI4_EMMC>, <&clk CLK_EMMC>; clock-names = "core", "bus"; diff --git a/arch/riscv/boot/dts/sophgo/cv18xx-cpu.dtsi b/arch/riscv/boot/dts/sophgo/cv18xx-cpu.dtsi new file mode 100644 index 000000000000..a68d61131efb --- /dev/null +++ b/arch/riscv/boot/dts/sophgo/cv18xx-cpu.dtsi @@ -0,0 +1,57 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright (C) 2023 Jisheng Zhang + * Copyright (C) 2023 Inochi Amaoto + */ + +#define SOC_PERIPHERAL_IRQ(nr) ((nr) + 16) + +/ { + cpus: cpus { + #address-cells = <1>; + #size-cells = <0>; + timebase-frequency = <25000000>; + + cpu0: cpu@0 { + compatible = "thead,c906", "riscv"; + device_type = "cpu"; + reg = <0>; + d-cache-block-size = <64>; + d-cache-sets = <512>; + d-cache-size = <65536>; + i-cache-block-size = <64>; + i-cache-sets = <128>; + i-cache-size = <32768>; + mmu-type = "riscv,sv39"; + riscv,isa = "rv64imafdc"; + riscv,isa-base = "rv64i"; + riscv,isa-extensions = "i", "m", "a", "f", "d", "c", "zicntr", "zicsr", + "zifencei", "zihpm"; + + cpu0_intc: interrupt-controller { + compatible = "riscv,cpu-intc"; + interrupt-controller; + #interrupt-cells = <1>; + }; + }; + }; +}; + +&soc { + interrupt-parent = <&plic>; + dma-noncoherent; + + plic: interrupt-controller@70000000 { + reg = <0x70000000 0x4000000>; + interrupts-extended = <&cpu0_intc 11>, <&cpu0_intc 9>; + interrupt-controller; + #address-cells = <0>; + #interrupt-cells = <2>; + riscv,ndev = <101>; + }; + + clint: timer@74000000 { + reg = <0x74000000 0x10000>; + interrupts-extended = <&cpu0_intc 3>, <&cpu0_intc 7>; + }; +}; diff --git a/arch/riscv/boot/dts/sophgo/cv18xx.dtsi b/arch/riscv/boot/dts/sophgo/cv18xx.dtsi index c18822ec849f..62c1464a0490 100644 --- a/arch/riscv/boot/dts/sophgo/cv18xx.dtsi +++ b/arch/riscv/boot/dts/sophgo/cv18xx.dtsi @@ -12,47 +12,16 @@ / { #address-cells = <1>; #size-cells = <1>; - cpus: cpus { - #address-cells = <1>; - #size-cells = <0>; - timebase-frequency = <25000000>; - - cpu0: cpu@0 { - compatible = "thead,c906", "riscv"; - device_type = "cpu"; - reg = <0>; - d-cache-block-size = <64>; - d-cache-sets = <512>; - d-cache-size = <65536>; - i-cache-block-size = <64>; - i-cache-sets = <128>; - i-cache-size = <32768>; - mmu-type = "riscv,sv39"; - riscv,isa = "rv64imafdc"; - riscv,isa-base = "rv64i"; - riscv,isa-extensions = "i", "m", "a", "f", "d", "c", "zicntr", "zicsr", - "zifencei", "zihpm"; - - cpu0_intc: interrupt-controller { - compatible = "riscv,cpu-intc"; - interrupt-controller; - #interrupt-cells = <1>; - }; - }; - }; - osc: oscillator { compatible = "fixed-clock"; clock-output-names = "osc_25m"; #clock-cells = <0>; }; - soc { + soc: soc { compatible = "simple-bus"; - interrupt-parent = <&plic>; #address-cells = <1>; #size-cells = <1>; - dma-noncoherent; ranges; clk: clock-controller@3002000 { @@ -75,7 +44,7 @@ porta: gpio-controller@0 { reg = <0>; interrupt-controller; #interrupt-cells = <2>; - interrupts = <60 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; }; }; @@ -93,7 +62,7 @@ portb: gpio-controller@0 { reg = <0>; interrupt-controller; #interrupt-cells = <2>; - interrupts = <61 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; }; }; @@ -111,7 +80,7 @@ portc: gpio-controller@0 { reg = <0>; interrupt-controller; #interrupt-cells = <2>; - interrupts = <62 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; }; }; @@ -129,7 +98,7 @@ portd: gpio-controller@0 { reg = <0>; interrupt-controller; #interrupt-cells = <2>; - interrupts = <63 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; }; }; @@ -137,7 +106,7 @@ saradc: adc@30f0000 { compatible = "sophgo,cv1800b-saradc"; reg = <0x030f0000 0x1000>; clocks = <&clk CLK_SARADC>; - interrupts = <100 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; #address-cells = <1>; #size-cells = <0>; status = "disabled"; @@ -162,7 +131,7 @@ i2c0: i2c@4000000 { #size-cells = <0>; clocks = <&clk CLK_I2C>, <&clk CLK_APB_I2C0>; clock-names = "ref", "pclk"; - interrupts = <49 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; status = "disabled"; }; @@ -173,7 +142,7 @@ i2c1: i2c@4010000 { #size-cells = <0>; clocks = <&clk CLK_I2C>, <&clk CLK_APB_I2C1>; clock-names = "ref", "pclk"; - interrupts = <50 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; status = "disabled"; }; @@ -184,7 +153,7 @@ i2c2: i2c@4020000 { #size-cells = <0>; clocks = <&clk CLK_I2C>, <&clk CLK_APB_I2C2>; clock-names = "ref", "pclk"; - interrupts = <51 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; status = "disabled"; }; @@ -195,7 +164,7 @@ i2c3: i2c@4030000 { #size-cells = <0>; clocks = <&clk CLK_I2C>, <&clk CLK_APB_I2C3>; clock-names = "ref", "pclk"; - interrupts = <52 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; status = "disabled"; }; @@ -206,14 +175,14 @@ i2c4: i2c@4040000 { #size-cells = <0>; clocks = <&clk CLK_I2C>, <&clk CLK_APB_I2C4>; clock-names = "ref", "pclk"; - interrupts = <53 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; status = "disabled"; }; uart0: serial@4140000 { compatible = "snps,dw-apb-uart"; reg = <0x04140000 0x100>; - interrupts = <44 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; clocks = <&clk CLK_UART0>, <&clk CLK_APB_UART0>; clock-names = "baudclk", "apb_pclk"; reg-shift = <2>; @@ -224,7 +193,7 @@ uart0: serial@4140000 { uart1: serial@4150000 { compatible = "snps,dw-apb-uart"; reg = <0x04150000 0x100>; - interrupts = <45 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; clocks = <&clk CLK_UART1>, <&clk CLK_APB_UART1>; clock-names = "baudclk", "apb_pclk"; reg-shift = <2>; @@ -235,7 +204,7 @@ uart1: serial@4150000 { uart2: serial@4160000 { compatible = "snps,dw-apb-uart"; reg = <0x04160000 0x100>; - interrupts = <46 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; clocks = <&clk CLK_UART2>, <&clk CLK_APB_UART2>; clock-names = "baudclk", "apb_pclk"; reg-shift = <2>; @@ -246,7 +215,7 @@ uart2: serial@4160000 { uart3: serial@4170000 { compatible = "snps,dw-apb-uart"; reg = <0x04170000 0x100>; - interrupts = <47 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; clocks = <&clk CLK_UART3>, <&clk CLK_APB_UART3>; clock-names = "baudclk", "apb_pclk"; reg-shift = <2>; @@ -261,7 +230,7 @@ spi0: spi@4180000 { #size-cells = <0>; clocks = <&clk CLK_SPI>, <&clk CLK_APB_SPI0>; clock-names = "ssi_clk", "pclk"; - interrupts = <54 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; status = "disabled"; }; @@ -272,7 +241,7 @@ spi1: spi@4190000 { #size-cells = <0>; clocks = <&clk CLK_SPI>, <&clk CLK_APB_SPI1>; clock-names = "ssi_clk", "pclk"; - interrupts = <55 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; status = "disabled"; }; @@ -283,7 +252,7 @@ spi2: spi@41a0000 { #size-cells = <0>; clocks = <&clk CLK_SPI>, <&clk CLK_APB_SPI2>; clock-names = "ssi_clk", "pclk"; - interrupts = <56 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; status = "disabled"; }; @@ -294,14 +263,14 @@ spi3: spi@41b0000 { #size-cells = <0>; clocks = <&clk CLK_SPI>, <&clk CLK_APB_SPI3>; clock-names = "ssi_clk", "pclk"; - interrupts = <57 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; status = "disabled"; }; uart4: serial@41c0000 { compatible = "snps,dw-apb-uart"; reg = <0x041c0000 0x100>; - interrupts = <48 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; clocks = <&clk CLK_UART4>, <&clk CLK_APB_UART4>; clock-names = "baudclk", "apb_pclk"; reg-shift = <2>; @@ -312,7 +281,7 @@ uart4: serial@41c0000 { sdhci0: mmc@4310000 { compatible = "sophgo,cv1800b-dwcmshc"; reg = <0x4310000 0x1000>; - interrupts = <36 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; clocks = <&clk CLK_AXI4_SD0>, <&clk CLK_SD0>; clock-names = "core", "bus"; @@ -322,7 +291,7 @@ sdhci0: mmc@4310000 { sdhci1: mmc@4320000 { compatible = "sophgo,cv1800b-dwcmshc"; reg = <0x4320000 0x1000>; - interrupts = <38 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; clocks = <&clk CLK_AXI4_SD1>, <&clk CLK_SD1>; clock-names = "core", "bus"; @@ -332,7 +301,7 @@ sdhci1: mmc@4320000 { dmac: dma-controller@4330000 { compatible = "snps,axi-dma-1.01a"; reg = <0x04330000 0x1000>; - interrupts = <29 IRQ_TYPE_LEVEL_HIGH>; + interrupts = ; clocks = <&clk CLK_SDMA_AXI>, <&clk CLK_SDMA_AXI>; clock-names = "core-clk", "cfgr-clk"; #dma-cells = <1>; @@ -344,19 +313,5 @@ dmac: dma-controller@4330000 { snps,data-width = <4>; status = "disabled"; }; - - plic: interrupt-controller@70000000 { - reg = <0x70000000 0x4000000>; - interrupts-extended = <&cpu0_intc 11>, <&cpu0_intc 9>; - interrupt-controller; - #address-cells = <0>; - #interrupt-cells = <2>; - riscv,ndev = <101>; - }; - - clint: timer@74000000 { - reg = <0x74000000 0x10000>; - interrupts-extended = <&cpu0_intc 3>, <&cpu0_intc 7>; - }; }; }; diff --git a/arch/riscv/boot/dts/sophgo/sg2002.dtsi b/arch/riscv/boot/dts/sophgo/sg2002.dtsi index 7f79de33163c..732d0e72cf13 100644 --- a/arch/riscv/boot/dts/sophgo/sg2002.dtsi +++ b/arch/riscv/boot/dts/sophgo/sg2002.dtsi @@ -3,6 +3,8 @@ * Copyright (C) 2024 Thomas Bonnefille */ +#define SOC_PERIPHERAL_IRQ(nr) ((nr) + 16) + #include #include #include "cv18xx.dtsi" @@ -16,22 +18,62 @@ memory@80000000 { reg = <0x80000000 0x10000000>; }; - soc { - pinctrl: pinctrl@3001000 { - compatible = "sophgo,sg2002-pinctrl"; - reg = <0x03001000 0x1000>, - <0x05027000 0x1000>; - reg-names = "sys", "rtc"; + cpus: cpus { + #address-cells = <1>; + #size-cells = <0>; + timebase-frequency = <25000000>; + + cpu0: cpu@0 { + compatible = "thead,c906", "riscv"; + device_type = "cpu"; + reg = <0>; + d-cache-block-size = <64>; + d-cache-sets = <512>; + d-cache-size = <65536>; + i-cache-block-size = <64>; + i-cache-sets = <128>; + i-cache-size = <32768>; + mmu-type = "riscv,sv39"; + riscv,isa = "rv64imafdc"; + riscv,isa-base = "rv64i"; + riscv,isa-extensions = "i", "m", "a", "f", "d", "c", "zicntr", "zicsr", + "zifencei", "zihpm"; + + cpu0_intc: interrupt-controller { + compatible = "riscv,cpu-intc"; + interrupt-controller; + #interrupt-cells = <1>; + }; }; }; }; -&plic { - compatible = "sophgo,sg2002-plic", "thead,c900-plic"; -}; +&soc { + interrupt-parent = <&plic>; + dma-noncoherent; -&clint { - compatible = "sophgo,sg2002-clint", "thead,c900-clint"; + pinctrl: pinctrl@3001000 { + compatible = "sophgo,sg2002-pinctrl"; + reg = <0x03001000 0x1000>, + <0x05027000 0x1000>; + reg-names = "sys", "rtc"; + }; + + plic: interrupt-controller@70000000 { + compatible = "sophgo,sg2002-plic", "thead,c900-plic"; + reg = <0x70000000 0x4000000>; + interrupts-extended = <&cpu0_intc 11>, <&cpu0_intc 9>; + interrupt-controller; + #address-cells = <0>; + #interrupt-cells = <2>; + riscv,ndev = <101>; + }; + + clint: timer@74000000 { + compatible = "sophgo,sg2002-clint", "thead,c900-clint"; + reg = <0x74000000 0x10000>; + interrupts-extended = <&cpu0_intc 3>, <&cpu0_intc 7>; + }; }; &clk { From patchwork Mon Feb 10 22:09:42 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Sverdlin X-Patchwork-Id: 13969278 Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1939A24E4A4 for ; Mon, 10 Feb 2025 22:10:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739225407; cv=none; b=uShSXAKkMJtQE7iMrQBBzq2cH9AZZ1S5JNqMH/b/GJN/DrcXJT7lKUlzdXN40lMTO0MfELmwjhaO06Mh91oOZZSIoXM8VjTECB50QXy+FatHETS2BOMxMV5IiOlMjVvQgNJDqdqXAAsNlwUNoUZIUCTMgh5RahzHPkBHsXwoUdo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739225407; c=relaxed/simple; bh=lAvoyba9xFl9uwuh9s7txaT9iZdnZ+MqsCE4z3EFFOs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=RyFHczLP8uk7nXXbNSTC4BZTeMqieQTPwzdQb4fpKpYLxvpSeDB1vyNh++REV6oGnzRH1fo+vflyldR3O5yzEpcLXx4C9656V62DlPATLSHCxfRrVlbKxNjlBIZfnf46J+LE1XC0jgITJv1PSZi0a8NDx45k6ITtrh1q7TzGw4s= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=h0+E0XeI; arc=none smtp.client-ip=209.85.128.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="h0+E0XeI" Received: by mail-wm1-f42.google.com with SMTP id 5b1f17b1804b1-4393dc02b78so12146105e9.3 for ; Mon, 10 Feb 2025 14:10:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739225404; x=1739830204; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=VTebZHS4gk5PFvDqlcXeMybwJIw7UkV3r+TMXWTUvHQ=; b=h0+E0XeI3Qc58g5QpDdcUxcY1La6BPbayNcSIjMbJ9gbYAkkr4bbypR9TUejxXTsF+ RrPoKGyOOyswi0cs/BsFSGvm0vATZQXa+rgLzYm1CeQRDgXux6iS4w/reAN4Md1vxn6S SqCMUsLRGkvfFeVrdrV4qtpMOxUGFOUDTSf7fK76bfcEFAJg/uCMvHGEqktRbAsuHyw5 9UvuldHEN2xpiNklPBd8yYcSlSE0VA9CnCjVPb5vHS2mKzJ5UpZiTGUi5r8h1Aizofzg fb5jk9qgd6z2TJNEIUa4DrE2VHkJodCGhDW4UIdJ28KoF1RHwmBZNN0AcFBDRt2FRNL5 E/iQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739225404; x=1739830204; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=VTebZHS4gk5PFvDqlcXeMybwJIw7UkV3r+TMXWTUvHQ=; b=dxmOeBvCSH/0C627yBtn7c7eLFm+Nktqo/C8Lay3iwANnqP0ZpqqybSr3B0+O3MC0y TMqsAiIA2OTqfuFO89pJefXDc5J7luK5NShj0SG7i+Gp7I2Ve0Js7GHptF8HfjThHVcm OXu9wZTCuLFHhob7FAKF0SYVd5wkQeoiZCD1k/aisVLLfxD7vUsov/o9RzbthblanEA+ KbCk5hjcPu06KqWxop1QeF1ekRAPVMlWgSGf/dhqYcRFUmcNQ+lvAUuMQtatNmtPGfv7 hCVajaX2oJTmJJuBn05xFy3/CbEZqw7n6A3Sk9+XvUm48QqS+xIT6mkgLPlvzqGvMATF ItDQ== X-Gm-Message-State: AOJu0YztOfht8SCbaj0uy2PLlDNmYE/goFCBPS8XxcJ/uRkD0iPa+gto HMcDCqM+fF8EsVArVNd1rqd61ictArhB7CS8HzHuvz5BD7fYK+pEMtMepjfE X-Gm-Gg: ASbGncsqKE8Y9WajjPSf6kNgBfvtkL14YdiHJGPNNk39oRa3HMz02i+/IGDgtFxCjaP CMfq2MW+K3w9vs8T+UAEf4lT85AjX8PMHHfp3RRO760nT209ORorSvRwIV4q2V9qZ8KKKan0GKn 4gZwFNJ2E89B7IXCRJ0HCn6JZ3ZyJlSzsKnKQt1N+1iRRcNvPzwyomEoOc84QM4ER2EfYVyfzQE vNuCCvd0vP5CiSOJS+x3AE0DzOEjWEFaf7g20ccoYRw5Lp5vdFLBbZBMtdQXSsPCgt4m2U2QgxU e8SaKMGUt9zv/gbewxx4TcUpDWwz X-Google-Smtp-Source: AGHT+IFDQWvsMaFRnPlrYGf48iq281hise14mQ/LTGh9TT2T0tV9t8mYcQ5+AwVJvhksx+xbz2dF6Q== X-Received: by 2002:a5d:5f91:0:b0:38d:df05:4d9 with SMTP id ffacd0b85a97d-38de41bdfb5mr1082207f8f.43.1739225404338; Mon, 10 Feb 2025 14:10:04 -0800 (PST) Received: from giga-mm.. ([2a02:1210:861b:6f00:82ee:73ff:feb8:99e3]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38dbde1dfaesm13443450f8f.90.2025.02.10.14.10.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 10 Feb 2025 14:10:04 -0800 (PST) From: Alexander Sverdlin To: soc@lists.linux.dev Cc: Alexander Sverdlin , Jisheng Zhang , Chao Wei , Chen Wang , Inochi Amaoto , linux-pm@vger.kernel.org, linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, Haylen Chu , linux-arm-kernel@lists.infradead.org, Sebastian Reichel , Arnd Bergmann , Philipp Zabel , Rob Herring , Krzysztof Kozlowski , Conor Dooley Subject: [PATCH v2 2/7] dt-bindings: soc: sophgo: Move SoCs/boards from riscv into soc, add SG2000 Date: Mon, 10 Feb 2025 23:09:42 +0100 Message-ID: <20250210220951.1248533-3-alexander.sverdlin@gmail.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250210220951.1248533-1-alexander.sverdlin@gmail.com> References: <20250210220951.1248533-1-alexander.sverdlin@gmail.com> Precedence: bulk X-Mailing-List: soc@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Move sophgo.yaml from riscv into soc/sophgo so that it can be shared for all SoCs containing ARM cores as well. This already applies to SG2002. Add SG2000 SoC, Milk-V Duo Module 01 and Milk-V Module 01 EVB. Signed-off-by: Alexander Sverdlin Reviewed-by: Chen Wang Acked-by: Conor Dooley --- .../devicetree/bindings/{riscv => soc/sophgo}/sophgo.yaml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) rename Documentation/devicetree/bindings/{riscv => soc/sophgo}/sophgo.yaml (80%) diff --git a/Documentation/devicetree/bindings/riscv/sophgo.yaml b/Documentation/devicetree/bindings/soc/sophgo/sophgo.yaml similarity index 80% rename from Documentation/devicetree/bindings/riscv/sophgo.yaml rename to Documentation/devicetree/bindings/soc/sophgo/sophgo.yaml index a14cb10ff3f0..5d73d0ccc547 100644 --- a/Documentation/devicetree/bindings/riscv/sophgo.yaml +++ b/Documentation/devicetree/bindings/soc/sophgo/sophgo.yaml @@ -1,7 +1,7 @@ # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- -$id: http://devicetree.org/schemas/riscv/sophgo.yaml# +$id: http://devicetree.org/schemas/soc/sophgo/sophgo.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Sophgo SoC-based boards @@ -26,6 +26,11 @@ properties: - enum: - sophgo,huashan-pi - const: sophgo,cv1812h + - items: + - enum: + - milkv,duo-module-01-evb + - const: milkv,duo-module-01 + - const: sophgo,sg2000 - items: - enum: - sipeed,licheerv-nano-b From patchwork Mon Feb 10 22:09:43 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Sverdlin X-Patchwork-Id: 13969279 Received: from mail-wm1-f49.google.com (mail-wm1-f49.google.com [209.85.128.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DA3A724E4D9 for ; Mon, 10 Feb 2025 22:10:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739225409; cv=none; b=tRxU9Z35ouBt6fDAJlqSSqkwAARK3ty+mdD8SdSRSTrR9U2a/FqAWA/zWVk7JH5WD9t9sztOPhr3UGIFKeSYZWl4fxexFwq+7Pa2PbDuBF8s8dUzLUHYDJ1aYiSkbKfKz+hzCdbXXwdytYQOGy2eQUFY48K+8IZKNf8+ueRQqLQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739225409; c=relaxed/simple; bh=36wD/NQDjc3/awdDMS/pWjfJpFkfTtHE330A1WWvTgw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=W8tfRXiKn2rMQGi0f8McB+VuCrvZNWpfS1S2fA8wp5MNA4p55HQ30bC5laLdm8VcQLHpDC9AwC9a3TDmJ88+EUAdvJ+vzVMZQFomaN8vTu2joihT+QQj9iR9Tiyk0H81ex3OrmO2pCjvdHT/bw4GY/wS/LDOv0u/eRaAV936FUg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Aw9cSCzm; arc=none smtp.client-ip=209.85.128.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Aw9cSCzm" Received: by mail-wm1-f49.google.com with SMTP id 5b1f17b1804b1-43937cf2131so14605155e9.2 for ; Mon, 10 Feb 2025 14:10:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739225406; x=1739830206; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=J36P/705noaRfrv1RgfEgcaXBGl51BJjTj6/wIyO+Bk=; b=Aw9cSCzmJXBm7MWgOmWQU0ZZIFkZ4Wkjl/Ws3X/CtC3ahjqNGu9C2XYpCLZQZhQw02 +HU14YIS2tjMZ4c+7YZovAGG3XaXtN4+2iABcA5y2iZmZFHujYs0K/H44Vh2kFlQNGHm 5AgTkP03xBk3BW9Iu2kwXCLs5vb1dzKpiM2adJ6Vm5jmTZjIpzSxoQ75sKEeamiz8sLd S5BYNOwWVazenE74a/tU+4dl3I8atJetiMZ+NTBGokmhhXqTqd44WnhCTmwTtThsTxW0 +i0eUW4wwDxQaE4UK5M3oTp1vhFzaQEJMopEHGp/z6gGiR5eEYJ7iCLTiGuF+VhbpOuw Lgww== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739225406; x=1739830206; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=J36P/705noaRfrv1RgfEgcaXBGl51BJjTj6/wIyO+Bk=; b=NJviDiHj2h2KP11Neu4hjvOcC0Z+eRR5tSw+vWNkOPaD5o+LWFueO2SPlASw1DsUgw v71RGLtQH3Nq2CuTG2/j45cloSk6SeOl9lPuSHwqIVgY9Sgp/Nqv0ntG4lB3EbTYAmt5 DdSm0v9+mEWcuamR7WD1bn3u7B6c40/zI8Igz2mRmQpEDHCKyQT28yWP0INX40/24Mwl BXHO+/g0yjYCqo+s1mh6ICOz5sNP06F0vtjzL/XTRsIrYMGNjJKziccSMiGNuebw6Qfq YPN2aeWgHhx1dS0ssR/lGbGyjxlCgMzO8pO0i7UU5n9rlHOxmff05H3Fj2xEev2hMMym UMsg== X-Gm-Message-State: AOJu0Yy+ipG+ObCJXi+lu8E81UA89VXFIT58V9UeKIuAuINyNSUhodWD meSuySzkfYc3RL+kYG07KGB6tpYARcIAMcu8z4yCp+50drjhH7EycapAtRkM X-Gm-Gg: ASbGncvUdEfmA5tmkWxpHZtSo2GBWRKXJdx2BLbInLa7wgX6nNeLqRnOyv6SDylAMcz Or9P3xUbIZy+sKnMKDVshDETgX/CyHVWf1rgMzsZhfUId2h43DS5cosXssLPHB9cNCytakR1mhn ufg1okNSc/ODH0+fXd83lHGjPr1FinBKD094Y1Ebhz90RRirGcnp/DdoW3cSUZUDW0+AxaCfiGG T9uDyoSYUqiY9uUw+OnET0Uy8rD1pwR/PWM6wpnyA9O3RI29TSHgY8iP68V1V6+D1jfm93yfomS 3BO2TiqLOYP0GukUUkUgJQlodq0b X-Google-Smtp-Source: AGHT+IHBDwcw5Xs+bILjkSfD8+rtXz+yAOQWjKW4OdKB8dlh8ebuM1gV/rgcmvZDg9zfJqcclIe0vw== X-Received: by 2002:a05:6000:1862:b0:38d:de34:32ed with SMTP id ffacd0b85a97d-38de41be586mr1051887f8f.34.1739225405394; Mon, 10 Feb 2025 14:10:05 -0800 (PST) Received: from giga-mm.. ([2a02:1210:861b:6f00:82ee:73ff:feb8:99e3]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38dbde1dfaesm13443450f8f.90.2025.02.10.14.10.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 10 Feb 2025 14:10:05 -0800 (PST) From: Alexander Sverdlin To: soc@lists.linux.dev Cc: Alexander Sverdlin , Jisheng Zhang , Chao Wei , Chen Wang , Inochi Amaoto , linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, Haylen Chu , linux-arm-kernel@lists.infradead.org, Arnd Bergmann , Rob Herring , Krzysztof Kozlowski , Conor Dooley Subject: [PATCH v2 3/7] arm64: dts: sophgo: Add initial SG2000 SoC device tree Date: Mon, 10 Feb 2025 23:09:43 +0100 Message-ID: <20250210220951.1248533-4-alexander.sverdlin@gmail.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250210220951.1248533-1-alexander.sverdlin@gmail.com> References: <20250210220951.1248533-1-alexander.sverdlin@gmail.com> Precedence: bulk X-Mailing-List: soc@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Add initial device tree for the SG2000 SoC by SOPHGO (from ARM64 PoV). Signed-off-by: Alexander Sverdlin --- Changelog: v2: - relocated "memory" node according to DT coding style; - moved GIC node into "soc"; - referring "soc" by label; arch/arm64/boot/dts/sophgo/sg2000.dtsi | 75 ++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 arch/arm64/boot/dts/sophgo/sg2000.dtsi diff --git a/arch/arm64/boot/dts/sophgo/sg2000.dtsi b/arch/arm64/boot/dts/sophgo/sg2000.dtsi new file mode 100644 index 000000000000..98c8d300347c --- /dev/null +++ b/arch/arm64/boot/dts/sophgo/sg2000.dtsi @@ -0,0 +1,75 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) + +#define SOC_PERIPHERAL_IRQ(nr) GIC_SPI (nr) + +#include +#include +#include + +/ { + compatible = "sophgo,sg2000"; + interrupt-parent = <&gic>; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + + cpu@0 { + compatible = "arm,cortex-a53"; + device_type = "cpu"; + reg = <0>; + i-cache-size = <32768>; + d-cache-size = <32768>; + next-level-cache = <&l2>; + }; + + l2: l2-cache { + compatible = "cache"; + cache-level = <2>; + cache-unified; + cache-size = <0x20000>; + }; + }; + + memory@80000000 { + device_type = "memory"; + reg = <0x80000000 0x20000000>; /* 512MiB */ + }; + + pmu { + compatible = "arm,cortex-a53-pmu"; + interrupts = , + ; + }; + + timer { + compatible = "arm,armv8-timer"; + interrupts = , + , + , + ; + always-on; + clock-frequency = <25000000>; + }; +}; + +&soc { + gic: interrupt-controller@1f01000 { + compatible = "arm,cortex-a15-gic"; + interrupt-controller; + #interrupt-cells = <3>; + reg = <0x01f01000 0x1000>, + <0x01f02000 0x2000>; + }; + + pinctrl: pinctrl@3001000 { + compatible = "sophgo,sg2000-pinctrl"; + reg = <0x03001000 0x1000>, + <0x05027000 0x1000>; + reg-names = "sys", "rtc"; + }; +}; + +&clk { + compatible = "sophgo,sg2000-clk"; +}; From patchwork Mon Feb 10 22:09:44 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Sverdlin X-Patchwork-Id: 13969280 Received: from mail-wr1-f52.google.com (mail-wr1-f52.google.com [209.85.221.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 67BC124E4D1 for ; Mon, 10 Feb 2025 22:10:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739225410; cv=none; b=Ay5zTou/e6aIrWKdnFCZ3qxUxNZuTuHnNnOYoCPtBAeToMJuGrOzcUn+NxGtCA1zhtSMwLdyB3CruD0k+UCxEjZFTF1FLmtxlSY1xrMjvOVGcsefJkjGSOX9wsx1U+p8QYk4rKnnEEw77Yc/N8/POQKSHG/Z23LXilFY7v7En1A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739225410; c=relaxed/simple; bh=jfa77/ONY496cJ8PEp5dYqJfCUfCX415nJ3UHlfDQpg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=E9YFZ2rh4aHMfV7j+RAnqhqqJFFBjtQoa+zSxmTZ3jur54dcuJl+D7BQMd3xS+FZVLytjV6adHRxVdn72DLSfILU/KodeBqekl49uOBof0xSDt9it99MGVvjhtbliW6WAqTO9wMMPpa+RH2X+cDED+5rXEn7C1jblP6tHavkcCk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=dJN8Tpa8; arc=none smtp.client-ip=209.85.221.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="dJN8Tpa8" Received: by mail-wr1-f52.google.com with SMTP id ffacd0b85a97d-38de1a5f039so1051157f8f.2 for ; Mon, 10 Feb 2025 14:10:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739225407; x=1739830207; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=lqTQGOfqcr22lakzrEU9GmH3j3SEvT+upsozoFTBBWQ=; b=dJN8Tpa8fR8yYqJGNsfgJKVLuEdsaTqyg25ou/RqGwDWFSLDf/Hz31yBGYw2KVfI/T qqpGBHSyQbWA7pxMgTgTAPUzCqdnrAUpk10kMCiqQJ5avxSPVGx4a8wwiosSXIGpn4Ph 5s0IndhTemR6cC7cTeeA/GOrrv83N9KogJTwo2HVmPNvsHK/FsgDqUPApKgS+sBE6mVa BmPCtj7fF3j1AfAZakiepQcR9mlEfL1Nsipj4jiQvKRgl3Juf2B4QQAnuKmLhD9a5XFH yq5MfQqoPD8PFizGChNnNGQfBc/pj63gcOgeTaNhEebPibjY+QnhStIwN95EK7x9DLAI 6wTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739225407; x=1739830207; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=lqTQGOfqcr22lakzrEU9GmH3j3SEvT+upsozoFTBBWQ=; b=DwKqHZUyHZpfN8kQu2goPXG6kbZSRAfb83MzGiwdZBl41ssDOtmDFnEFUL2lmMimOq KKAWWF8EHhxFOLY1dJtE+J/EdvNMj2BqMr12npWJvTc4SipOI7YrSMmypV/1FhhqOntK N+yprE1LZpba1KGx591F6Yl8mZhtE0s/Hmc2dRT01zWJ25NXR8xxQO8tfG0WNK1uMwZj lx7opYz5qkFoyEFm+or06mR36gm6Of22YT+I92XuI7QZP57VQANK3zsMSKgknm+P7K9c nmmEelqmAVPaKzynDNFdOUnDMDgBzz16aRG0F38h+4jENS2RcGoNRd8/GQIN2QGgqmp6 F+0g== X-Gm-Message-State: AOJu0YyVPIr+yR15xtiyN8b+sgXpt9XMdsyYTGC1OaqyWGVYJv6udMOG vvVj4dv4EGtudKTkXDKg94PMFvvpjAmn7N95ed9mW+5RZF76ZhO3/Zh072AW X-Gm-Gg: ASbGncu706XqSgME3koXW9xBpOIEQopd1jflcUR6JEBO9d7w+0yJeaW+c3PuCPuDqPN EN3dM0KFJE1AgZQUGmGDLlcoaKECi5tmm8qqTsPJ2nxWaYxzKkZRop7kgqd4x9rRPA4i2Z0z+nV ILCt9hArvgzlSPcxx0xroUzbDzWOHtjlrruBfhMqidCw7wmvhSmVzDB7CfFYK+cgG3v+08UV9p/ A0zL7RMtdA5frv6jPcZXi8G7bX8rpus1lbt6W9h6ELYPlAkncGwyEVKLz/rACzAzIzQcvV47mCj eYKeJIhreYAGH2unfLcfCco6K29P X-Google-Smtp-Source: AGHT+IE8Rd+D6a5FfE4GhUBDXVPl11ELRUcMh1iUYQiQapnXPgx0wFseAaugMpCFZrWcX8Q9xU91dw== X-Received: by 2002:a05:6000:1542:b0:38d:d0ca:fbaf with SMTP id ffacd0b85a97d-38dd0cb6ab6mr9753836f8f.18.1739225406495; Mon, 10 Feb 2025 14:10:06 -0800 (PST) Received: from giga-mm.. ([2a02:1210:861b:6f00:82ee:73ff:feb8:99e3]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38dbde1dfaesm13443450f8f.90.2025.02.10.14.10.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 10 Feb 2025 14:10:06 -0800 (PST) From: Alexander Sverdlin To: soc@lists.linux.dev Cc: Alexander Sverdlin , Jisheng Zhang , Chao Wei , Chen Wang , Inochi Amaoto , linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, Haylen Chu , linux-arm-kernel@lists.infradead.org, Arnd Bergmann , Rob Herring , Krzysztof Kozlowski , Conor Dooley Subject: [PATCH v2 4/7] arm64: dts: sophgo: Add Duo Module 01 Date: Mon, 10 Feb 2025 23:09:44 +0100 Message-ID: <20250210220951.1248533-5-alexander.sverdlin@gmail.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250210220951.1248533-1-alexander.sverdlin@gmail.com> References: <20250210220951.1248533-1-alexander.sverdlin@gmail.com> Precedence: bulk X-Mailing-List: soc@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 The Duo Module 01 is a compact module with integrated SG2000, WI-FI6/BTDM5.4, and eMMC. Add only support for UART and SDHCI. Signed-off-by: Alexander Sverdlin --- Changelog: v2: - sorted all nodes according to DT coding style; - added "compatible" property; - renamed the new .dtsi not to use underscores; - added status = "okay" instead of deleting it; .../sophgo/sg2000-milkv-duo-module-01.dtsi | 85 +++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 arch/arm64/boot/dts/sophgo/sg2000-milkv-duo-module-01.dtsi diff --git a/arch/arm64/boot/dts/sophgo/sg2000-milkv-duo-module-01.dtsi b/arch/arm64/boot/dts/sophgo/sg2000-milkv-duo-module-01.dtsi new file mode 100644 index 000000000000..bb52cdad990a --- /dev/null +++ b/arch/arm64/boot/dts/sophgo/sg2000-milkv-duo-module-01.dtsi @@ -0,0 +1,85 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) + +#include +#include "sg2000.dtsi" + +/ { + model = "Milk-V Duo Module 01"; + compatible = "milkv,duo-module-01", "sophgo,sg2000"; + + aliases { + serial0 = &uart0; + serial1 = &uart1; + serial2 = &uart2; + serial3 = &uart3; + serial4 = &uart4; + }; +}; + +&osc { + clock-frequency = <25000000>; +}; + +&pinctrl { + sdhci0_cfg: sdhci0-cfg { + sdhci0-cd-pins { + pinmux = ; + bias-pull-up; + drive-strength-microamp = <10800>; + power-source = <3300>; + }; + + sdhci0-clk-pins { + pinmux = ; + bias-pull-up; + drive-strength-microamp = <16100>; + power-source = <3300>; + }; + + sdhci0-cmd-pins { + pinmux = ; + bias-pull-up; + drive-strength-microamp = <10800>; + power-source = <3300>; + }; + + sdhci0-data-pins { + pinmux = , + , + , + ; + bias-pull-up; + drive-strength-microamp = <10800>; + power-source = <3300>; + }; + }; + + uart0_cfg: uart0-cfg { + uart0-pins { + pinmux = , + ; + bias-pull-up; + drive-strength-microamp = <10800>; + power-source = <3300>; + }; + }; +}; + +&emmc { + bus-width = <4>; + no-1-8-v; + cap-mmc-hw-reset; + no-sd; + no-sdio; + non-removable; + status = "okay"; +}; + +/* Wi-Fi */ +&sdhci1 { + bus-width = <4>; + cap-sdio-irq; + no-mmc; + no-sd; + non-removable; +}; From patchwork Mon Feb 10 22:09:45 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Sverdlin X-Patchwork-Id: 13969281 Received: from mail-wr1-f52.google.com (mail-wr1-f52.google.com [209.85.221.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3340A2505A2 for ; Mon, 10 Feb 2025 22:10:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739225411; cv=none; b=MhAWEHJtrAQiM/R8yuQ8IqkqBuvkr+C8yAIYP1vQguSMLGilSZb4HHQoBGS837UG8AWw9RrNrgSozNKNPcgK6jszCnKLwMeRP6y3+2+Ih+NRMwd3nIvq9S+8yKyDXuyn9TiokSVbp1gFUUBIYNpk459VJWGpbSaQ/HBfKjv3OV4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739225411; c=relaxed/simple; bh=G+mOyo4FIopZWgVDrcKuyZa9MY79r3sTlPlRPoc6AWI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Kb9YDPLCm1c7gsRE13X+W6H14vOURaaBGRH9me18jpg1vAFJnCTOLn182IKC19y7JzdNtI6gXTq4Bw/ZxI/041vMLfzO4fNogKPJ11Ty0pnnP27AIQGaVOqGrZwhOLNrHFjBJ58yn86kihOjoJ4e/fVzOilHDhuQI0ThNKaIjy0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=gECANsJ8; arc=none smtp.client-ip=209.85.221.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="gECANsJ8" Received: by mail-wr1-f52.google.com with SMTP id ffacd0b85a97d-38dd93a4e8eso1681076f8f.1 for ; Mon, 10 Feb 2025 14:10:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739225407; x=1739830207; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=yZhOnOs3JzDC/c26qPk+IYrYmiO8/esxJoqOId1pTR8=; b=gECANsJ8uJdgRyI9HE1/XFlzs+qqxTfXw6r5qXT4jfenPrHZVuO7wp0SariMnP1A2E Q4hN0lEXPT8Xp2RFrfHGQDfV0qeKtajgYBJSpS5jB4OUAtuCYeB1/IG7UswFsBCHl6IM PijydAjoWFDxuVyEKnSB1T6sx4wj49JjM/oKuEpKcN2IkV6ehFYAgxpUR/dshKGFKbFt fxEu3wZ+0zEoea0PMKmen+I1AG8HUByICgAuGlQS1VjTbDZb0OY08f3B3rFU9vmR6C28 naV79bgFxitTOSHXOHXGkTofSERm+vs7U8vnj1oDLlZTsljwA7LOcaCeC7BDK3oUH8f1 Bxsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739225407; x=1739830207; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=yZhOnOs3JzDC/c26qPk+IYrYmiO8/esxJoqOId1pTR8=; b=COGbufSrZZGIwbLmjG5a8av8GivCDZq8jTHcb7snHfOiFlCF4wM6hSNwxaiBrhwtz+ Me3YNboEkhNPUvGivJY58meO0OEzGr4ZE5WqeQC6GYBqlDrLpntWUBLiiCCOfsCjOrQ3 ws+04YDFT+056vUVf5h06lP0nE7Ef2+KtZzGKWtsmL9OKdrtyMd55bp3FYv1+1KVxzGS P/vuPpUSoFoZ/ljJhzjJ5vGDWNgamErpbQKlfvdS1ebXkxAuMiUcMS8fqWfsShiE0QWZ A8EYmMXn0seUL6CMfGRDBQ3/r4lGJINhP3+KIn/0uvxySKg8RrsjLAi3PVNF3eb5oC0v /p5g== X-Gm-Message-State: AOJu0YzCg8yW4LhX+FI0LmtxFTiBRAZDT8+V80MQM5Ga33K4nvmmGpMm OTyb4OfQNkpzx0k7XNvKZYtb1OqokHBpbwcFS8ykXH0Y4XMt7LTpqoxZ+KSq X-Gm-Gg: ASbGnctpCJGxEuFP+PN/sUI6T4xqZJ/YyZY3iwMb0hlDAXKME+0uae/VyS0I3t6V2oA tNdCkV4y5P0mB7w8FOObhEdsosw1pXEvjVbT326AJU12QryNZDj8y9CyfbukafR8jEabYFbxA7W ZTG9lI5L7cvAND7KE/pWfcEaOddkdgcOEns4T3CucLBgRhrFq0jYeeRKXP/No3rMjcpB11WEeqZ 3qOi36RP6zzSot89QVYn2HTJwMgw+H5FCD96yB9wqQ0m3oLXeZ6TAcEHfSV3stpMBOA8gWFwFTG Z0nM2QF1i5OyG5YU6wC6miK+cYL7 X-Google-Smtp-Source: AGHT+IHwNH6hgR8oTQ3a1y0apV2p0yZ49mWYWJA1q/BXd9mTz6QrzTQvriO0UNbrNrMx/g4JSHPQzw== X-Received: by 2002:a5d:6c66:0:b0:38c:5cd0:ecf3 with SMTP id ffacd0b85a97d-38dc8da6393mr12235260f8f.11.1739225407504; Mon, 10 Feb 2025 14:10:07 -0800 (PST) Received: from giga-mm.. ([2a02:1210:861b:6f00:82ee:73ff:feb8:99e3]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38dbde1dfaesm13443450f8f.90.2025.02.10.14.10.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 10 Feb 2025 14:10:07 -0800 (PST) From: Alexander Sverdlin To: soc@lists.linux.dev Cc: Alexander Sverdlin , Jisheng Zhang , Chao Wei , Chen Wang , Inochi Amaoto , linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, Haylen Chu , linux-arm-kernel@lists.infradead.org, Arnd Bergmann , Rob Herring , Krzysztof Kozlowski , Conor Dooley Subject: [PATCH v2 5/7] arm64: dts: sophgo: Add Duo Module 01 Evaluation Board Date: Mon, 10 Feb 2025 23:09:45 +0100 Message-ID: <20250210220951.1248533-6-alexander.sverdlin@gmail.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250210220951.1248533-1-alexander.sverdlin@gmail.com> References: <20250210220951.1248533-1-alexander.sverdlin@gmail.com> Precedence: bulk X-Mailing-List: soc@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Duo Module 01 Evaluation Board contains Sophgo Duo Module 01 SMD SoM, Ethernet+USB switch, microSD slot, etc... Add only support for UART0 (console) and microSD slot. Signed-off-by: Alexander Sverdlin --- Changelog: v2: - sorted all nodes according to DT coding style; - added "compatible" property; - renamed the new .dts not to use underscores; - added status = "okay" instead of deleting it; arch/arm64/boot/dts/Makefile | 1 + arch/arm64/boot/dts/sophgo/Makefile | 2 ++ .../sophgo/sg2000-milkv-duo-module-01-evb.dts | 31 +++++++++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 arch/arm64/boot/dts/sophgo/Makefile create mode 100644 arch/arm64/boot/dts/sophgo/sg2000-milkv-duo-module-01-evb.dts diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile index 79b73a21ddc2..3a32b157ac8c 100644 --- a/arch/arm64/boot/dts/Makefile +++ b/arch/arm64/boot/dts/Makefile @@ -28,6 +28,7 @@ subdir-y += realtek subdir-y += renesas subdir-y += rockchip subdir-y += socionext +subdir-y += sophgo subdir-y += sprd subdir-y += st subdir-y += synaptics diff --git a/arch/arm64/boot/dts/sophgo/Makefile b/arch/arm64/boot/dts/sophgo/Makefile new file mode 100644 index 000000000000..94f52cd7d994 --- /dev/null +++ b/arch/arm64/boot/dts/sophgo/Makefile @@ -0,0 +1,2 @@ +# SPDX-License-Identifier: GPL-2.0 +dtb-$(CONFIG_ARCH_SOPHGO) += sg2000-milkv-duo-module-01-evb.dtb diff --git a/arch/arm64/boot/dts/sophgo/sg2000-milkv-duo-module-01-evb.dts b/arch/arm64/boot/dts/sophgo/sg2000-milkv-duo-module-01-evb.dts new file mode 100644 index 000000000000..b1f8a5787861 --- /dev/null +++ b/arch/arm64/boot/dts/sophgo/sg2000-milkv-duo-module-01-evb.dts @@ -0,0 +1,31 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) + +/dts-v1/; + +#include "sg2000-milkv-duo-module-01.dtsi" + +/ { + model = "Milk-V Duo Module 01 Evaluation Board"; + compatible = "milkv,duo-module-01-evb", "milkv,duo-module-01", "sophgo,sg2000"; + + chosen { + stdout-path = "serial0:115200n8"; + }; +}; + +&uart0 { + pinctrl-0 = <&uart0_cfg>; + pinctrl-names = "default"; + status = "okay"; +}; + +&sdhci0 { + bus-width = <4>; + no-1-8-v; + no-mmc; + no-sdio; + disable-wp; + pinctrl-0 = <&sdhci0_cfg>; + pinctrl-names = "default"; + status = "okay"; +}; From patchwork Mon Feb 10 22:09:46 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Sverdlin X-Patchwork-Id: 13969282 Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 93FBB24E4D3 for ; Mon, 10 Feb 2025 22:10:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739225412; cv=none; b=NHCvk47SuHxUQNFQbwFs5dmMYGtWlgN2XxAaqAU612sviRuWAQAWOyLa4r8dsNoo+bJcL7lKd+sIhT7hyEnQJe7mxI4uJ+VpR4KSbYNlK9Rb/+PIL/tOaxWh5WVwTcj6qX6domOmT0eS1QLG+5vNY4oUdQWFmvbqguZZJSoSYt0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739225412; c=relaxed/simple; bh=JNHqD0fMNmMPprvxql49r2KwWNh7gapfKVmU6R6Yc2g=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=SHagvG5lR7o2PjYdaP40IxcOAG/922GcoZRNknqHQjtF66liS31tbxTu6qni92cXNJIH4+pGVPWTj7iuirjwd3TeOw8CM5Ult8h/WCutHeyxWX1QluwiW8XwLmZx0O2IqzjuTxAGzlZqNvctT4KG+h4BStt7QbE67C09iaDf63k= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=LEJcnB/X; arc=none smtp.client-ip=209.85.128.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="LEJcnB/X" Received: by mail-wm1-f48.google.com with SMTP id 5b1f17b1804b1-436ce2ab251so33734915e9.1 for ; Mon, 10 Feb 2025 14:10:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739225409; x=1739830209; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=1ID749a2RfFyJrhYgrJoQoMzS5iiIuNRZKRb6PE7JVA=; b=LEJcnB/XkAcZ4ETMCTCAMjDMo8WzbOCl1TfYgeWIAyyOYf5PpI24m/yfjWxj8pC8+A NxBhFPUXhaQDAM2jtd8X5vs0wQmozQi5UCyCP9L1okPwaJ0we7Qi+Na4jBlqFoGXIFgd 2fqlaNi4GMt9xz11T8A7IX8liq31dWmk1Tqc+ytgnmqwcKop5nwb0X/D1yG+TnSDCXbj WHeBMWiwPhv2JHykWVcmtZ1jXK7Ag4QYhvadnTnRSuoayNawZsVAcE6oAgEUDi8Hsyzd KRxW3R6vidR1X1mYKW2P8nw15Kghb8+DGiBzs6bKWCWK1ABbZ3bjoOgnvEP2QrDZlVf3 5khA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739225409; x=1739830209; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1ID749a2RfFyJrhYgrJoQoMzS5iiIuNRZKRb6PE7JVA=; b=LLO3FymXBfEJdLSBfke+HaG9SLEjMsJabyFocx7CJV6z/nJ4lFMnVQOSxYzsDwtvTI jSb+JvljL4d2tpkde+8v1EFO1tcH4jDH7h3ebvCWsExLOBr2VLPW1a12IhAoCix5Z3Tx DcU/pLc3bLH1cbSMBZy1XfiRV4DE6x8Grv7UIgKcfh6Yr14aryEAU1gHccyoI+oDxnaw DI/u5pvsRkJaPvXRYm4Nn6NQjsnGXIN8Rdhcq7zIKkFZyfx0F5ardw9s9ZhfEAtmIGEJ 0hxb4u8ysamN9Yg82fHm73WyMqtL/HVQa4BUpof4mK7Rsk9YD2UngB2U0C0Xhsoh+qhw iePQ== X-Gm-Message-State: AOJu0YxrVqAj+TwEj0Wlu7s3+1gE6c60lcE/ZRRVQ6Cbef+kxli/nXkd VPenVXSR0Fkhwzjf3CNVvCQDmVBZU+J25Mmoy/elBqp53OA87F1zUz8P4m7z X-Gm-Gg: ASbGncthVgYZb37Csny0KTBgYfim3tsnVNz0xHoQL1rCW2V7Qm3hlsCHaQk99sKH2dX dmTdPXwek1msOyXQTnL8aBqphMR/O1+l9HPfZca4V4uVi+8v9tIm118B3PnReZSwiteui4Gd2oR a6MO1D0dMq8R/Czb+re9LPwB0HTtIlH5NOWJdDMZemWEjnRVVuYrfWkgd6MrdAJxhBqxNwJW2eu ojRdBh6L6oHChkHwkz7vympIvXwiwWyeWrU1ZA7LFlB+MVpAmeyy3g2TeFgulwFSrnSd+BUBzhV 9h6u4YHT6lswObW1lEZOOzB+loIK X-Google-Smtp-Source: AGHT+IHu+GvSuWdsjZukE/oaPSgKedfyRuF2nNPz3gTsQwY2pdQTpQmVy4TokzU8j7/5Hvjhdxrx6A== X-Received: by 2002:a05:600c:895:b0:439:331b:e34d with SMTP id 5b1f17b1804b1-439331be5aemr96052165e9.5.1739225408672; Mon, 10 Feb 2025 14:10:08 -0800 (PST) Received: from giga-mm.. ([2a02:1210:861b:6f00:82ee:73ff:feb8:99e3]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38dbde1dfaesm13443450f8f.90.2025.02.10.14.10.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 10 Feb 2025 14:10:08 -0800 (PST) From: Alexander Sverdlin To: soc@lists.linux.dev Cc: Alexander Sverdlin , Jisheng Zhang , Chao Wei , Chen Wang , Inochi Amaoto , linux-riscv@lists.infradead.org, Haylen Chu , linux-arm-kernel@lists.infradead.org, Paul Walmsley , Palmer Dabbelt , Albert Ou , Arnd Bergmann , Catalin Marinas , Will Deacon , Lee Jones Subject: [PATCH v2 6/7] arm64: Add SOPHGO SOC family Kconfig support Date: Mon, 10 Feb 2025 23:09:46 +0100 Message-ID: <20250210220951.1248533-7-alexander.sverdlin@gmail.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250210220951.1248533-1-alexander.sverdlin@gmail.com> References: <20250210220951.1248533-1-alexander.sverdlin@gmail.com> Precedence: bulk X-Mailing-List: soc@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 First user will be Aarch64 core within SG2000 SoC. Cc: Chen Wang Cc: Inochi Amaoto Signed-off-by: Alexander Sverdlin Reviewed-by: Chen Wang --- Changelog: v2: - shortened the help message (mirrored from RiscV ARCH now); - select ARCH_HAS_RESET_CONTROLLER instead of RESET_CONTROLLER; - moved CLK_SOPHGO_CV1800 selection into defconfig; arch/arm64/Kconfig.platforms | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms index 02f9248f7c84..21b6a2bfb45a 100644 --- a/arch/arm64/Kconfig.platforms +++ b/arch/arm64/Kconfig.platforms @@ -307,6 +307,12 @@ config ARCH_INTEL_SOCFPGA Stratix 10 (ex. Altera), Stratix10 Software Virtual Platform, Agilex and eASIC N5X. +config ARCH_SOPHGO + bool "Sophgo SoCs" + select ARCH_HAS_RESET_CONTROLLER + help + This enables support for Sophgo SoC platform hardware. + config ARCH_STM32 bool "STMicroelectronics STM32 SoC Family" select GPIOLIB From patchwork Mon Feb 10 22:09:47 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Sverdlin X-Patchwork-Id: 13969283 Received: from mail-wr1-f48.google.com (mail-wr1-f48.google.com [209.85.221.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5017624E4CC for ; Mon, 10 Feb 2025 22:10:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739225413; cv=none; b=sKwVAwSXzjX1DkMWuqti1GIgiHJ2UqDMs0NFqZcf9fqa+MFW1564eEoybWyLqdAB7IjEwpBHW+z2/wfWS3vn/zRnVuqcfY4cJBS5vFWngvTt7cQeZsOh120R868TFES/mrFHZVAmWZtbxKlDF6ANPB3HjvhHxoSTk4L0wQ5zvNo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739225413; c=relaxed/simple; bh=s5oA+jHWEEIo9T7A2jUBsuRMhvrDdrSwYuhyM/IUmjg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=tsLvE6klA3TmZ6xHtCjkaCuQoDYYVAPd7BEC383m55UPSMtQ7EYkqYj1wXQp031Njgu13DgydHhBDN3c2Ui5SKB+84vDYgvpX0Ie+3d2LHGWaC+SONYjlAykmSb1REYr+6YFCdAiI1WTTijbEAyIhnsRadGhGmKjZk2AjrBankc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=nLvfgbQ5; arc=none smtp.client-ip=209.85.221.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="nLvfgbQ5" Received: by mail-wr1-f48.google.com with SMTP id ffacd0b85a97d-38dcc6bfbccso1973886f8f.0 for ; Mon, 10 Feb 2025 14:10:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739225410; x=1739830210; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=rLdsU1KFS3tVYEAjIFsi6WKlfhYjmE4PjmptYahFlqM=; b=nLvfgbQ55tgD2Ntxx6tDaBJogTdnM2q4kIPbvqjgzYVlrw/ZWzdit2EyPAOLemK22M FPrr9oZjgcy57Hx45Fdy03TU0+T5SJn1yeU+YOmy3+OSBhnNUMaa2iqVJYp/Pi+RTO8r 6RuxbTR1pxZcPN1veWvdqcFvUc9ayqYPGKKIXxqhqU2aX6StO3Or6ZJRrskvJgpxQkW0 PphadS5JA0RnepZjoITD5lShnmgn5RWHbYnx4nhXC2blmQwivAFHF5IV1BbpwOcgxXD0 alqujfsXNHvMf/ZyVuyWg0BXWvRM/QkQ5Ps6jknxPzQa8R1aVNyrzvOey4V2TxnmhIX0 VNrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739225410; x=1739830210; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=rLdsU1KFS3tVYEAjIFsi6WKlfhYjmE4PjmptYahFlqM=; b=OshWZCE6gIyPEsaowUQYUJGLOcac0rQI8rb2qoF/okMjljNI4X+yNzw3OJijzMF631 5AcPhvKnMEPgl50qY6Qdmukyth0CsbuNvn4y0Fqum1Xy4mk35U2zV7b9yd8BWIzmDAm1 6Yz5++s6FyB4Yctpg90m5yobRSNOJekVolAY3j5oXPEiZm+dXwANkBwWap07yFwDzCqg X8ViS0t6Iq1cfUHbkl/KLYU4sHgnve9A5jv3H0bn99dM+snsqQ0Lj3TidxJDd9qBlJPj 4te50iWuz7of0mZSkkos+ZsDMWMEoaJV2lZqqQUOJnOD7FIxMfjauQND9UxEKOOd5ggO hpWg== X-Gm-Message-State: AOJu0YwCW7+vLRMuvDud1pQ39RPZfd7Qlt5suO5rDc/DKQmOxMVc3uFE ANw9t14exxTFqqV5UIuYrdK8vxPFmyc4P8A4VCrCK+DAV9/8df1D8QJowrGv X-Gm-Gg: ASbGncuneCbVr+A6M/5Xl3Ylf7E2mP99CKsaGtUvHRWk5YHj3afK1Tlz89gwH+gvqcV LVYHvVxlvaFDrC9XO25ejo5K2Dl8zbKb6jTCDznXf5ggsUbeJswPnp3I8PBvlO9Kw4RrTtmB48g UJV1FasRrmgaP1bjtIvliRn3Cp5vP8EOsSty5xOaF7Atz8FVVVeLNVoQhko5f2kWAz+9t6Lzpzu gJ+O1dC/7jojg1MCOmTOAFCDmrjXkpW+ir/yaLsuMD2T0UgEL0cVaZ4zmwh1owTnfQsvp3M/67D HgAr0lIlFKezF2ZDLaZ8Voo0pxeF X-Google-Smtp-Source: AGHT+IFfMKN2DVPrE11x3bqwtEzG+jwRwo/EFICUaXgsePAhWGKTTHB2d0A9/IHfN0+E/tAfD1+HjQ== X-Received: by 2002:a05:6000:188f:b0:385:dc45:ea26 with SMTP id ffacd0b85a97d-38dc8daf01bmr8379732f8f.12.1739225409620; Mon, 10 Feb 2025 14:10:09 -0800 (PST) Received: from giga-mm.. ([2a02:1210:861b:6f00:82ee:73ff:feb8:99e3]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38dbde1dfaesm13443450f8f.90.2025.02.10.14.10.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 10 Feb 2025 14:10:09 -0800 (PST) From: Alexander Sverdlin To: soc@lists.linux.dev Cc: Alexander Sverdlin , Jisheng Zhang , Chao Wei , Chen Wang , Inochi Amaoto , linux-riscv@lists.infradead.org, Haylen Chu , linux-arm-kernel@lists.infradead.org, Arnd Bergmann , Catalin Marinas , Will Deacon Subject: [PATCH v2 7/7] arm64: defconfig: Enable rudimentary Sophgo SG2000 support Date: Mon, 10 Feb 2025 23:09:47 +0100 Message-ID: <20250210220951.1248533-8-alexander.sverdlin@gmail.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250210220951.1248533-1-alexander.sverdlin@gmail.com> References: <20250210220951.1248533-1-alexander.sverdlin@gmail.com> Precedence: bulk X-Mailing-List: soc@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Enable ARCH_SOPHGO, pinctrl (built-in, required to boot), ADC as module. This defconfig is able to boot from SD card on Milk-V Duo Module 01 evalboard. Signed-off-by: Alexander Sverdlin --- Changelog: v2: - moved CLK_SOPHGO_CV1800 from Kconfig.platforms here; arch/arm64/configs/defconfig | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig index cb7da4415599..865625ccf2c3 100644 --- a/arch/arm64/configs/defconfig +++ b/arch/arm64/configs/defconfig @@ -66,6 +66,7 @@ CONFIG_ARCH_RENESAS=y CONFIG_ARCH_ROCKCHIP=y CONFIG_ARCH_SEATTLE=y CONFIG_ARCH_INTEL_SOCFPGA=y +CONFIG_ARCH_SOPHGO=y CONFIG_ARCH_STM32=y CONFIG_ARCH_SYNQUACER=y CONFIG_ARCH_TEGRA=y @@ -650,6 +651,7 @@ CONFIG_PINCTRL_SM8450_LPASS_LPI=m CONFIG_PINCTRL_SC8280XP_LPASS_LPI=m CONFIG_PINCTRL_SM8550_LPASS_LPI=m CONFIG_PINCTRL_SM8650_LPASS_LPI=m +CONFIG_PINCTRL_SOPHGO_SG2000=y CONFIG_GPIO_ALTERA=m CONFIG_GPIO_DAVINCI=y CONFIG_GPIO_DWAPB=y @@ -1398,6 +1400,7 @@ CONFIG_QCOM_HFPLL=y CONFIG_CLK_GFM_LPASS_SM8250=m CONFIG_CLK_RCAR_USB2_CLOCK_SEL=y CONFIG_CLK_RENESAS_VBATTB=m +CONFIG_CLK_SOPHGO_CV1800=y CONFIG_HWSPINLOCK=y CONFIG_HWSPINLOCK_QCOM=y CONFIG_TEGRA186_TIMER=y @@ -1517,6 +1520,7 @@ CONFIG_QCOM_SPMI_VADC=m CONFIG_QCOM_SPMI_ADC5=m CONFIG_ROCKCHIP_SARADC=m CONFIG_RZG2L_ADC=m +CONFIG_SOPHGO_CV1800B_ADC=m CONFIG_TI_ADS1015=m CONFIG_TI_AM335X_ADC=m CONFIG_IIO_CROS_EC_SENSORS_CORE=m