From nobody Sun Oct 5 21:44:02 2025 Received: from sender4-pp-o94.zoho.com (sender4-pp-o94.zoho.com [136.143.188.94]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9D5D424DD13; Tue, 29 Jul 2025 18:51:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass smtp.client-ip=136.143.188.94 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753815121; cv=pass; b=UQjeba2bw9SLlfQvwmu+8dYZC7r1gv5zvYcUKvYKudZy1JCzcb5SDOnLU5x9mhLfnPyS717kPpwn97q+OuNx2C+pI0AlNNkZLhCz9ahg9OOh7hofl0o/HwJfUKdTuIQxhajkFOQd8Y1D9m7T02MWK/g6otdFrJmgZLNgNTSuQk8= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753815121; c=relaxed/simple; bh=7tXMSKlCWjju5fI/jyjdzhJJomYquD/UmYKow2jsXaQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=n/yo9sh1f8sz5QcWY/Q0DVXK7fMoTafwC62g1y/UdB+ZqsbqFK9PYQhnRNpoAu7xoILmbYo8l58EYgSZXM7838Pv1KfqcmQVn+7k0fIhSIRzwiRj1RVqIhng4qabkY+NeSOl0/euA1ufztftUkWs6i/j4ntu9+2igtjRuquNa10= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=zohomail.com; spf=pass smtp.mailfrom=zohomail.com; dkim=pass (1024-bit key) header.d=zohomail.com header.i=kingxukai@zohomail.com header.b=Xu/vWqvf; arc=pass smtp.client-ip=136.143.188.94 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=zohomail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=zohomail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=zohomail.com header.i=kingxukai@zohomail.com header.b="Xu/vWqvf" ARC-Seal: i=1; a=rsa-sha256; t=1753815079; cv=none; d=zohomail.com; s=zohoarc; b=JBeM7HAfMn0FBMAUkexSv0eaEu69IqTien/yIGWwF2C9wChkMlrXnvGLT9YDTfqqd3EcKF3qDZr7RU1Y9GjOqJz0ECOSe4giGRjQSzbrliTtth0uRx5F0Z5yHJDwKIOTcy3ePm2D/hXNSfgriU52gyHd3YUbBR8OdkSdx13Encw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1753815079; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=1gl5tyPKGcn0xJohDzLP9CsQXqbtUioIYMBev0Dr6vQ=; b=hETmDhCbCydQMZf2vQflq9+Wa4E9+R7iEW56GS7VEf1eJXKS0KBDS+7N71MUSuRfddku33/syzPQBls3pTGNPddpEjSBHKKX5Qmr49lu+67bCnzVWGcbfIHAHj5Ky3fZvdxaeT322uUbk0PJzIKbm6Zo7LrqKD6nuaOciGFoQrY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=zohomail.com; spf=pass smtp.mailfrom=kingxukai@zohomail.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1753815079; s=zm2022; d=zohomail.com; i=kingxukai@zohomail.com; h=From:From:Date:Date:Subject:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Message-Id:References:In-Reply-To:To:To:Cc:Cc:Feedback-ID:Reply-To; bh=1gl5tyPKGcn0xJohDzLP9CsQXqbtUioIYMBev0Dr6vQ=; b=Xu/vWqvfDJb2T2F+evV++IMoV+m1Z3IvmFoyeMk2TZxB34K/EsPXwsaPp9Feefqo 2+PPMPdF/6ZUDTGminKvwTG7Hojkel3tiHJ9+JozXMsM/NW+F/ndsl1vLp4AVkEITSw xiSrK2BvCWrLeufkvXeiaZQ93PppNKU9qnBdifOc= Received: by mx.zohomail.com with SMTPS id 1753815077001653.4359079339121; Tue, 29 Jul 2025 11:51:17 -0700 (PDT) From: Xukai Wang Date: Wed, 30 Jul 2025 02:43:53 +0800 Subject: [PATCH v7 3/3] riscv: dts: canaan: Add clock definition for K230 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250730-b4-k230-clk-v7-3-c57d3bb593d3@zohomail.com> References: <20250730-b4-k230-clk-v7-0-c57d3bb593d3@zohomail.com> In-Reply-To: <20250730-b4-k230-clk-v7-0-c57d3bb593d3@zohomail.com> To: Michael Turquette , Stephen Boyd , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Xukai Wang , Paul Walmsley , Palmer Dabbelt , Albert Ou , Conor Dooley Cc: linux-clk@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org, Samuel Holland , Troy Mitchell X-Mailer: b4 0.14.2 Feedback-ID: rr080112279b54b9156260a440bfbc8ba80000ba6f231c96f7e4b8097e64a54000ea00b987c31b28ad7edb7a:zu08011227872a5892e1c9cb215857a413000011d2c0a6dd143140d8d0999d15a3fc959ef3fd861df5b2fe6b:rf0801122da75b6cc804455d5c0b2bacea0000ed84fa1a16201d6ffca26cc62681a55595812d8153f20275c2fdc4f83804e9:ZohoMail X-ZohoMailClient: External This patch describes the clock controller integrated in K230 SoC and replace dummy clocks with the real ones for UARTs. For k230-canmv and k230-evb, they provide an additional external pulse input through a pin to serve as clock source. Co-developed-by: Troy Mitchell Signed-off-by: Troy Mitchell Signed-off-by: Xukai Wang --- arch/riscv/boot/dts/canaan/k230-canmv.dts | 11 +++++++++++ arch/riscv/boot/dts/canaan/k230-evb.dts | 11 +++++++++++ arch/riscv/boot/dts/canaan/k230.dtsi | 26 ++++++++++++++++++-------- 3 files changed, 40 insertions(+), 8 deletions(-) diff --git a/arch/riscv/boot/dts/canaan/k230-canmv.dts b/arch/riscv/boot/dt= s/canaan/k230-canmv.dts index 9565915cead6ad2381ea8249b616e79575feb896..6579d39e2c1690d9e9c2b9c884d= b528c37473204 100644 --- a/arch/riscv/boot/dts/canaan/k230-canmv.dts +++ b/arch/riscv/boot/dts/canaan/k230-canmv.dts @@ -17,8 +17,19 @@ ddr: memory@0 { device_type =3D "memory"; reg =3D <0x0 0x0 0x0 0x20000000>; }; + + timerx_pulse_in: timer_pulse_in { + compatible =3D "fixed-clock"; + clock-frequency =3D <50000000>; + #clock-cells =3D <0>; + }; }; =20 &uart0 { status =3D "okay"; }; + +&sysclk { + clocks =3D <&osc24m>, <&timerx_pulse_in>; + clock-names =3D "osc24m", "timer-pulse-in"; +}; diff --git a/arch/riscv/boot/dts/canaan/k230-evb.dts b/arch/riscv/boot/dts/= canaan/k230-evb.dts index f898b8e62368c3740d6795fd1e3cb0b261a460ac..64fbb5036b6e919662c8d66adb8= f102a698318bf 100644 --- a/arch/riscv/boot/dts/canaan/k230-evb.dts +++ b/arch/riscv/boot/dts/canaan/k230-evb.dts @@ -17,8 +17,19 @@ ddr: memory@0 { device_type =3D "memory"; reg =3D <0x0 0x0 0x0 0x20000000>; }; + + timerx_pulse_in: timer_pulse_in { + compatible =3D "fixed-clock"; + clock-frequency =3D <50000000>; + #clock-cells =3D <0>; + }; }; =20 &uart0 { status =3D "okay"; }; + +&sysclk { + clocks =3D <&osc24m>, <&timerx_pulse_in>; + clock-names =3D "osc24m", "timer-pulse-in"; +}; diff --git a/arch/riscv/boot/dts/canaan/k230.dtsi b/arch/riscv/boot/dts/can= aan/k230.dtsi index 95c1a3d8fb1192e30113d96d3e96329545bc6ae7..5a7a13117a779637fa33e91dce4= 7430455c0f949 100644 --- a/arch/riscv/boot/dts/canaan/k230.dtsi +++ b/arch/riscv/boot/dts/canaan/k230.dtsi @@ -3,6 +3,7 @@ * Copyright (C) 2024 Yangyu Chen */ =20 +#include #include =20 /dts-v1/; @@ -58,10 +59,10 @@ l2_cache: l2-cache { }; }; =20 - apb_clk: apb-clk-clock { + osc24m: clock-24m { compatible =3D "fixed-clock"; - clock-frequency =3D <50000000>; - clock-output-names =3D "apb_clk"; + clock-frequency =3D <24000000>; + clock-output-names =3D "osc24m"; #clock-cells =3D <0>; }; =20 @@ -89,10 +90,19 @@ clint: timer@f04000000 { interrupts-extended =3D <&cpu0_intc 3>, <&cpu0_intc 7>; }; =20 + sysclk: clock-controller@91102000 { + compatible =3D "canaan,k230-clk"; + reg =3D <0x0 0x91102000 0x0 0x40>, + <0x0 0x91100000 0x0 0x108>; + clocks =3D <&osc24m>; + clock-names =3D "osc24m"; + #clock-cells =3D <1>; + }; + uart0: serial@91400000 { compatible =3D "snps,dw-apb-uart"; reg =3D <0x0 0x91400000 0x0 0x1000>; - clocks =3D <&apb_clk>; + clocks =3D <&sysclk K230_LS_UART0_RATE>; interrupts =3D <16 IRQ_TYPE_LEVEL_HIGH>; reg-io-width =3D <4>; reg-shift =3D <2>; @@ -102,7 +112,7 @@ uart0: serial@91400000 { uart1: serial@91401000 { compatible =3D "snps,dw-apb-uart"; reg =3D <0x0 0x91401000 0x0 0x1000>; - clocks =3D <&apb_clk>; + clocks =3D <&sysclk K230_LS_UART1_RATE>; interrupts =3D <17 IRQ_TYPE_LEVEL_HIGH>; reg-io-width =3D <4>; reg-shift =3D <2>; @@ -112,7 +122,7 @@ uart1: serial@91401000 { uart2: serial@91402000 { compatible =3D "snps,dw-apb-uart"; reg =3D <0x0 0x91402000 0x0 0x1000>; - clocks =3D <&apb_clk>; + clocks =3D <&sysclk K230_LS_UART2_RATE>; interrupts =3D <18 IRQ_TYPE_LEVEL_HIGH>; reg-io-width =3D <4>; reg-shift =3D <2>; @@ -122,7 +132,7 @@ uart2: serial@91402000 { uart3: serial@91403000 { compatible =3D "snps,dw-apb-uart"; reg =3D <0x0 0x91403000 0x0 0x1000>; - clocks =3D <&apb_clk>; + clocks =3D <&sysclk K230_LS_UART3_RATE>; interrupts =3D <19 IRQ_TYPE_LEVEL_HIGH>; reg-io-width =3D <4>; reg-shift =3D <2>; @@ -132,7 +142,7 @@ uart3: serial@91403000 { uart4: serial@91404000 { compatible =3D "snps,dw-apb-uart"; reg =3D <0x0 0x91404000 0x0 0x1000>; - clocks =3D <&apb_clk>; + clocks =3D <&sysclk K230_LS_UART4_RATE>; interrupts =3D <20 IRQ_TYPE_LEVEL_HIGH>; reg-io-width =3D <4>; reg-shift =3D <2>; --=20 2.34.1