Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp23064imm; Tue, 7 Aug 2018 13:10:06 -0700 (PDT) X-Google-Smtp-Source: AAOMgpclezZiWGZtssCHUqIMZT3YRbzVoXUx7TRAC8YMAj55CNW7icjkCnbc4HUa8Px9ebsceGM3 X-Received: by 2002:a63:7a0a:: with SMTP id v10-v6mr19574680pgc.444.1533672605980; Tue, 07 Aug 2018 13:10:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533672605; cv=none; d=google.com; s=arc-20160816; b=pErJKIN8C2DzU0//ELj/RP9EkjegZ+T7wXBwyNX8xyK71R1qVW4s56iTLkhCWodPXP iPHh7078ociUpBd2BkpC6KIUgWMq1S77UxOBgfrrk6V3cS4WSjftfCRX3cJkz3barawk BKNYuPXTPP/m+bdzOqB+wHDHHWgKNDa6cTdf/yB47hEgOFAtuDactMJqIAEQ+5qlydzK pudkdS+vRMml2jLUt7O4A32hobLsYUH7/tYuXZpzWJGyMcFkd+GfB9GHeggTGh7gJhAc 3nU1ZtWiJwsyPmpURlUGHkfzgz0l/kMoiBBcBdUwjccqNDrV7sn+blRod4XLVSpYvPcU AVXg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:message-id:references :in-reply-to:subject:cc:to:from:date:content-transfer-encoding :mime-version:dkim-signature:dkim-signature :arc-authentication-results; bh=fsb5wYM87MEd6h6M5UTopMNpSfk1giYqQTSqntTOkXo=; b=kdsXFoogZ600v5R/X2weoUH4G8w70XgzwwrcMRSFC3ILpN3wKv3NG7frZoFQb9ss6t xWN3LfjbApnhprJ2ZHjfDuh9/S/M9pPdrs8dR0DTuf/v/PUqNVxA0RQR6bLNul3FOnio sQXk3hT8MWMOOajmfLbv0Wn9yGJmbgJ4M9CTraYJl3pfkIt0XQpewahBCb+QJUu73F8e K6ffFV+yFX9M0VvewWL7/RdQ/PGxmzNUkI8p6vi+tpCanZ+q1cPgE13U/bYm9VobaOS6 9poW0gRXW9y4a9ouHj8AoPRFlZOpx7tAUP85gGqwKfBPQkHjp6MgUWOCyoeapESPfuI8 UTkA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=nrvY1lpT; dkim=pass header.i=@codeaurora.org header.s=default header.b=gOUl3mc1; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t191-v6si1904107pgc.481.2018.08.07.13.09.50; Tue, 07 Aug 2018 13:10:05 -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=@codeaurora.org header.s=default header.b=nrvY1lpT; dkim=pass header.i=@codeaurora.org header.s=default header.b=gOUl3mc1; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389889AbeHGVrl (ORCPT + 99 others); Tue, 7 Aug 2018 17:47:41 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:50238 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2389589AbeHGVrl (ORCPT ); Tue, 7 Aug 2018 17:47:41 -0400 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id 0D3EF60B74; Tue, 7 Aug 2018 19:31:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1533670308; bh=H0FXJFGcH185yY8sxgr3OWF6fOlWR7Fy8HvkZSkTPMU=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=nrvY1lpT8x9p2sXkeS3RX1AqB4FIAouR1x7JTvUBOhVGOk0XN7LqOfVxT4pCAitvY i/tI305la0oc/RS+cov7lw4YgKPx1kMh5tgsvF+JZOIztaLbr1YCHSrHDfxBlNtxaG RFuvo0KKTloxpVriltZ6jAdsKWLT+WrcTOWD3/iI= X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on pdx-caf-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=2.0 tests=ALL_TRUSTED,BAYES_00, DKIM_SIGNED,T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 Received: from mail.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.codeaurora.org (Postfix) with ESMTP id 2544560B13; Tue, 7 Aug 2018 19:31:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1533670307; bh=H0FXJFGcH185yY8sxgr3OWF6fOlWR7Fy8HvkZSkTPMU=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=gOUl3mc13eHL4C+UBKw0+t6KJxNxMxgc0QEHf66ru7rdyiT9he6GkxtgTVxiOkW7m kP6Yaa8JbQrYY32+/4EdZvZH6LYKFU05jwug5uAAHMLF4DeS5PsuVE43Xr/cEEjoW3 RlV24SdZzITl7H5Yclew750QoCmcGVxrnLySV/qo= MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Date: Tue, 07 Aug 2018 12:31:47 -0700 From: skannan@codeaurora.org To: Rob Herring Cc: MyungJoo Ham , Kyungmin Park , Chanwoo Choi , Mark Rutland , georgi.djakov@linaro.org, vincent.guittot@linaro.org, daidavid1@codeaurora.org, bjorn.andersson@linaro.org, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v3 2/2] PM / devfreq: Add devfreq driver for interconnect bandwidth voting In-Reply-To: <20180807165103.GA23354@rob-hp-laptop> References: <1533171465-25508-2-git-send-email-skannan@codeaurora.org> <20180807165103.GA23354@rob-hp-laptop> Message-ID: X-Sender: skannan@codeaurora.org User-Agent: Roundcube Webmail/1.2.5 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2018-08-07 09:51, Rob Herring wrote: > On Wed, Aug 01, 2018 at 05:57:42PM -0700, Saravana Kannan wrote: >> This driver registers itself as a devfreq device that allows devfreq >> governors to make bandwidth votes for an interconnect path. This >> allows >> applying various policies for different interconnect paths using >> devfreq >> governors. >> >> Example uses: >> * Use the devfreq performance governor to set the CPU to DDR >> interconnect >> path for maximum performance. >> * Use the devfreq performance governor to set the GPU to DDR >> interconnect >> path for maximum performance. >> * Use the CPU frequency to device frequency mapping governor to scale >> the >> DDR frequency based on the needs of the CPUs' current frequency. >> >> Signed-off-by: Saravana Kannan >> --- >> Documentation/devicetree/bindings/devfreq/icbw.txt | 21 ++++ > > Please make bindings separate a patch. Yeah, I was aware of that. I just wanted to give some context in the v1 of this patch (I wasn't expecting this to merge as is). >> drivers/devfreq/Kconfig | 13 +++ >> drivers/devfreq/Makefile | 1 + >> drivers/devfreq/devfreq_icbw.c | 116 >> +++++++++++++++++++++ >> 4 files changed, 151 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/devfreq/icbw.txt >> create mode 100644 drivers/devfreq/devfreq_icbw.c >> >> diff --git a/Documentation/devicetree/bindings/devfreq/icbw.txt >> b/Documentation/devicetree/bindings/devfreq/icbw.txt >> new file mode 100644 >> index 0000000..36cf045 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/devfreq/icbw.txt >> @@ -0,0 +1,21 @@ >> +Interconnect bandwidth device >> + >> +icbw is a device that represents an interconnect path that connects >> two >> +devices. This device is typically used to vote for BW requirements >> between >> +two devices. Eg: CPU to DDR, GPU to DDR, etc > > I'm pretty sure this doesn't represent a h/w device. This usage doesn't > encourage me to accept the interconnects binding either. Hasn't the DT rules moved past "only HW devices" in DT? Logical devices are still allowed in Linux DT bindings? Having said that, this is explicitly representing a real HW path and the ability to control its performance. >> + >> +Required properties: >> +- compatible: Must be "devfreq-icbw" >> +- interconnects: Pairs of phandles and interconnect provider >> specifier >> + to denote the edge source and destination ports of >> + the interconnect path. See also: >> + Documentation/devicetree/bindings/interconnect/interconnect.txt >> +- interconnect-names: Must have one entry with the name "path". > > That's pretty useless... True. But the current DT binding for interconnect consumer bindings needs a interconnect name to use the of_* API. I'm open to switching to an index based API if one is provided. >> + >> +Example: >> + >> + qcom,cpubw { > > Someone in QCom please broadcast to stop using qcom,foo for node names. > It is amazing how consistent you all are. If only folks were as > consistent in reading > Documentation/devicetree/bindings/submitting-patches.txt. Sorry :( Thanks, Saravana