Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp3253060ybz; Sun, 3 May 2020 22:06:30 -0700 (PDT) X-Google-Smtp-Source: APiQypJTYt51uwPQ4uUkyEioHUPMTGZmE1R/LbytPSjS3d6vk8VxycISy/bX1sf5s0Df/5JjwHCe X-Received: by 2002:a17:906:37d0:: with SMTP id o16mr12745844ejc.368.1588568790139; Sun, 03 May 2020 22:06:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588568790; cv=none; d=google.com; s=arc-20160816; b=cTY7IOt3nNA0eCWcnwn3RKq03avbVk68nBbNu6u6VMtdzdeLPdFyU5TsVg3D/xYAF4 sz8gY1k+nsTUFp60DYQTQViYrSWmFbmpT9mOJwSRk307j2QTsZ2QU0TDBV3jXoKzKM5z 4EDkL0hVC42Lib2+3+0Z3nR95I8IEZ6S3uMSy/CtessEA89lpbRBOd960v0EGoABHags Mc9h5arYuisuNbTfoPDiy2/NyoUPYnQdFAn5G8+Q0iL0z+po1KnkzZaMpGXJXJVRriDF U0mNAR8viobPNBg4x3PlIGrTS5uMmdR4yaB9gcZ9iWSDA3ZQk5nvOUzZne+R+lraRTPq Fdyw== 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:dkim-signature; bh=YzgczjfLPQLAKY8wFhDcvCuISss4Jf5RyzdYYNHrSpY=; b=eBGw73lMIX18kHtNMTmO4ZEIUZL7XXCzQ+Fi5BFCaOImIxrfuT1qe7oiYsVZ56pbvy Ahlsg0EDYqxfmV1CxcAve9NcpCsYctB6pU6Nz613wQot6MruKpC98O4ja3L9Bwc+cGNQ ZMI9rKJf5kNF+f+gaoswflvxZJ6twGLNvE3hwwLgXU1mhgFYRU8iPaA+yh1d0Rv1vrwn cyPdoQJ905qdVHaLFBjPmiWJ7XrpNbX99eSeD5ePNBJL5bdApCdWw9QCMtw9wUr/a8np MBzbFzyYnxa2//QFCCnpAAN8EjEcqOTG4VpOsfETdtAsxf86nrMtBraPDg9hq/Bn83Tq Vd1Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=GU9hXXVH; 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=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id j13si6322660edt.371.2020.05.03.22.06.06; Sun, 03 May 2020 22:06:30 -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=@linaro.org header.s=google header.b=GU9hXXVH; 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=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726666AbgEDFAX (ORCPT + 99 others); Mon, 4 May 2020 01:00:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48280 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725859AbgEDFAW (ORCPT ); Mon, 4 May 2020 01:00:22 -0400 Received: from mail-pl1-x641.google.com (mail-pl1-x641.google.com [IPv6:2607:f8b0:4864:20::641]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6430AC061A0F for ; Sun, 3 May 2020 22:00:22 -0700 (PDT) Received: by mail-pl1-x641.google.com with SMTP id v2so6322804plp.9 for ; Sun, 03 May 2020 22:00:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=YzgczjfLPQLAKY8wFhDcvCuISss4Jf5RyzdYYNHrSpY=; b=GU9hXXVHXKLQ28+CNkXAk/EaUVQfZ8ZSHxayK8EQa/qW+bJ1KEP0wL+Oycg4FiMroZ 4aEz3HyYFMqRONFNUZbxoPv66FZqnTHxodYB/EHkAoBkMKIkwviEt3uH+IHC+jVk27i9 z+zhjioCHkvWDA86FTCdP/Zxd77aLxCeUNGSdf5LUSvdVx3YVaJQ5XQ6ZsTOUfbViEay +OlfPs8BbHojAryRBnuhCv+ZV9IWFq69mTu5Ad+lO7g9VyxRjYzIeSLI5VsrXIpno1Hv WBTVCYO3fAgst16SkCvUaosOZlsCFftp8UafEvcRjacctrXzHLT/jG69oSORdaMjW5sm FZFA== 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=YzgczjfLPQLAKY8wFhDcvCuISss4Jf5RyzdYYNHrSpY=; b=fpcizyP8jty7pdmlVyFgte3Chx7y4y7rKeljYkF1aAk9M1Z1O3seGgvEIlQD3j5Fdz e1jzDIjlzWRNBW7S322XvkEhLaghiRVs1MJC2QL3NHAd3nw1GvTS02C3PRS3Ls8A3JsJ aso0kHpYJOvZ59mBOUE5Tk+ym4rwG0GAhBPK+xATwjGSVSEkOwo+yD9Kj/vnpz2k1AHl 5nE/wG6Uw483Isjjo/LFTqO1MjfUkv2UBhdwwOr6V9PWbvne4AG8dVdM0KLDKT4/7RAJ yW2hZ0bD9ynUO2VrwANvREh5Zjq7vI1It1MD3f70tUw8Nh1iuWx0P8Q1jXyvaZSHoHCa dL1g== X-Gm-Message-State: AGi0PuawuKuZDyH896rGlCiGFD1AN0kQlP3hzHTS5wESGBGYexYdAh1y saRVVkMXPX1r0uhRdQBYVoS9PQ== X-Received: by 2002:a17:90a:3450:: with SMTP id o74mr14829736pjb.159.1588568420510; Sun, 03 May 2020 22:00:20 -0700 (PDT) Received: from localhost ([122.171.118.46]) by smtp.gmail.com with ESMTPSA id b12sm7420187pfd.165.2020.05.03.22.00.19 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 03 May 2020 22:00:19 -0700 (PDT) Date: Mon, 4 May 2020 10:30:17 +0530 From: Viresh Kumar To: Saravana Kannan Cc: Georgi Djakov , Viresh Kumar , Nishanth Menon , Stephen Boyd , Rob Herring , "Rafael J. Wysocki" , Sibi Sankar , Rajendra Nayak , Bjorn Andersson , Vincent Guittot , Jordan Crouse , Evan Green , Linux PM , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" , LKML Subject: Re: [PATCH v7 6/7] OPP: Update the bandwidth on OPP frequency changes Message-ID: <20200504050017.nsd7fp7gtxxwt3d7@vireshk-i7> References: <20200424155404.10746-1-georgi.djakov@linaro.org> <20200424155404.10746-7-georgi.djakov@linaro.org> <20200430060901.j7jjw6soo5h5xoul@vireshk-i7> <20200430075356.rjtctfuenirvhxgn@vireshk-i7> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20180716-391-311a52 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 30-04-20, 09:32, Saravana Kannan wrote: > You are missing the point. This is not about aggregation. This is > about OPP voting for bandwidth on a path when the vote can/should be > 0. > > I'll give another example. Say one of the interconnect paths needs to > be voted only when a particular use case is running. Say, the GPU > needs to vote for bandwidth to L3 only when it's running in cache > coherent mode. But it always needs to vote for bandwidth to DDR. With > the way it's written now, OPP is going to force vote a non-zero > bandwidth to L3 even when it can be zero. Wasting power for no good > reason. > > Just let the drivers/device get the bandwidth values from OPP without > forcing them to vote for the bandwidth when they don't need to. Just > because they decide to use OPP to set their clock doesn't mean they > should lose to ability to control their bandwidth in a more > intelligent fashion. They shouldn't use opp_set_rate() in such a scenario. Why should they? opp_set_rate() was introduced to take care of only the simple cases and the complex ones are left for the drivers to handle. For example, they take care of programming multiple regulators (in case of TI), as OPP core can't know the order in which regulators need to be programmed. But for the simple cases, opp core can program everything the way it is presented in DT. -- viresh