Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp1191648ybl; Wed, 8 Jan 2020 12:39:39 -0800 (PST) X-Google-Smtp-Source: APXvYqya0jSq6Yh76sEIAAzLmZlY5W/wmNcBTvcXrxquDSoGJxeaVzdvTMLhmcxb3cpheQ9ujhYt X-Received: by 2002:a05:6830:1185:: with SMTP id u5mr5238943otq.147.1578515979398; Wed, 08 Jan 2020 12:39:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1578515979; cv=none; d=google.com; s=arc-20160816; b=e9SWfGXMAlbh1uCdEPHUJZ15kNfR5JhCFTWsiURTgBUpuZi1gYXOTdbaZFu1dW3xk6 AjviWDJCmervq5VXG0T0hJxY78NEyF7Cl6Xcu0zX0WzRB1EixNLj8HKI4N8slPsWHkBg YOZjww0VlpnORvBiuKnY7K7dAJxmyzk7bEMW2D1F1Vw9Q8vSuGzaSphyqCpbzcskiPR/ RxpYvaeEyyPou6wN9uKpWUXj500Bywke1qgOzW7KqsxnWP5k6f/1X0ALh0uhtkGdcT0M 6W3RXJVtXBNXxzqmCFjg9p2Uq/bMg0gm34EWR75HwJ2t2sELrWoaIxNby46KE/7d/1r9 bQDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=fYbMCE8GKhztIwg7FUhSFbp5MPOuXQT9UONOLwZL9bI=; b=IdMbCRTqlJsaM2BodYavFvthmUmET2Pdmnsqn1+Sj/hLP/gGywNOG1J0O/9OuQSKuh nU7aWArmZK/zQsQEV3mLSmN6K52rAz8gkJ84zBWm9uCgjcjD7rs/GvF63Uct45Up4VTX SDFppWuXOKcoB4bEM4JPAKwOQh/Nz93LRZ6PNECgOlvQrY/9ebcS80xXNQ5DSL5Xc96s jIxggvqkA+d0rhF4gFQ5bsW9OhaEbZX4WiRh+RTV0gPpO9HsAPLfw5XU3ga16q0NVKSJ jGHdLuF9nzNX10UZ3TOUbTwi47MYgOGcXEdj4UEsU7yl++R/uSSPbMxQLlimSeC2qXEJ pEuA== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c11si2527995otf.91.2020.01.08.12.39.25; Wed, 08 Jan 2020 12:39:39 -0800 (PST) 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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726721AbgAHUid (ORCPT + 99 others); Wed, 8 Jan 2020 15:38:33 -0500 Received: from mail-ot1-f66.google.com ([209.85.210.66]:46450 "EHLO mail-ot1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725446AbgAHUid (ORCPT ); Wed, 8 Jan 2020 15:38:33 -0500 Received: by mail-ot1-f66.google.com with SMTP id r9so4878233otp.13 for ; Wed, 08 Jan 2020 12:38:32 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=fYbMCE8GKhztIwg7FUhSFbp5MPOuXQT9UONOLwZL9bI=; b=GxEPhYJrCHwJju3+E9GdZHbOr/KhELudlsx4yu9/vWt5BW7VJVDXGLwM0uIXJxiYMk GNhrhrhZYxkPNfacMQqE3qgo2AAmu6BlEjpd9VUR8gZ4VrM+RR1L2GTamO+08d2ntyt4 kDdroC0CNJA38gPWRopkc08drY7qGlA6/goEixQsCY+nHCBSfm87Nl+2yO1VHejIF5gS liHs1w8QQlcUo91Ye8Biw8H+oPf+cCPGnjW+0fgoxZ3XD3MoH7YY9t0ucs7Qne7xkLsq U82DxWhVIj7o0EL0375Fb3/ikfSwj8wHnU2sfS16aoI5u8Wz5qf5SdjY3gvbtXv/InkK +KqQ== X-Gm-Message-State: APjAAAW59suat8H8PYinUnajiQMyPzomizxQF8efB/FiUsRgnhaCv2G2 JyxoQ+mUeeHNLGsN+hHHbU+E81s= X-Received: by 2002:a9d:6a84:: with SMTP id l4mr5555270otq.145.1578515911615; Wed, 08 Jan 2020 12:38:31 -0800 (PST) Received: from rob-hp-laptop (24-155-109-49.dyn.grandenetworks.net. [24.155.109.49]) by smtp.gmail.com with ESMTPSA id g8sm1479998otq.19.2020.01.08.12.38.29 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 08 Jan 2020 12:38:30 -0800 (PST) Received: from rob (uid 1000) (envelope-from rob@rob-hp-laptop) id 220333 by rob-hp-laptop (DragonFly Mail Agent v0.11); Wed, 08 Jan 2020 14:38:29 -0600 Date: Wed, 8 Jan 2020 14:38:29 -0600 From: Rob Herring To: Roger Lu Cc: Kevin Hilman , Nicolas Boichat , Stephen Boyd , Fan Chen , HenryC Chen , YT Lee , Xiaoqing Liu , Charles Yang , Angus Lin , Mark Rutland , Matthias Brugger , Nishanth Menon , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org Subject: Re: [PATCH v6 1/3] dt-bindings: soc: add mtk svs dt-bindings Message-ID: <20200108203829.GA18987@bogus> References: <20200107070154.1574-1-roger.lu@mediatek.com> <20200107070154.1574-2-roger.lu@mediatek.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200107070154.1574-2-roger.lu@mediatek.com> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Jan 07, 2020 at 03:01:52PM +0800, Roger Lu wrote: > Document the binding for enabling mtk svs on MediaTek SoC. > > Signed-off-by: Roger Lu > --- > .../devicetree/bindings/power/mtk-svs.txt | 76 +++++++++++++++++++ > 1 file changed, 76 insertions(+) > create mode 100644 Documentation/devicetree/bindings/power/mtk-svs.txt > > diff --git a/Documentation/devicetree/bindings/power/mtk-svs.txt b/Documentation/devicetree/bindings/power/mtk-svs.txt > new file mode 100644 > index 000000000000..9a3e81b9e1d2 > --- /dev/null > +++ b/Documentation/devicetree/bindings/power/mtk-svs.txt > @@ -0,0 +1,76 @@ > +* Mediatek Smart Voltage Scaling (MTK SVS) > + > +This describes the device tree binding for the MTK SVS controller (bank) > +which helps provide the optimized CPU/GPU/CCI voltages. This device also > +needs thermal data to calculate thermal slope for accurately compensate > +the voltages when temperature change. > + > +Required properties: > +- compatible: > + - "mediatek,mt8183-svs" : For MT8183 family of SoCs > +- reg: Address range of the MTK SVS controller. > +- interrupts: IRQ for the MTK SVS controller. > +- clocks, clock-names: Clocks needed for the svs hardware. required > + clocks are: > + "main": Main clock for svs controller to work. > +- nvmem-cells: Phandle to the calibration data provided by a nvmem device. > +- nvmem-cell-names: Should be "svs-calibration-data" and "calibration-data" > + > +Subnodes: > +- svs-cpu-little: SVS bank device node of little CPU > + compatible: "mediatek,mt8183-svs-cpu-little" > + operating-points-v2: OPP table hooked by SVS little CPU bank. > + SVS will optimze this OPP table voltage part. > + vcpu-little-supply: PMIC buck of little CPU > +- svs-cpu-big: SVS bank device node of big CPU > + compatible: "mediatek,mt8183-svs-cpu-big" > + operating-points-v2: OPP table hooked by SVS big CPU bank. > + SVS will optimze this OPP table voltage part. > + vcpu-big-supply: PMIC buck of big CPU > +- svs-cci: SVS bank device node of CCI > + compatible: "mediatek,mt8183-svs-cci" > + operating-points-v2: OPP table hooked by SVS CCI bank. > + SVS will optimze this OPP table voltage part. > + vcci-supply: PMIC buck of CCI > +- svs-gpu: SVS bank device node of GPU > + compatible: "mediatek,mt8183-svs-gpu" > + operating-points-v2: OPP table hooked by SVS GPU bank. > + SVS will optimze this OPP table voltage part. > + vgpu-supply: PMIC buck of GPU > + > +Example: > + > + svs: svs@1100b000 { > + compatible = "mediatek,mt8183-svs"; > + reg = <0 0x1100b000 0 0x1000>; > + interrupts = ; > + clocks = <&infracfg CLK_INFRA_THERM>; > + clock-names = "main_clk"; > + nvmem-cells = <&svs_calibration>, <&thermal_calibration>; > + nvmem-cell-names = "svs-calibration-data", "calibration-data"; > + > + svs_cpu_little: svs-cpu-little { > + compatible = "mediatek,mt8183-svs-cpu-little"; > + operating-points-v2 = <&cluster0_opp>; > + vcpu-little-supply = <&mt6358_vproc12_reg>; > + }; I don't think this is a good binding. This information already exists elsewhere in the DT, so your driver should just look in those nodes. For example the regulator can be in the cpu nodes or the OPP table itself. Rob