Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp1630943pxf; Fri, 26 Mar 2021 11:11:16 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzAmYZvR4OtQ2o+zEPy9aNJ14miur4RMaCCGXU/aYmPlHzbvdSfVqTu1iFXO47Uiy2vNXYg X-Received: by 2002:a05:6402:1c98:: with SMTP id cy24mr16550484edb.296.1616782276069; Fri, 26 Mar 2021 11:11:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1616782276; cv=none; d=google.com; s=arc-20160816; b=s3Jn9YKl32TitE/b3V2PxdOpTNRYHVWQNt1m5MdTmwtXimpdQ3vu1G3juH4jQoJkMi wBXaKNRYRMnb7UkjdLtv0GrINFguTgun1R+jdzHU7BmCBjLYCPCH9DXMZ2UuIA8pOJD9 3UVyQOqhcaZT7KfaVqLoBkAS1ro45jESSqgaHppT42fiD2kbWfJ4RuadQySrtOegtYc1 OL8wcgpD7YkJU5rQ9f/7a/OCtZ/f6k0B7GLpLzGUT0KJ4FU47ASi61Wd2GvK+BE2/z1U JgeXT11AUFJal8FjQD/09NdJ+pOXGoB2iPv1dUaLK7CfdPPSXctahgJ8kU9t+3rLditF eWww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:message-id:date:to:cc:from:subject :references:in-reply-to:content-transfer-encoding:mime-version :dkim-signature; bh=XI9HXrDrn7ZQ7nmRKaq16XbWmMhItFgKiWzGlgbMxo4=; b=Glvh2S8/ZwFYE+w1v7wmVgMZqA1wWDMAneVuKH1wh2tQBairmlESBm2D3VbOV3Ln8Z xUlizBSDeGEIIYTCsC1cbKgI2OmqepHfKu4gKIR1ew2U0z39obugF5k770RhqTv45mdV IT2tw+7/Rf4e6Q6avutz+q18/CjCzud3V0SENdWPj23SKFVZ7BtfL7D/CoQDFg5NMi7w ++JrlYS9CeFz8Nkhrpdyq7I0xkVeXlXAq1JRyKjLnGuaYBNceuuRdWrBBjqCEj7txi8s DICuDVp4Wabvhr02g5XFnjXMEnmFH1Cmd/4/3H30pAGLdALNijAu0xhdM26vmnTVdzqD 4NTw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=VyVyzQFn; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id r18si7439185eds.390.2021.03.26.11.10.53; Fri, 26 Mar 2021 11:11:16 -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; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=VyVyzQFn; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230195AbhCZSJ6 (ORCPT + 99 others); Fri, 26 Mar 2021 14:09:58 -0400 Received: from mail.kernel.org ([198.145.29.99]:59414 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230180AbhCZSJd (ORCPT ); Fri, 26 Mar 2021 14:09:33 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 237B261A13; Fri, 26 Mar 2021 18:09:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1616782173; bh=oZuNNowA8hJn4kt24Qmg+vwOtPMVCc72tQAlQNlwhek=; h=In-Reply-To:References:Subject:From:Cc:To:Date:From; b=VyVyzQFnmwAJ5JuccpSdd3iFn/WWtOCUUzBwObShmf5bM/uWy5qtzHZ2lhGc+Fh+Z 6Y/ts3SvLVn7vxbDA7MUd/XjyVTC9Ea20jAAEk57jaFzRG9eid53h35xUuaKBO8Hzn OJqGaxXEm9Vf9+PjRBLigHtr/bAM+Tshp3zaoHyOpM1LNrA5WAJoVQkUJJCG/bSt3L spat86yD+X+kayPiUVA4sJlF7ofjcTUp0UzFhEBfs/kh+uBntifY0msWDpBT8NhUPw 56FsAytTMg+bv1pKwGC+wuNrrFoyNUtvr+SQyrz7MGpPTpQASAizwvFWg1dHCgrkab NKSoi/0UC+Y9g== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable In-Reply-To: <20210325185749.27984-1-nsaenz@kernel.org> References: <20210325185749.27984-1-nsaenz@kernel.org> Subject: Re: [PATCH] clk: bcm: rpi: Don't register as OF provider if !dev->np From: Stephen Boyd Cc: linux-rpi-kernel@lists.infradead.org, geert@linux-m68k.org, Nicolas Saenz Julienne , Marek Szyprowski , Michael Turquette , linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org To: Maxime Ripard , Nicolas Saenz Julienne , Nicolas Saenz Julienne Date: Fri, 26 Mar 2021 11:09:31 -0700 Message-ID: <161678217156.3012082.17482478610662557764@swboyd.mtv.corp.google.com> User-Agent: alot/0.9.1 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Quoting Nicolas Saenz Julienne (2021-03-25 11:57:48) > There are two ways clk-raspberrypi might be registered: through > device-tree or through an explicit platform device registration. The > latter happens after firmware/raspberrypi's probe, and it's limited to > RPi3s, which solely use the ARM clock to scale CPU's frequency. That > clock is matched with cpu0's device thanks to the ARM clock being > registered as a clkdev. >=20 > In that scenario, don't register the device as an OF clock provider, as > it makes no sense and will cause trouble. What sort of trouble? >=20 > Fixes: d4b4f1b6b97e ("clk: bcm: rpi: Add DT provider for the clocks") > Reported-by: Marek Szyprowski > Signed-off-by: Nicolas Saenz Julienne > --- > drivers/clk/bcm/clk-raspberrypi.c | 10 ++++++---- > 1 file changed, 6 insertions(+), 4 deletions(-) >=20 > diff --git a/drivers/clk/bcm/clk-raspberrypi.c b/drivers/clk/bcm/clk-rasp= berrypi.c > index f89b9cfc4309..27e85687326f 100644 > --- a/drivers/clk/bcm/clk-raspberrypi.c > +++ b/drivers/clk/bcm/clk-raspberrypi.c > @@ -337,10 +337,12 @@ static int raspberrypi_clk_probe(struct platform_de= vice *pdev) > if (ret) > return ret; > =20 > - ret =3D devm_of_clk_add_hw_provider(dev, of_clk_hw_onecell_get, > - clk_data); > - if (ret) > - return ret; > + if (dev->of_node) { Can you add a comment to the code indicating the problem this is fixing? I fear that we'll look back on this later and simply remove this if condition because it's "redundant". Better to have some code comment so we don't have to look up git history to figure out that we only call this when the of node is populated. I'm not sure I understand what goes wrong though. Won't the absence of dev->of_node mean the provider doesn't do anything? > + ret =3D devm_of_clk_add_hw_provider(dev, of_clk_hw_onecel= l_get, > + clk_data); > + if (ret) > + return ret; > + } > =20 > rpi->cpufreq =3D platform_device_register_data(dev, "raspberrypi-= cpufreq", > -1, NULL, 0);