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=-6.9 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS 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 AB7BFC54FCF for ; Tue, 24 Mar 2020 15:40:52 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 78A0120788 for ; Tue, 24 Mar 2020 15:40:52 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=cerno.tech header.i=@cerno.tech header.b="TixMqDr3"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="BjBkNffj" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728436AbgCXPkt (ORCPT ); Tue, 24 Mar 2020 11:40:49 -0400 Received: from new2-smtp.messagingengine.com ([66.111.4.224]:49655 "EHLO new2-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727510AbgCXPkt (ORCPT ); Tue, 24 Mar 2020 11:40:49 -0400 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailnew.nyi.internal (Postfix) with ESMTP id 6EC37580187; Tue, 24 Mar 2020 11:40:47 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Tue, 24 Mar 2020 11:40:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cerno.tech; h= date:from:to:cc:subject:message-id:references:mime-version :content-type:in-reply-to; s=fm2; bh=lR0eBIanF6SDCnxFLTSyE8ziSKg i9ZA+hhtsHfD2qAA=; b=TixMqDr3fI806sOY6xWM1xXk/HuR5Sl4JafhqvNyYCh B0WnbHWQLOO/1xO3PFhETsvKzKyyEM88a0AaojKb7Z7jEAY7iBfwNSPkX7HeNFhP EpVoSgsuZtGVDGoBCmKTFfXrDkcnCGOxzvDPtk7CplrnmncsR3pI089wwgutQyOl r9c4STe+YabsAQZyWWaej1FAM3C2S7RoT2JjIigyyOE4sFLStzFrVqAlujo5Y7Vu duNNH6cgHIIj02nefyBxBJcAJneMRe7HJ+0/UkxGCKKLuzYUEBgya224oMv9FJQ8 hfkxFh4t20pQdpM7EhYCvXT2s9wHPi5dnalEcb5Rayg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=lR0eBI anF6SDCnxFLTSyE8ziSKgi9ZA+hhtsHfD2qAA=; b=BjBkNffjGWUc/5jO4przwO m59Z+khlWSZ+YRhAy0e926I4p4hSBXhtqDoIV/ttcdvFNvFP7jrBppP4f8ENR3fy x1uQbKV6JcLOBipoIyP3jrVTNTedqJHP4cSabAQ/rYi8ndXBL33kHLHOjodHgE6D Fnqe3JIsYpplYmQHIuQ6PIKdNyDshuUMRlWDC/n4fsQ9ElI1YNkfeiIVkoZ4Q8vp fQDoCqp7yY3eY7AHpOL/ZNL5CBDO8jHaulswREydapxFOLUDBt+Hh+HyqJq4RhAn q6eymUBCE4G0MWyZYWMxTTJNsdGOtrkVqk7c0stXqR13ZtgqmC9VVNcaRhkKph6w == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedugedrudehuddggeelucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvffukfhfgggtuggjsehgtderredttddvnecuhfhrohhmpeforgigihhm vgcutfhiphgrrhguuceomhgrgihimhgvsegtvghrnhhordhtvggthheqnecukfhppeeltd drkeelrdeikedrjeeinecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghi lhhfrhhomhepmhgrgihimhgvsegtvghrnhhordhtvggthh X-ME-Proxy: Received: from localhost (lfbn-tou-1-1502-76.w90-89.abo.wanadoo.fr [90.89.68.76]) by mail.messagingengine.com (Postfix) with ESMTPA id 1E4E63280064; Tue, 24 Mar 2020 11:40:46 -0400 (EDT) Date: Tue, 24 Mar 2020 16:40:45 +0100 From: Maxime Ripard To: "Lad, Prabhakar" Cc: Laurent Pinchart , Mark Rutland , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" , Fabio Estevam , Sakari Ailus , Ezequiel Garcia , Sascha Hauer , Magnus Damm , Lad Prabhakar , LKML , Linux-Renesas , Rob Herring , Geert Uytterhoeven , NXP Linux Team , Pengutronix Kernel Team , Mauro Carvalho Chehab , Shawn Guo , LAK , linux-media Subject: Re: [PATCH v3 1/4] media: dt-bindings: media: i2c: Switch to assigned-clock-rates Message-ID: <20200324154045.whiy6uvlg2mrjv5a@gilmour.lan> References: <1584133954-6953-1-git-send-email-prabhakar.mahadev-lad.rj@bp.renesas.com> <1584133954-6953-2-git-send-email-prabhakar.mahadev-lad.rj@bp.renesas.com> <20200319124452.3yfcvq754vi4q2rv@gilmour.lan> <20200319130348.GC4872@pendragon.ideasonboard.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="766st27slgtqfmag" Content-Disposition: inline In-Reply-To: Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org --766st27slgtqfmag Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Thu, Mar 19, 2020 at 01:17:51PM +0000, Lad, Prabhakar wrote: > Hi Laurent, > > On Thu, Mar 19, 2020 at 1:04 PM Laurent Pinchart > wrote: > > > > Hi Maxime, > > > > On Thu, Mar 19, 2020 at 01:44:52PM +0100, Maxime Ripard wrote: > > > On Fri, Mar 13, 2020 at 09:12:31PM +0000, Lad Prabhakar wrote: > > > > Use assigned-clock-rates to specify the clock rate. Also mark > > > > clock-frequency property as deprecated. > > > > > > > > Signed-off-by: Lad Prabhakar > > > > --- > > > > Documentation/devicetree/bindings/media/i2c/ov5645.txt | 5 +++-- > > > > 1 file changed, 3 insertions(+), 2 deletions(-) > > > > > > > > diff --git a/Documentation/devicetree/bindings/media/i2c/ov5645.txt b/Documentation/devicetree/bindings/media/i2c/ov5645.txt > > > > index 72ad992..e62fe82 100644 > > > > --- a/Documentation/devicetree/bindings/media/i2c/ov5645.txt > > > > +++ b/Documentation/devicetree/bindings/media/i2c/ov5645.txt > > > > @@ -8,7 +8,7 @@ Required Properties: > > > > - compatible: Value should be "ovti,ov5645". > > > > - clocks: Reference to the xclk clock. > > > > - clock-names: Should be "xclk". > > > > -- clock-frequency: Frequency of the xclk clock. > > > > +- clock-frequency (deprecated): Frequency of the xclk clock. > > > > - enable-gpios: Chip enable GPIO. Polarity is GPIO_ACTIVE_HIGH. This corresponds > > > > to the hardware pin PWDNB which is physically active low. > > > > - reset-gpios: Chip reset GPIO. Polarity is GPIO_ACTIVE_LOW. This corresponds to > > > > @@ -37,7 +37,8 @@ Example: > > > > > > > > clocks = <&clks 200>; > > > > clock-names = "xclk"; > > > > - clock-frequency = <24000000>; > > > > + assigned-clocks = <&clks 200>; > > > > + assigned-clock-rates = <24000000>; > > > > > > > > vdddo-supply = <&camera_dovdd_1v8>; > > > > vdda-supply = <&camera_avdd_2v8>; > > > > > > clock-frequency is quite different from assigned-clock-rates though, > > > semantically speaking. clock-frequency is only about what the clock > > > frequency is, while assigned-clock-rates will change the rate as well, > > > and you have no idea how long it will last. > > > > The driver currently reads the clock-frequency property and then calls > > clk_set_rate(). I agree tht assigned-clock-rates isn't a panacea, but I > > think it's less of a hack than what we currently have. > > > > As discussed on IRC, maybe the best option in this specific case is to > > drop clock-frequency and assigned-clok-rates, and call clk_set_rate() > > with a hardcoded frequency of 24MHz in the driver, as that's the only > > frequency the driver supports. > > > Does this mean any driver which has a fixed clock requirement shouldn't be a > DT property and should be just handled by the drivers internally ? It's hard to give a generic policy, but here, the hardware is pretty flexible since it can deal with anything between 6MHz to 50-something MHz, it's the driver that chooses to enforce a 24MHz and be pedantic about it, so it's up to the driver to enforce that policy, not to the DT since it's essentially a software limitation, not a hardware one. Maxime --766st27slgtqfmag Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQRcEzekXsqa64kGDp7j7w1vZxhRxQUCXnop/QAKCRDj7w1vZxhR xUp3AQC4CpS3+gKsDPAnZm8pakj0NLuoi+oYlCsyVqEEtPSmBQD/W0Fnywv9KUiq QETeY979lVRzXw6cNCOb1qDBjB9TGQE= =nwfk -----END PGP SIGNATURE----- --766st27slgtqfmag--