Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp4976134ybb; Tue, 24 Mar 2020 08:41:20 -0700 (PDT) X-Google-Smtp-Source: ADFU+vviSRcSX/r44KJhf4HoMNFxlRJjtrMDAOAVV+PCviFKEQR2darY/Pz2LpgR2mPrmsJfUakr X-Received: by 2002:a05:6830:1aee:: with SMTP id c14mr10839319otd.141.1585064480112; Tue, 24 Mar 2020 08:41:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1585064480; cv=none; d=google.com; s=arc-20160816; b=O6DZ2v8vsdYnN/AYJvoXfh9JvOciF3m86o1OPboUJRglqGBVp7/11ING9N0YwBg+BS HY6EmrI1oKe2ZKdlRnqKDQTPZmO1PUalpHlPw1Kyp+bYRtq4+mHCOFzmysrvz++qMnOL orChu1/enE+VhjeqWhtYzk/UO6QmMwPb7UbFeJIJaI8IZMGL4jIenv7G3ulkJuN3U97n Uqp/dBNqegkFsmDGvf9PvhgV3zWASR3Fm4dTa27tIZDT8Nd/lp2XZEBCFdSzprkw6T4f RzN2DTbQXIyzq4ZxVlqzqWbl53CcZbCgZ3PQ52Qd73RU7m9jY8T/eOuEVXMccagYj0QJ kjFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :dkim-signature:dkim-signature; bh=lR0eBIanF6SDCnxFLTSyE8ziSKgi9ZA+hhtsHfD2qAA=; b=xoO8WVLQymyyBb6R223AFsfVlA/Txn+qyN1Tx4j0PLfHbevB5t0KLjOeJf/EjtVujt c3aejCbnGCeP/xWwfvNvVdHM7u4By6LixJlFMkLo3eRMYTPxQ7iVPzBGLs9AaS763RLc o0QTHp/uMw0ZuBO31SDRdhuUl8dx6AEMopcbtBB5/ONfzGQa5FcY0yN2nCrCdRmv7OME 7603JT5BCv6gfYsvk0sv9eA7DLew49jHQZw3lvcF0JHuouNKgtkA0XHk167h8rmEYNdm gThamCjl/Vgll4C1qk1pjz2WNg7+/HIPPytj7lF4lJNR8USEZbgJeuE/glrzerIYlJvf KVCg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@cerno.tech header.s=fm2 header.b=TixMqDr3; dkim=pass header.i=@messagingengine.com header.s=fm2 header.b=BjBkNffj; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=cerno.tech Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w5si9222521otp.164.2020.03.24.08.41.07; Tue, 24 Mar 2020 08:41:20 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@cerno.tech header.s=fm2 header.b=TixMqDr3; dkim=pass header.i=@messagingengine.com header.s=fm2 header.b=BjBkNffj; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=cerno.tech Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728590AbgCXPkt (ORCPT + 99 others); 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-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@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--