From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_SANE_1 autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2E7B7C433E0 for ; Thu, 18 Feb 2021 11:17:24 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id CCA5A64E28 for ; Thu, 18 Feb 2021 11:17:23 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233028AbhBRLQY (ORCPT ); Thu, 18 Feb 2021 06:16:24 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46796 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232498AbhBRKJR (ORCPT ); Thu, 18 Feb 2021 05:09:17 -0500 Received: from metis.ext.pengutronix.de (metis.ext.pengutronix.de [IPv6:2001:67c:670:201:290:27ff:fe1d:cc33]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5F802C06178B for ; Thu, 18 Feb 2021 01:45:55 -0800 (PST) Received: from gallifrey.ext.pengutronix.de ([2001:67c:670:201:5054:ff:fe8d:eefb] helo=[IPv6:::1]) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1lCfsc-0008BA-Uu; Thu, 18 Feb 2021 10:45:51 +0100 Subject: Re: [Linux-stm32] [PATCH v2 12/14] ARM: dts: stm32: move clocks/resets to SCMI resources for stm32mp15 To: gabriel.fernandez@foss.st.com, Michael Turquette , Stephen Boyd , Rob Herring , Maxime Coquelin , Alexandre Torgue , Philipp Zabel , Etienne Carriere , marex@denx.de Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-stm32@st-md-mailman.stormreply.com References: <20210126090120.19900-1-gabriel.fernandez@foss.st.com> <20210126090120.19900-13-gabriel.fernandez@foss.st.com> From: Ahmad Fatoum Message-ID: Date: Thu, 18 Feb 2021 10:45:47 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.0 MIME-Version: 1.0 In-Reply-To: <20210126090120.19900-13-gabriel.fernandez@foss.st.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-SA-Exim-Connect-IP: 2001:67c:670:201:5054:ff:fe8d:eefb X-SA-Exim-Mail-From: a.fatoum@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello Gabriel, On 26.01.21 10:01, gabriel.fernandez@foss.st.com wrote: > From: Gabriel Fernandez > > This change reflects board hardware configuration where RCC security > features are configured for RCC[TZEN]=1 and RCC[MCKPROT]=0, that is > RCC TrustZone is hardened and RCC MCKPROT is disabled. > > Clock and reset controllers that relate to SoC secure resources are > moved from a RCC clock/reset handle to a SCMI clock/reset_domain handle. > > These clocks are all the platform oscillators (HSI/LSI/CSI/HSE/LSE), > clocks for few subsystem and peripheral interfaces. > > This change add a SCMI clock dependency on RCC clock device since it > registers clocks which parent clocks are provided by the SCMI clock > driver. This change allows the RCC clock device probe to be deferred > until SCMI clocks are fully registered in the system. This would break existing boards, right? If so, you should move the last patch in the series before this one and patch all existing boards to use it. Maintainers of individual boards can then opt-in later by deleting the arch/arm/boot/dts/stm32mp15-no-scmi.dtsi inclusion. Cheers, Ahmad > > Signed-off-by: Etienne Carriere > Signed-off-by: Gabriel Fernandez > --- > arch/arm/boot/dts/stm32mp151.dtsi | 77 +++++++++++------------------- > arch/arm/boot/dts/stm32mp153.dtsi | 4 +- > arch/arm/boot/dts/stm32mp157.dtsi | 2 +- > arch/arm/boot/dts/stm32mp15xc.dtsi | 4 +- > 4 files changed, 32 insertions(+), 55 deletions(-) > > diff --git a/arch/arm/boot/dts/stm32mp151.dtsi b/arch/arm/boot/dts/stm32mp151.dtsi > index da3647373365..e06882e0611d 100644 > --- a/arch/arm/boot/dts/stm32mp151.dtsi > +++ b/arch/arm/boot/dts/stm32mp151.dtsi > @@ -102,38 +102,6 @@ > interrupt-parent = <&intc>; > }; > > - clocks { > - clk_hse: clk-hse { > - #clock-cells = <0>; > - compatible = "fixed-clock"; > - clock-frequency = <24000000>; > - }; > - > - clk_hsi: clk-hsi { > - #clock-cells = <0>; > - compatible = "fixed-clock"; > - clock-frequency = <64000000>; > - }; > - > - clk_lse: clk-lse { > - #clock-cells = <0>; > - compatible = "fixed-clock"; > - clock-frequency = <32768>; > - }; > - > - clk_lsi: clk-lsi { > - #clock-cells = <0>; > - compatible = "fixed-clock"; > - clock-frequency = <32000>; > - }; > - > - clk_csi: clk-csi { > - #clock-cells = <0>; > - compatible = "fixed-clock"; > - clock-frequency = <4000000>; > - }; > - }; > - > thermal-zones { > cpu_thermal: cpu-thermal { > polling-delay-passive = <0>; > @@ -595,7 +563,7 @@ > compatible = "st,stm32-cec"; > reg = <0x40016000 0x400>; > interrupts = ; > - clocks = <&rcc CEC_K>, <&clk_lse>; > + clocks = <&rcc CEC_K>, <&scmi0_clk CK_SCMI0_LSE>; > clock-names = "cec", "hdmi-cec"; > status = "disabled"; > }; > @@ -1156,10 +1124,17 @@ > }; > > rcc: rcc@50000000 { > - compatible = "st,stm32mp1-rcc", "syscon"; > + compatible = "st,stm32mp1-rcc-secure", "st,stm32mp1-rcc", "syscon"; > reg = <0x50000000 0x1000>; > #clock-cells = <1>; > #reset-cells = <1>; > + > + clock-names = "hse", "hsi", "csi", "lse", "lsi"; > + clocks = <&scmi0_clk CK_SCMI0_HSE>, > + <&scmi0_clk CK_SCMI0_HSI>, > + <&scmi0_clk CK_SCMI0_CSI>, > + <&scmi0_clk CK_SCMI0_LSE>, > + <&scmi0_clk CK_SCMI0_LSI>; > }; > > pwr_regulators: pwr@50001000 { > @@ -1342,8 +1317,8 @@ > compatible = "st,stm32f756-hash"; > reg = <0x54002000 0x400>; > interrupts = ; > - clocks = <&rcc HASH1>; > - resets = <&rcc HASH1_R>; > + clocks = <&scmi0_clk CK_SCMI0_HASH1>; > + resets = <&scmi0_reset RST_SCMI0_HASH1>; > dmas = <&mdma1 31 0x2 0x1000A02 0x0 0x0>; > dma-names = "in"; > dma-maxburst = <2>; > @@ -1353,8 +1328,8 @@ > rng1: rng@54003000 { > compatible = "st,stm32-rng"; > reg = <0x54003000 0x400>; > - clocks = <&rcc RNG1_K>; > - resets = <&rcc RNG1_R>; > + clocks = <&scmi0_clk CK_SCMI0_RNG1>; > + resets = <&scmi0_reset RST_SCMI0_RNG1>; > status = "disabled"; > }; > > @@ -1363,7 +1338,7 @@ > reg = <0x58000000 0x1000>; > interrupts = ; > clocks = <&rcc MDMA>; > - resets = <&rcc MDMA_R>; > + resets = <&scmi0_reset RST_SCMI0_MDMA>; > #dma-cells = <5>; > dma-channels = <32>; > dma-requests = <48>; > @@ -1524,7 +1499,7 @@ > iwdg2: watchdog@5a002000 { > compatible = "st,stm32mp1-iwdg"; > reg = <0x5a002000 0x400>; > - clocks = <&rcc IWDG2>, <&rcc CK_LSI>; > + clocks = <&rcc IWDG2>, <&scmi0_clk CK_SCMI0_LSI>; > clock-names = "pclk", "lsi"; > status = "disabled"; > }; > @@ -1553,7 +1528,8 @@ > compatible = "st,stm32h7-uart"; > reg = <0x5c000000 0x400>; > interrupts = ; > - clocks = <&rcc USART1_K>; > + clocks = <&scmi0_clk CK_SCMI0_USART1>; > + resets = <&scmi0_reset RST_SCMI0_USART1>; > status = "disabled"; > }; > > @@ -1563,8 +1539,8 @@ > compatible = "st,stm32h7-spi"; > reg = <0x5c001000 0x400>; > interrupts = ; > - clocks = <&rcc SPI6_K>; > - resets = <&rcc SPI6_R>; > + clocks = <&scmi0_clk CK_SCMI0_SPI6>; > + resets = <&scmi0_reset RST_SCMI0_SPI6>; > dmas = <&mdma1 34 0x0 0x40008 0x0 0x0>, > <&mdma1 35 0x0 0x40002 0x0 0x0>; > dma-names = "rx", "tx"; > @@ -1577,8 +1553,8 @@ > interrupt-names = "event", "error"; > interrupts = , > ; > - clocks = <&rcc I2C4_K>; > - resets = <&rcc I2C4_R>; > + clocks = <&scmi0_clk CK_SCMI0_I2C4>; > + resets = <&scmi0_reset RST_SCMI0_I2C4>; > #address-cells = <1>; > #size-cells = <0>; > st,syscfg-fmp = <&syscfg 0x4 0x8>; > @@ -1589,7 +1565,8 @@ > rtc: rtc@5c004000 { > compatible = "st,stm32mp1-rtc"; > reg = <0x5c004000 0x400>; > - clocks = <&rcc RTCAPB>, <&rcc RTC>; > + clocks = <&scmi0_clk CK_SCMI0_RTCAPB>, > + <&scmi0_clk CK_SCMI0_RTC>; > clock-names = "pclk", "rtc_ck"; > interrupts = ; > status = "disabled"; > @@ -1614,8 +1591,8 @@ > interrupt-names = "event", "error"; > interrupts = , > ; > - clocks = <&rcc I2C6_K>; > - resets = <&rcc I2C6_R>; > + clocks = <&scmi0_clk CK_SCMI0_I2C6>; > + resets = <&scmi0_reset RST_SCMI0_I2C6>; > #address-cells = <1>; > #size-cells = <0>; > st,syscfg-fmp = <&syscfg 0x4 0x20>; > @@ -1778,7 +1755,7 @@ > interrupt-controller; > #interrupt-cells = <2>; > reg = <0 0x400>; > - clocks = <&rcc GPIOZ>; > + clocks = <&scmi0_clk CK_SCMI0_GPIOZ>; > st,bank-name = "GPIOZ"; > st,bank-ioport = <11>; > status = "disabled"; > @@ -1800,7 +1777,7 @@ > reg = <0x10000000 0x40000>, > <0x30000000 0x40000>, > <0x38000000 0x10000>; > - resets = <&rcc MCU_R>; > + resets = <&scmi0_reset RST_SCMI0_MCU>; > st,syscfg-holdboot = <&rcc 0x10C 0x1>; > st,syscfg-tz = <&rcc 0x000 0x1>; > st,syscfg-pdds = <&pwr_mcu 0x0 0x1>; > diff --git a/arch/arm/boot/dts/stm32mp153.dtsi b/arch/arm/boot/dts/stm32mp153.dtsi > index 1c1889b194cf..db1273854675 100644 > --- a/arch/arm/boot/dts/stm32mp153.dtsi > +++ b/arch/arm/boot/dts/stm32mp153.dtsi > @@ -30,7 +30,7 @@ > interrupts = , > ; > interrupt-names = "int0", "int1"; > - clocks = <&rcc CK_HSE>, <&rcc FDCAN_K>; > + clocks = <&scmi0_clk CK_SCMI0_HSE>, <&rcc FDCAN_K>; > clock-names = "hclk", "cclk"; > bosch,mram-cfg = <0x0 0 0 32 0 0 2 2>; > status = "disabled"; > @@ -43,7 +43,7 @@ > interrupts = , > ; > interrupt-names = "int0", "int1"; > - clocks = <&rcc CK_HSE>, <&rcc FDCAN_K>; > + clocks = <&scmi0_clk CK_SCMI0_HSE>, <&rcc FDCAN_K>; > clock-names = "hclk", "cclk"; > bosch,mram-cfg = <0x1400 0 0 32 0 0 2 2>; > status = "disabled"; > diff --git a/arch/arm/boot/dts/stm32mp157.dtsi b/arch/arm/boot/dts/stm32mp157.dtsi > index 54e73ccea446..7b06c08e3a23 100644 > --- a/arch/arm/boot/dts/stm32mp157.dtsi > +++ b/arch/arm/boot/dts/stm32mp157.dtsi > @@ -20,7 +20,7 @@ > dsi: dsi@5a000000 { > compatible = "st,stm32-dsi"; > reg = <0x5a000000 0x800>; > - clocks = <&rcc DSI_K>, <&clk_hse>, <&rcc DSI_PX>; > + clocks = <&rcc DSI_K>, <&scmi0_clk CK_SCMI0_HSE>, <&rcc DSI_PX>; > clock-names = "pclk", "ref", "px_clk"; > resets = <&rcc DSI_R>; > reset-names = "apb"; > diff --git a/arch/arm/boot/dts/stm32mp15xc.dtsi b/arch/arm/boot/dts/stm32mp15xc.dtsi > index b06a55a2fa18..435846883f25 100644 > --- a/arch/arm/boot/dts/stm32mp15xc.dtsi > +++ b/arch/arm/boot/dts/stm32mp15xc.dtsi > @@ -10,8 +10,8 @@ > compatible = "st,stm32mp1-cryp"; > reg = <0x54001000 0x400>; > interrupts = ; > - clocks = <&rcc CRYP1>; > - resets = <&rcc CRYP1_R>; > + clocks = <&scmi0_clk CK_SCMI0_CRYP1>; > + resets = <&scmi0_reset RST_SCMI0_CRYP1>; > status = "disabled"; > }; > }; > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.3 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8E864C433DB for ; Thu, 18 Feb 2021 09:47:34 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 153B76148E for ; Thu, 18 Feb 2021 09:47:34 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 153B76148E Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=pengutronix.de Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Date:Message-ID:From: References:To:Subject:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=8xOTqBjexB8F2MeTpCrrqxwc/sMO+hnKiEO0Y4IduXQ=; b=gukgO12qlNaaSO7ywTEa3gH8S XqgGuB+umlIPvwXtt7QWOLRn3yyB88wNGTthpfw3fV35IARW2xBz8iWAM4ExMQLnjcsoi5Ivy6xco InGrc8lomQpjoOiIWAxEBDsjuJR3IWbXfboex+/gRecTPAFzzhdhP2xn5iY2DTsNwC79uOuQtLKji y1A+k+EsIs57nD9fL6vjPPp6GWKp9XRxqSq5w7tmbuOBP8casdxWhlHKToxYWwPblsTolIfgTwVCH QsJmN94FOM2cMEozk4q8qt734y7XOzuayMjKmg/IK9qMEfENz+8DF9vBN1war/mu73OeEFF7ArWDl yi+glElgA==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1lCfsi-00075l-Qx; Thu, 18 Feb 2021 09:45:56 +0000 Received: from metis.ext.pengutronix.de ([2001:67c:670:201:290:27ff:fe1d:cc33]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1lCfsf-000741-AT for linux-arm-kernel@lists.infradead.org; Thu, 18 Feb 2021 09:45:54 +0000 Received: from gallifrey.ext.pengutronix.de ([2001:67c:670:201:5054:ff:fe8d:eefb] helo=[IPv6:::1]) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1lCfsc-0008BA-Uu; Thu, 18 Feb 2021 10:45:51 +0100 Subject: Re: [Linux-stm32] [PATCH v2 12/14] ARM: dts: stm32: move clocks/resets to SCMI resources for stm32mp15 To: gabriel.fernandez@foss.st.com, Michael Turquette , Stephen Boyd , Rob Herring , Maxime Coquelin , Alexandre Torgue , Philipp Zabel , Etienne Carriere , marex@denx.de References: <20210126090120.19900-1-gabriel.fernandez@foss.st.com> <20210126090120.19900-13-gabriel.fernandez@foss.st.com> From: Ahmad Fatoum Message-ID: Date: Thu, 18 Feb 2021 10:45:47 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.0 MIME-Version: 1.0 In-Reply-To: <20210126090120.19900-13-gabriel.fernandez@foss.st.com> Content-Language: en-US X-SA-Exim-Connect-IP: 2001:67c:670:201:5054:ff:fe8d:eefb X-SA-Exim-Mail-From: a.fatoum@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-arm-kernel@lists.infradead.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210218_044553_603446_EB89F93B X-CRM114-Status: GOOD ( 24.41 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-clk@vger.kernel.org Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hello Gabriel, On 26.01.21 10:01, gabriel.fernandez@foss.st.com wrote: > From: Gabriel Fernandez > > This change reflects board hardware configuration where RCC security > features are configured for RCC[TZEN]=1 and RCC[MCKPROT]=0, that is > RCC TrustZone is hardened and RCC MCKPROT is disabled. > > Clock and reset controllers that relate to SoC secure resources are > moved from a RCC clock/reset handle to a SCMI clock/reset_domain handle. > > These clocks are all the platform oscillators (HSI/LSI/CSI/HSE/LSE), > clocks for few subsystem and peripheral interfaces. > > This change add a SCMI clock dependency on RCC clock device since it > registers clocks which parent clocks are provided by the SCMI clock > driver. This change allows the RCC clock device probe to be deferred > until SCMI clocks are fully registered in the system. This would break existing boards, right? If so, you should move the last patch in the series before this one and patch all existing boards to use it. Maintainers of individual boards can then opt-in later by deleting the arch/arm/boot/dts/stm32mp15-no-scmi.dtsi inclusion. Cheers, Ahmad > > Signed-off-by: Etienne Carriere > Signed-off-by: Gabriel Fernandez > --- > arch/arm/boot/dts/stm32mp151.dtsi | 77 +++++++++++------------------- > arch/arm/boot/dts/stm32mp153.dtsi | 4 +- > arch/arm/boot/dts/stm32mp157.dtsi | 2 +- > arch/arm/boot/dts/stm32mp15xc.dtsi | 4 +- > 4 files changed, 32 insertions(+), 55 deletions(-) > > diff --git a/arch/arm/boot/dts/stm32mp151.dtsi b/arch/arm/boot/dts/stm32mp151.dtsi > index da3647373365..e06882e0611d 100644 > --- a/arch/arm/boot/dts/stm32mp151.dtsi > +++ b/arch/arm/boot/dts/stm32mp151.dtsi > @@ -102,38 +102,6 @@ > interrupt-parent = <&intc>; > }; > > - clocks { > - clk_hse: clk-hse { > - #clock-cells = <0>; > - compatible = "fixed-clock"; > - clock-frequency = <24000000>; > - }; > - > - clk_hsi: clk-hsi { > - #clock-cells = <0>; > - compatible = "fixed-clock"; > - clock-frequency = <64000000>; > - }; > - > - clk_lse: clk-lse { > - #clock-cells = <0>; > - compatible = "fixed-clock"; > - clock-frequency = <32768>; > - }; > - > - clk_lsi: clk-lsi { > - #clock-cells = <0>; > - compatible = "fixed-clock"; > - clock-frequency = <32000>; > - }; > - > - clk_csi: clk-csi { > - #clock-cells = <0>; > - compatible = "fixed-clock"; > - clock-frequency = <4000000>; > - }; > - }; > - > thermal-zones { > cpu_thermal: cpu-thermal { > polling-delay-passive = <0>; > @@ -595,7 +563,7 @@ > compatible = "st,stm32-cec"; > reg = <0x40016000 0x400>; > interrupts = ; > - clocks = <&rcc CEC_K>, <&clk_lse>; > + clocks = <&rcc CEC_K>, <&scmi0_clk CK_SCMI0_LSE>; > clock-names = "cec", "hdmi-cec"; > status = "disabled"; > }; > @@ -1156,10 +1124,17 @@ > }; > > rcc: rcc@50000000 { > - compatible = "st,stm32mp1-rcc", "syscon"; > + compatible = "st,stm32mp1-rcc-secure", "st,stm32mp1-rcc", "syscon"; > reg = <0x50000000 0x1000>; > #clock-cells = <1>; > #reset-cells = <1>; > + > + clock-names = "hse", "hsi", "csi", "lse", "lsi"; > + clocks = <&scmi0_clk CK_SCMI0_HSE>, > + <&scmi0_clk CK_SCMI0_HSI>, > + <&scmi0_clk CK_SCMI0_CSI>, > + <&scmi0_clk CK_SCMI0_LSE>, > + <&scmi0_clk CK_SCMI0_LSI>; > }; > > pwr_regulators: pwr@50001000 { > @@ -1342,8 +1317,8 @@ > compatible = "st,stm32f756-hash"; > reg = <0x54002000 0x400>; > interrupts = ; > - clocks = <&rcc HASH1>; > - resets = <&rcc HASH1_R>; > + clocks = <&scmi0_clk CK_SCMI0_HASH1>; > + resets = <&scmi0_reset RST_SCMI0_HASH1>; > dmas = <&mdma1 31 0x2 0x1000A02 0x0 0x0>; > dma-names = "in"; > dma-maxburst = <2>; > @@ -1353,8 +1328,8 @@ > rng1: rng@54003000 { > compatible = "st,stm32-rng"; > reg = <0x54003000 0x400>; > - clocks = <&rcc RNG1_K>; > - resets = <&rcc RNG1_R>; > + clocks = <&scmi0_clk CK_SCMI0_RNG1>; > + resets = <&scmi0_reset RST_SCMI0_RNG1>; > status = "disabled"; > }; > > @@ -1363,7 +1338,7 @@ > reg = <0x58000000 0x1000>; > interrupts = ; > clocks = <&rcc MDMA>; > - resets = <&rcc MDMA_R>; > + resets = <&scmi0_reset RST_SCMI0_MDMA>; > #dma-cells = <5>; > dma-channels = <32>; > dma-requests = <48>; > @@ -1524,7 +1499,7 @@ > iwdg2: watchdog@5a002000 { > compatible = "st,stm32mp1-iwdg"; > reg = <0x5a002000 0x400>; > - clocks = <&rcc IWDG2>, <&rcc CK_LSI>; > + clocks = <&rcc IWDG2>, <&scmi0_clk CK_SCMI0_LSI>; > clock-names = "pclk", "lsi"; > status = "disabled"; > }; > @@ -1553,7 +1528,8 @@ > compatible = "st,stm32h7-uart"; > reg = <0x5c000000 0x400>; > interrupts = ; > - clocks = <&rcc USART1_K>; > + clocks = <&scmi0_clk CK_SCMI0_USART1>; > + resets = <&scmi0_reset RST_SCMI0_USART1>; > status = "disabled"; > }; > > @@ -1563,8 +1539,8 @@ > compatible = "st,stm32h7-spi"; > reg = <0x5c001000 0x400>; > interrupts = ; > - clocks = <&rcc SPI6_K>; > - resets = <&rcc SPI6_R>; > + clocks = <&scmi0_clk CK_SCMI0_SPI6>; > + resets = <&scmi0_reset RST_SCMI0_SPI6>; > dmas = <&mdma1 34 0x0 0x40008 0x0 0x0>, > <&mdma1 35 0x0 0x40002 0x0 0x0>; > dma-names = "rx", "tx"; > @@ -1577,8 +1553,8 @@ > interrupt-names = "event", "error"; > interrupts = , > ; > - clocks = <&rcc I2C4_K>; > - resets = <&rcc I2C4_R>; > + clocks = <&scmi0_clk CK_SCMI0_I2C4>; > + resets = <&scmi0_reset RST_SCMI0_I2C4>; > #address-cells = <1>; > #size-cells = <0>; > st,syscfg-fmp = <&syscfg 0x4 0x8>; > @@ -1589,7 +1565,8 @@ > rtc: rtc@5c004000 { > compatible = "st,stm32mp1-rtc"; > reg = <0x5c004000 0x400>; > - clocks = <&rcc RTCAPB>, <&rcc RTC>; > + clocks = <&scmi0_clk CK_SCMI0_RTCAPB>, > + <&scmi0_clk CK_SCMI0_RTC>; > clock-names = "pclk", "rtc_ck"; > interrupts = ; > status = "disabled"; > @@ -1614,8 +1591,8 @@ > interrupt-names = "event", "error"; > interrupts = , > ; > - clocks = <&rcc I2C6_K>; > - resets = <&rcc I2C6_R>; > + clocks = <&scmi0_clk CK_SCMI0_I2C6>; > + resets = <&scmi0_reset RST_SCMI0_I2C6>; > #address-cells = <1>; > #size-cells = <0>; > st,syscfg-fmp = <&syscfg 0x4 0x20>; > @@ -1778,7 +1755,7 @@ > interrupt-controller; > #interrupt-cells = <2>; > reg = <0 0x400>; > - clocks = <&rcc GPIOZ>; > + clocks = <&scmi0_clk CK_SCMI0_GPIOZ>; > st,bank-name = "GPIOZ"; > st,bank-ioport = <11>; > status = "disabled"; > @@ -1800,7 +1777,7 @@ > reg = <0x10000000 0x40000>, > <0x30000000 0x40000>, > <0x38000000 0x10000>; > - resets = <&rcc MCU_R>; > + resets = <&scmi0_reset RST_SCMI0_MCU>; > st,syscfg-holdboot = <&rcc 0x10C 0x1>; > st,syscfg-tz = <&rcc 0x000 0x1>; > st,syscfg-pdds = <&pwr_mcu 0x0 0x1>; > diff --git a/arch/arm/boot/dts/stm32mp153.dtsi b/arch/arm/boot/dts/stm32mp153.dtsi > index 1c1889b194cf..db1273854675 100644 > --- a/arch/arm/boot/dts/stm32mp153.dtsi > +++ b/arch/arm/boot/dts/stm32mp153.dtsi > @@ -30,7 +30,7 @@ > interrupts = , > ; > interrupt-names = "int0", "int1"; > - clocks = <&rcc CK_HSE>, <&rcc FDCAN_K>; > + clocks = <&scmi0_clk CK_SCMI0_HSE>, <&rcc FDCAN_K>; > clock-names = "hclk", "cclk"; > bosch,mram-cfg = <0x0 0 0 32 0 0 2 2>; > status = "disabled"; > @@ -43,7 +43,7 @@ > interrupts = , > ; > interrupt-names = "int0", "int1"; > - clocks = <&rcc CK_HSE>, <&rcc FDCAN_K>; > + clocks = <&scmi0_clk CK_SCMI0_HSE>, <&rcc FDCAN_K>; > clock-names = "hclk", "cclk"; > bosch,mram-cfg = <0x1400 0 0 32 0 0 2 2>; > status = "disabled"; > diff --git a/arch/arm/boot/dts/stm32mp157.dtsi b/arch/arm/boot/dts/stm32mp157.dtsi > index 54e73ccea446..7b06c08e3a23 100644 > --- a/arch/arm/boot/dts/stm32mp157.dtsi > +++ b/arch/arm/boot/dts/stm32mp157.dtsi > @@ -20,7 +20,7 @@ > dsi: dsi@5a000000 { > compatible = "st,stm32-dsi"; > reg = <0x5a000000 0x800>; > - clocks = <&rcc DSI_K>, <&clk_hse>, <&rcc DSI_PX>; > + clocks = <&rcc DSI_K>, <&scmi0_clk CK_SCMI0_HSE>, <&rcc DSI_PX>; > clock-names = "pclk", "ref", "px_clk"; > resets = <&rcc DSI_R>; > reset-names = "apb"; > diff --git a/arch/arm/boot/dts/stm32mp15xc.dtsi b/arch/arm/boot/dts/stm32mp15xc.dtsi > index b06a55a2fa18..435846883f25 100644 > --- a/arch/arm/boot/dts/stm32mp15xc.dtsi > +++ b/arch/arm/boot/dts/stm32mp15xc.dtsi > @@ -10,8 +10,8 @@ > compatible = "st,stm32mp1-cryp"; > reg = <0x54001000 0x400>; > interrupts = ; > - clocks = <&rcc CRYP1>; > - resets = <&rcc CRYP1_R>; > + clocks = <&scmi0_clk CK_SCMI0_CRYP1>; > + resets = <&scmi0_reset RST_SCMI0_CRYP1>; > status = "disabled"; > }; > }; > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel