From nobody Fri Oct 3 22:00:49 2025 Received: from smtpbgjp3.qq.com (smtpbgjp3.qq.com [54.92.39.34]) (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 7DED126B760; Sun, 24 Aug 2025 08:40:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=54.92.39.34 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756024852; cv=none; b=aKjt8tT7iqUvbh4iVXcn6IriiwKFy7t5xazkELlok8y+3vQ6waJkzhlwN9Fy8o4zoQS3z/KOuwd5KAuXpkCrF3OHtx1iGG1qKfEt+HoPzaeJ/JAPERZ3z2AEUaDgWMaf1C4kWu0CEaUCftTtt3XvgxstRY4JaImxMSmhfq3OPRk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756024852; c=relaxed/simple; bh=v/t1aI3aNag38Iw54UrTz56l99+UEE1QCM7Cs9uZPv4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=aklbzH9ZilaNtX3uemHZ2uIp0Ez00jAn+Par16CoL6bMmbCg8ojhRCj+6TdOlxOzsXPGPAYBhqphlkSdlRv5H5ctNXmK9DnHGNcc6r+EkkaNFtC/eGDjVXCH13WNdgW0szKi2aFMrcYJ4GpFGljSd9X7JDsZJVtyQgFbEaIMhFc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=linux.spacemit.com; spf=none smtp.mailfrom=linux.spacemit.com; dkim=pass (1024-bit key) header.d=linux.spacemit.com header.i=@linux.spacemit.com header.b=GKbwYKEp; arc=none smtp.client-ip=54.92.39.34 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=linux.spacemit.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.spacemit.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux.spacemit.com header.i=@linux.spacemit.com header.b="GKbwYKEp" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.spacemit.com; s=mxsw2412; t=1756024831; bh=uIeFRp7srlfzTl3qg/h25R18H1T9HniV32V3H37+zLo=; h=From:Date:Subject:MIME-Version:Message-Id:To; b=GKbwYKEpik6QLJbcHuSWJhkX1LzKHnBobBPBQFIfpjiwLqMjUfFbcqMR/454lbGj5 j3SCkajM4TPrpi91c97NsquZxLSjorr2/MA3LljLTt9DfTQ+LS7Hk1eC5oqHUPmYIE q0iPc3HRl7Tdsnt/++RAIE+VWVvAtYNq02nr2fOI= X-QQ-mid: zesmtpip4t1756024829ta2e03abb X-QQ-Originating-IP: R+FEK3RJ0uU9/B5/5AD3L4JnXkWhDGlpkAywfX6XE6s= Received: from = ( [localhost]) by bizesmtp.qq.com (ESMTP) with id ; Sun, 24 Aug 2025 16:40:25 +0800 (CST) X-QQ-SSF: 0000000000000000000000000000000 X-QQ-GoodBg: 0 X-BIZMAIL-ID: 17996591963032369533 EX-QQ-RecipientCnt: 15 From: Troy Mitchell Date: Sun, 24 Aug 2025 16:40:00 +0800 Subject: [PATCH RESEND v5 1/2] dt-bindings: clock: spacemit: CLK_SSPA_I2S_BCLK for SSPA 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: <20250824-k1-clk-i2s-v5-1-217b6b7cea06@linux.spacemit.com> References: <20250824-k1-clk-i2s-v5-0-217b6b7cea06@linux.spacemit.com> In-Reply-To: <20250824-k1-clk-i2s-v5-0-217b6b7cea06@linux.spacemit.com> To: Michael Turquette , Stephen Boyd , Yixun Lan , Alex Elder , Haylen Chu , Inochi Amaoto , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-clk@vger.kernel.org, linux-riscv@lists.infradead.org, spacemit@lists.linux.dev, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Troy Mitchell X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1756024814; l=987; i=troy.mitchell@linux.spacemit.com; s=20250712; h=from:subject:message-id; bh=v/t1aI3aNag38Iw54UrTz56l99+UEE1QCM7Cs9uZPv4=; b=iONwEIHlXVoixiSORjJxTfn/gRA3ySjVcx44485CZagW2P+78goqG1fL/Z+oleVAPbN/wYGb2 RQryHUz9mJjBnXwhtDnWU94+xGj896RrrhljBPr/wCbDoUstkk/2IWX X-Developer-Key: i=troy.mitchell@linux.spacemit.com; a=ed25519; pk=zhRP1xE0bftrurqSWI+SzcSdJGIZ0BTTY9Id0ESzqlI= X-QQ-SENDSIZE: 520 Feedback-ID: zesmtpip:linux.spacemit.com:qybglogicsvrsz:qybglogicsvrsz3a-0 X-QQ-XMAILINFO: MWzGDmnScki3k3C5VIVHaDBd8z4Roju4+0neCTSnYOxzh9F3UIJVkRW7 vbNS57Rn+P6EcKYl1wMCksANQzKMZtZ7Ogsjr3wfaS2Wp/UH+9xJtc51Y7O/g5Kt5r7bNpf kG04qQiJdNBRzvXTLTndAIXxALEb7mcO1/2eL0M79UCuQu0rDRUbbkLm8EA1Z1WzSKFSwlf j9TDqZViB3pEerwDDIVNRUhgtKl6UpSe8X0cbI0c7Xb1oQgBeEql5XxJzVf8UXg0jkShZMO Cq+bnC4BeCfwxux/FehkKkC9etkHyrt9Ay4QjhdYQ0JhriCK060bbzGb2E0GjOnFeo1fYFy 069xZ82vns/DfyroYIZv2wtVFIktA9lxvLXJgWbTODwJkfdv6SqqVOIAq0bPVY7M8Ej0btQ mhLz7A7xVwfOH+ldGk7cxiIeuLs5ppefKzYT+IFbc4sl4kcUJnZ9NPa8zRLhgFmxAwQqObH jgwTUy7b+2moPpLhM3RhAmyj/lUtt9YyHOwnIKE+tlOhp6Xh2uX83VfyNBtpvRE4VUU+WL0 W2rm/USXdStM32e5pu5poXVNmVfqIwfK2hdffPTaoJB8e/Q5fRw1xQmQIhLnbkyFt3JkDO8 qivqhVKgunAj5FG8I/FuzoSs9fUz8HTmVjlZM2IhNjv0w/rT7cIyM4U/njgeAP0DIk6iWce IMr/5sz79vfm5AiHh2nZdRpeJklGRxULJyWwIBQC1t3iZzlmyt8JCLBAQDOISHsOtjsiB4D 3jdTvmA63mLbDDyHyZPhCpSzs7scFWCxEcBKPkv8EtJFc9VZtdhvyNwQeQ3offQCnEFdYAp sivDEIHgmgYXc+qE0y5TBQXL4tR7tQhX+dNN97bFvVPVRgekpnxrW3UKA2ps4MQKonXg8YN A2WfOm6k2XZUsH7F8lllU2QoI5C9uXkhV3uemraTVX8msZsYADSjSWT4uDunA6RDFMSCvnX XHZxiwV5EfxAcTopjhp3eG3t82WSU+UVzQEChY6Y+LJ6RngOf29PINzhIm+dGdPSm1qYWYL zLVmpD6qNzJmxPygSy+C2HREFiQ4nXTPP9tGI8MlJxmSIepxMetqJUcFIh3/wGuj594zYsW o8DP69ICqdhPrg5TgIHPAU= X-QQ-XMRINFO: OWPUhxQsoeAVDbp3OJHYyFg= X-QQ-RECHKSPAM: 0 In order to use the virtual clock SSPAx_I2S_BCLK in the device tree and register it in the driver, this patch introduces the macro definition. Fixes: 1b72c59db0add ("clk: spacemit: Add clock support for SpacemiT K1 SoC= ") Acked-by: Rob Herring (Arm) Signed-off-by: Troy Mitchell --- include/dt-bindings/clock/spacemit,k1-syscon.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/dt-bindings/clock/spacemit,k1-syscon.h b/include/dt-bi= ndings/clock/spacemit,k1-syscon.h index 2714c3fe66cd5b49e12c8b20689f5b01da36b774..505205453d7f19ad478b3b741d8= 3f4498fcb8c0d 100644 --- a/include/dt-bindings/clock/spacemit,k1-syscon.h +++ b/include/dt-bindings/clock/spacemit,k1-syscon.h @@ -182,6 +182,8 @@ #define CLK_SSPA1_BUS 97 #define CLK_TSEN_BUS 98 #define CLK_IPC_AP2AUD_BUS 99 +#define CLK_SSPA0_I2S_BCLK 100 +#define CLK_SSPA1_I2S_BCLK 101 =20 /* APBC resets */ #define RESET_UART0 0 --=20 2.50.1 From nobody Fri Oct 3 22:00:49 2025 Received: from smtpbgbr1.qq.com (smtpbgbr1.qq.com [54.207.19.206]) (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 F195B25B1D8; Sun, 24 Aug 2025 08:41:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=54.207.19.206 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756024876; cv=none; b=Lgt4b4iguSi3oh5z5KWfvWVxAgJBn5G3s78ebK5b3IslzRM1UKu/3GOWfn83nIBQ4xYwt6A/mUTSxqnRXg38cRHjMFqEUwPw/mgLYmE3CjRzaUf+/AA5K/6+63QDslvGmuCSFV5HOFr6t876oG5o3JpJCWRcjIhT8XvtXys/fbU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756024876; c=relaxed/simple; bh=EwKVSE+xlhWtppMsIC0wFkFKY+Ek8JZOdL9HhV7w8qQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=eAbI3YpCsZSxQifbEYJh5v8dS9DpxDUWdhh94ZtcUPLG7279bFxr5iETJ9XfyFx2h9wfNQkD022PS7A1k+qIHoKbiEV4QCniEGie68CHJL2Ia0+yCLCjj2pZjEbhSrYweQgHK3O/gr04ec4Sdzfm62BgW8RVozzyg8K1MhLZi1c= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=linux.spacemit.com; spf=none smtp.mailfrom=linux.spacemit.com; dkim=pass (1024-bit key) header.d=linux.spacemit.com header.i=@linux.spacemit.com header.b=oJYTOiwX; arc=none smtp.client-ip=54.207.19.206 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=linux.spacemit.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.spacemit.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux.spacemit.com header.i=@linux.spacemit.com header.b="oJYTOiwX" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.spacemit.com; s=mxsw2412; t=1756024843; bh=+0D/xtSyclY9YeXodV2ESPW/VNymBxUPSTcmaRsZFQk=; h=From:Date:Subject:MIME-Version:Message-Id:To; b=oJYTOiwX0cJkSJqsbv9PAMLj85cW5waPRAkxBqa7iOO8i4v06uByEcO2PFOLd/YSx i7AfYfFguyT9qB1XJb6ZYhH4tsVv+Z47HRjUFuxB6nM83tjua9Bl/NEnj1xpPzPyJW uBfN86b5ymi1hz8xwQdptt/6gVcxpFYPOsdOyN6c= X-QQ-mid: zesmtpip4t1756024837t616a7bdf X-QQ-Originating-IP: PUsKbz+++SlMt/xebBO1hY0S118liMczPg+o1fjZI/g= Received: from = ( [localhost]) by bizesmtp.qq.com (ESMTP) with id ; Sun, 24 Aug 2025 16:40:34 +0800 (CST) X-QQ-SSF: 0000000000000000000000000000000 X-QQ-GoodBg: 0 X-BIZMAIL-ID: 9689889897890366230 EX-QQ-RecipientCnt: 16 From: Troy Mitchell Date: Sun, 24 Aug 2025 16:40:01 +0800 Subject: [PATCH RESEND v5 2/2] clk: spacemit: fix sspax_clk 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: <20250824-k1-clk-i2s-v5-2-217b6b7cea06@linux.spacemit.com> References: <20250824-k1-clk-i2s-v5-0-217b6b7cea06@linux.spacemit.com> In-Reply-To: <20250824-k1-clk-i2s-v5-0-217b6b7cea06@linux.spacemit.com> To: Michael Turquette , Stephen Boyd , Yixun Lan , Alex Elder , Haylen Chu , Inochi Amaoto , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-clk@vger.kernel.org, linux-riscv@lists.infradead.org, spacemit@lists.linux.dev, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Troy Mitchell , Yao Zi X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1756024814; l=3086; i=troy.mitchell@linux.spacemit.com; s=20250712; h=from:subject:message-id; bh=EwKVSE+xlhWtppMsIC0wFkFKY+Ek8JZOdL9HhV7w8qQ=; b=Glx1thNAZLGwZF+ZRevm8+R6O87PYXOxfak/RqijosoYktJgN4SadVOOB7TzA7d15sqnpnFNj OAy5yz77XPgBXfWp/q1GWBFbmWDkYKOX2ioCS3c+xwdTaqoRyC+np7p X-Developer-Key: i=troy.mitchell@linux.spacemit.com; a=ed25519; pk=zhRP1xE0bftrurqSWI+SzcSdJGIZ0BTTY9Id0ESzqlI= X-QQ-SENDSIZE: 520 Feedback-ID: zesmtpip:linux.spacemit.com:qybglogicsvrsz:qybglogicsvrsz3a-0 X-QQ-XMAILINFO: NXtyInqyccVAfA/KTya7VOKhMfGC6hhxYJQGiJRWj77GCTvRq3TB0VXB mQe9t6r0sj22nim7Veir8jPLLkubsxsuvq841cNrtF5jnFMFlyPn7dhjAQg2Utg7aFALojl XvZ4ygQvG+m2S5YpKOAy25v40OlxMVVP1/ink+wYoSCl9J3Cue2Q4jVKEZljBEVRyVrAZaL zEUjOzPh5JGXyVvR1neXvyuVupTQiAixjNtV+1gAq1FWo4bIQCrlNUqjMUQCBS8gOYARGsq tprq339vfCtkQvEidW5K5MzlMtCMpE59bg7j1/FL1Z3nOky+3b9uTeLH4fZ5Jv/gL/ZBgw2 kQ1dk8btAvwPqHmWc+X7/xqo31zcJAkfIxWgNmh2Hz/CWOwmGEqR+aHJUL2+ocZfx/RmcGq jmah8I4+DLvrDOMndsl1QVf0ZsOhfdE30dg81/AMczug4q9iTBJRVm450SKpqq5ovpmZuJy iCbEV1hh1T/I4Lgx+0LDcubNs8fRo54y+lNBlfp10jAnVqhyJoPOrizSVxuxmxRwU1drm21 DtX6OkLXUAs3wlwmZ7OY9014G6GSNFqNlbNlCmUMK6fyVOyffQiAy7u+V4y+ItdJsIufo41 PtYfvgTtYvqVWEtI9Ws8Zp/yHXigesVH8ubEUpHvqDRr7H5lgcq4FhmAWruOkGuRT+PCPa9 e+T1ELxmaICvYtxvHkvIXm7GFGt9K0tVgIM3VtpnvJfa2GrMtwD4wP/lX6h2fXNHDpEAbto jzs+z0yMNxRMpU4vwhgwi+IMozBNvnrpG07Ui0175gwyPFQr8teGW/PJQvKC2567UGKCyAs Wnez4drhjD/GkPJyHTtUT2r9oQ39gLgbbCsrqYchHEmbMOXAJ2x1BGp7LK4zlPlgeAvY3d3 8AK2vCRC0G0NU1Ix1y+cTCzFzCyxa3fvDHJgvxO/dmSGX4fJqeL7EzmC1YKC2ss0zI7nIW1 zDj4MwJH/UWYKaulQmVqvHt+eVlB9hMATNIVUMi3Ttg2EHXuvZ2pzfUO+LLigYqkdXcAaRF 0jzxkQvkqTdkjo//Xe58QUsHV1uPK6EmOpuKwI3B0skEMMZTywSZL/+JO58Ul26htjZSRHQ 4BrldibFiWWiQqkusGPonlz9I3WGVU8LN1conXukj50 X-QQ-XMRINFO: NS+P29fieYNw95Bth2bWPxk= X-QQ-RECHKSPAM: 0 Hardware Requirement: BIT[3] of this register must be set if need to select i2s_bclk as SSPA parent clock, to solve this, introduces a new SSPAx_I2S_BCLK clock as the virtual gate clock. Fixes: 1b72c59db0add ("clk: spacemit: Add clock support for SpacemiT K1 SoC= ") Suggested-by: Yao Zi Reviewed-by: Haylen Chu Signed-off-by: Troy Mitchell --- drivers/clk/spacemit/ccu-k1.c | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/drivers/clk/spacemit/ccu-k1.c b/drivers/clk/spacemit/ccu-k1.c index 65e6de030717afa60eefab7bda88f9a13b857650..62cdba516a29f960e15e0464247= 0f55e3d85bfad 100644 --- a/drivers/clk/spacemit/ccu-k1.c +++ b/drivers/clk/spacemit/ccu-k1.c @@ -247,7 +247,14 @@ CCU_GATE_DEFINE(aib_clk, CCU_PARENT_NAME(vctcxo_24m), = APBC_AIB_CLK_RST, BIT(1), =20 CCU_GATE_DEFINE(onewire_clk, CCU_PARENT_NAME(vctcxo_24m), APBC_ONEWIRE_CLK= _RST, BIT(1), 0); =20 -static const struct clk_parent_data sspa_parents[] =3D { +/* + * When i2s_bclk is selected as the parent clock of sspa, + * the hardware requires bit3 to be set + */ +CCU_GATE_DEFINE(sspa0_i2s_bclk, CCU_PARENT_HW(i2s_bclk), APBC_SSPA0_CLK_RS= T, BIT(3), 0); +CCU_GATE_DEFINE(sspa1_i2s_bclk, CCU_PARENT_HW(i2s_bclk), APBC_SSPA1_CLK_RS= T, BIT(3), 0); + +static const struct clk_parent_data sspa0_parents[] =3D { CCU_PARENT_HW(pll1_d384_6p4), CCU_PARENT_HW(pll1_d192_12p8), CCU_PARENT_HW(pll1_d96_25p6), @@ -255,10 +262,22 @@ static const struct clk_parent_data sspa_parents[] = =3D { CCU_PARENT_HW(pll1_d768_3p2), CCU_PARENT_HW(pll1_d1536_1p6), CCU_PARENT_HW(pll1_d3072_0p8), - CCU_PARENT_HW(i2s_bclk), + CCU_PARENT_HW(sspa0_i2s_bclk), }; -CCU_MUX_GATE_DEFINE(sspa0_clk, sspa_parents, APBC_SSPA0_CLK_RST, 4, 3, BIT= (1), 0); -CCU_MUX_GATE_DEFINE(sspa1_clk, sspa_parents, APBC_SSPA1_CLK_RST, 4, 3, BIT= (1), 0); +CCU_MUX_GATE_DEFINE(sspa0_clk, sspa0_parents, APBC_SSPA0_CLK_RST, 4, 3, BI= T(1), 0); + +static const struct clk_parent_data sspa1_parents[] =3D { + CCU_PARENT_HW(pll1_d384_6p4), + CCU_PARENT_HW(pll1_d192_12p8), + CCU_PARENT_HW(pll1_d96_25p6), + CCU_PARENT_HW(pll1_d48_51p2), + CCU_PARENT_HW(pll1_d768_3p2), + CCU_PARENT_HW(pll1_d1536_1p6), + CCU_PARENT_HW(pll1_d3072_0p8), + CCU_PARENT_HW(sspa1_i2s_bclk), +}; +CCU_MUX_GATE_DEFINE(sspa1_clk, sspa1_parents, APBC_SSPA1_CLK_RST, 4, 3, BI= T(1), 0); + CCU_GATE_DEFINE(dro_clk, CCU_PARENT_HW(apb_clk), APBC_DRO_CLK_RST, BIT(1),= 0); CCU_GATE_DEFINE(ir_clk, CCU_PARENT_HW(apb_clk), APBC_IR_CLK_RST, BIT(1), 0= ); CCU_GATE_DEFINE(tsen_clk, CCU_PARENT_HW(apb_clk), APBC_TSEN_CLK_RST, BIT(1= ), 0); @@ -865,6 +884,8 @@ static struct clk_hw *k1_ccu_apbc_hws[] =3D { [CLK_SSPA1_BUS] =3D &sspa1_bus_clk.common.hw, [CLK_TSEN_BUS] =3D &tsen_bus_clk.common.hw, [CLK_IPC_AP2AUD_BUS] =3D &ipc_ap2aud_bus_clk.common.hw, + [CLK_SSPA0_I2S_BCLK] =3D &sspa0_i2s_bclk.common.hw, + [CLK_SSPA1_I2S_BCLK] =3D &sspa1_i2s_bclk.common.hw, }; =20 static const struct spacemit_ccu_data k1_ccu_apbc_data =3D { --=20 2.50.1