Received: by 2002:a05:6a10:1287:0:0:0:0 with SMTP id d7csp5300213pxv; Wed, 28 Jul 2021 07:43:15 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyPyrt3BeoFnMJkzNTgeSH+w3MwoN6AUoCPc2FMQLKDl4Hl6uZ2sixH4Z6slREPJUXeZwLP X-Received: by 2002:a17:906:9c84:: with SMTP id fj4mr27145731ejc.438.1627483395718; Wed, 28 Jul 2021 07:43:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1627483395; cv=none; d=google.com; s=arc-20160816; b=0MNFXqKcE+7ZfxfXzOWUJgfbAOolF9fO/jieblPld9urpydTf6kYbvggoCgmUXLqCH 9sgwisR65vwobxYf1cua5AwELEYXemGfs2WBgD5AA1emoXD1MvQPLfgX33HdUe+YtisR 2nQ0XttOH46tFkQ3ifu7a7WzNxySjadH1dtscB0zCJ2Q+HjV5cup+e6qRkbIGijhflE8 jsRqisX20deCsgw+j1r+0yV1YSBUN1ZtpCc63OnuwHP79u44MwQD7EbbeaxG8xTYBi6I aPYuS/Lp0k0L5Pg0ZYvr+INAnQDIDDJO5A5FKRvE5iskFU7mk9TM+hIXSpGbEwadJW0l tMew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=w4c6T9kIEKTrmIgYYPAoM9MB+wo27Qjt6OvxQwsySzc=; b=Y9eGLgFDPZLtWbIjiIlt5zn/UIW0h54S93fGi/Tt/VGNqo2r6z0GQjsJPABw+uPRi7 pZD7SqbeflgCj/eFUOa/8fkx74dhbq27haaY01XbAlVG1MW+Z53yOzPheC+T9k612wyN CV1fCSBx+ic6acTwVd58BhxrtxLrjHNjBUJ+Ib3zGomVCf5G5wZ2M/vLJTObeiffHtPX +GJCd8yoz326neNj3tDIp6JxOUJgOp0I4KUb6Md2nH1K//Mrw//QRfpHNwPTP057Emfw Ioo+Y9zdTAlT+JVKpkKxA/DmMnj6DOMzLpNsaug0LgZGLLSWqlWfNMrXeKWXFWjgqCRC j1Vw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id w20si6231143edu.376.2021.07.28.07.42.51; Wed, 28 Jul 2021 07:43:15 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235528AbhG1OlM convert rfc822-to-8bit (ORCPT + 99 others); Wed, 28 Jul 2021 10:41:12 -0400 Received: from gloria.sntech.de ([185.11.138.130]:50568 "EHLO gloria.sntech.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235345AbhG1OlM (ORCPT ); Wed, 28 Jul 2021 10:41:12 -0400 Received: from [95.90.166.74] (helo=diego.localnet) by gloria.sntech.de with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m8kk6-0006AS-UT; Wed, 28 Jul 2021 16:41:06 +0200 From: Heiko =?ISO-8859-1?Q?St=FCbner?= To: Peter Geis Cc: Linus Walleij , Bartosz Golaszewski , Rob Herring , "open list:GPIO SUBSYSTEM" , devicetree@vger.kernel.org, arm-mail-list , "open list:ARM/Rockchip SoC..." , Linux Kernel Mailing List Subject: Re: [PATCH 6/9] arm64: dts: rockchip: add missing rk3568 cru phandles Date: Wed, 28 Jul 2021 16:41:06 +0200 Message-ID: <6063626.MhkbZ0Pkbq@diego> In-Reply-To: References: <20210728135534.703028-1-pgwipeout@gmail.com> <13247009.uLZWGnKmhe@diego> MIME-Version: 1.0 Content-Transfer-Encoding: 8BIT Content-Type: text/plain; charset="iso-8859-1" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Am Mittwoch, 28. Juli 2021, 16:18:49 CEST schrieb Peter Geis: > On Wed, Jul 28, 2021 at 10:06 AM Heiko St?bner wrote: > > > > Hi Peter, > > > > Am Mittwoch, 28. Juli 2021, 15:55:31 CEST schrieb Peter Geis: > > > The grf and pmugrf phandles are necessary for the pmucru and cru to > > > modify clocks. Add these phandles to permit adjusting the clock rates > > > and muxes. > > > > > > Signed-off-by: Peter Geis > > > --- > > > arch/arm64/boot/dts/rockchip/rk356x.dtsi | 3 +++ > > > 1 file changed, 3 insertions(+) > > > > > > diff --git a/arch/arm64/boot/dts/rockchip/rk356x.dtsi b/arch/arm64/boot/dts/rockchip/rk356x.dtsi > > > index 0905fac0726a..8ba0516eedd8 100644 > > > --- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi > > > +++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi > > > @@ -218,6 +218,8 @@ grf: syscon@fdc60000 { > > > pmucru: clock-controller@fdd00000 { > > > compatible = "rockchip,rk3568-pmucru"; > > > reg = <0x0 0xfdd00000 0x0 0x1000>; > > > + rockchip,grf = <&grf>; > > > + rockchip,pmugrf = <&pmugrf>; > > > > I don't think the pmucru needs both and in fact the mainline > > clock driver should just reference its specific grf at all, i.e. > > pmucru -> pmugrf (via the rockchip,grf handle) > > cru -> grf > > > > I've not seen anything breaking this scope so far. > > I thought the same thing as well, but for some reason the driver > refuses to apply assigned-clocks to the plls unless these are all > present. > If the driver can get these assignments automatically eventually, > perhaps it's a loading order issue? > > Thinking about it, it's probably the grf and pmugrf haven't probed > when the driver is attempting to assign these, and tying them together > forces the probe to happen first. though nothing references the regular grf from the pmucru I think. I.e. the pmucru PLL read their lock state from RK3568_PMU_MODE_CON The rk3568 reuses the pll_rk3328-type which in turn is a modified pll_rk3036 and uses their ops. Which in turn means the pll shouldn't access the GRF at all, as it uses the pll's own register to check the locked state. Can you try to change clk-pll.c from switch (pll_type) { case pll_rk3036: case pll_rk3328: if (!pll->rate_table || IS_ERR(ctx->grf)) init.ops = &rockchip_rk3036_pll_clk_norate_ops; ... to switch (pll_type) { case pll_rk3036: case pll_rk3328: if (!pll->rate_table) init.ops = &rockchip_rk3036_pll_clk_norate_ops; similar to rk3399? Heiko > > > #clock-cells = <1>; > > > #reset-cells = <1>; > > > }; > > > @@ -225,6 +227,7 @@ pmucru: clock-controller@fdd00000 { > > > cru: clock-controller@fdd20000 { > > > compatible = "rockchip,rk3568-cru"; > > > reg = <0x0 0xfdd20000 0x0 0x1000>; > > > + rockchip,grf = <&grf>; > > > #clock-cells = <1>; > > > #reset-cells = <1>; > > > }; > > > > > > > > > > > >