Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp1627835ybv; Sat, 8 Feb 2020 02:26:16 -0800 (PST) X-Google-Smtp-Source: APXvYqxhGPadM4lpVYSRQ2U+OtpwkdnSa12uHxjHREsaat9++js4UTr5HNZA1u7gM+aUYs66MR0K X-Received: by 2002:a9d:7851:: with SMTP id c17mr3041777otm.58.1581157576857; Sat, 08 Feb 2020 02:26:16 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1581157576; cv=none; d=google.com; s=arc-20160816; b=K3Fdb7hg8oUbIXwe7WuJK3rXkfMT//8JgvmjFGDT/mSRtxRd62bT5B6w+aNO/dqy/j fLIc7xJ1nuJSmUlLIjKM+CMZemNfimg52BLWs/Ccvk1jPDGPaCHmemRrhUkjr9GFwOrn jRaitOr2Eku0vVpHfQkozFV/0yD8GNp3YdWA9psXETyU7+XXNbGTCgMH1q6I1b0osgkF FCN2T2+58u1gOO1IWX/G/TnTKeGaQuqYUaC/Tq3/s1dpzY0iWZpczrXmIMsYnrma+qJl F6V2Qs0sxLPQLc9jOyEnyqRcQEIPpqJQuD51eH2DDzCshrU1rak1vHkT516v5YVLzxDO yOAw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=FZZLp99m6l/maDRJg93gLVHjUwMOWPr8IbFcYAwX+qo=; b=b4hIocAJhgvA8DwfQIKsRBNa+WX7D5PXCasejbcI4JPt03jBPMEI6fLEqTDD26//0/ VG73vHsIWQta6rXP/2LarM3RTBnn/7lHIFLIG6ewii4fxHTmUKJj7q3zgZATVbPb8tO6 adl5TR04/dW/TmvIo1TP4BTTy2YhWGBNzENfk3JN9+qN1eGIX8F3MXyEUnRS17aRv0FM +wVuDzsq/M4f6DyHHi49GM2pkqFyytaBWKScF6z6mhFniB1HXTUrEbV2vFiEkOgPxzxX YHKfEZPqM7sc4DNLDG9hgNXk6a+KgNfBL4B2lTMFurCyr142PcSkzzfnUmbQTNxjlL5J SINg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=o82VOhkX; 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=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w2si1323898otk.126.2020.02.08.02.26.03; Sat, 08 Feb 2020 02:26:16 -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; dkim=pass header.i=@linaro.org header.s=google header.b=o82VOhkX; 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=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727076AbgBHKZz (ORCPT + 99 others); Sat, 8 Feb 2020 05:25:55 -0500 Received: from mail-vs1-f67.google.com ([209.85.217.67]:37295 "EHLO mail-vs1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726918AbgBHKZz (ORCPT ); Sat, 8 Feb 2020 05:25:55 -0500 Received: by mail-vs1-f67.google.com with SMTP id x18so1243807vsq.4 for ; Sat, 08 Feb 2020 02:25:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=FZZLp99m6l/maDRJg93gLVHjUwMOWPr8IbFcYAwX+qo=; b=o82VOhkXXF0s20SIhiUAMjFK0qGTk5q3FP+vD4gBpxkmbwoy/mQtr63KCwgv5EbRJH tnXp8BKz5faGoy3bVo9VfFHQrKUJ0AAVMV4Q9yqaCx/Ph++Fm1vzjfvm9Ap2lKVsa7sN wMqv8aOvA0UI9hY3AE6t9ch0HxeT6YoS4AfxYo3Ojs6Xuj1DBycR7Kga1azkllAwbWL7 9ijVQma2ToK+0oddQBfefS6fNGXk+zXhpZZu6VyBybXUitNN1Das7+qxKTB2lPYZ5ICB iJJtxNhdStdJRNLvzDpwXRaPp26VGno0q5um+WFG4nBhkmUFYUj+I5e+EOepbQm911Vg yplQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=FZZLp99m6l/maDRJg93gLVHjUwMOWPr8IbFcYAwX+qo=; b=o6yNFfy+76U3qD0SwSsNg+bFK1iQp/WlkCCi1nAB53FFzHOdU0vXPXjPa4FtGoYyhE HNR4Hz2FPQo5V8nuGYs55XWyARXsREYJfmAo3ygsIr0kmPhcF2Yz4QIQ3W6usXbnbsWi rtxdUEjgEGKbfxLZzqImmKmAn+YDAeDA7NTzGJldW0xT/v1vHJ3EH7w6CVGgPSjRUzpp 0RYpuD9qoF565W6ruSLWMlZVBZq+zUpyKrW5NhvxyPzmbAGTgHsXhhCw98KPLRJqmYZS Anrvrwcp4AS2hNIVmVCk/CLJ72zx2g0osMbC0L1Euqh6Otfma4fxZ7JINozt0Zqdnn8Z 2Sjw== X-Gm-Message-State: APjAAAWvt+UGBewq3cV7rvpoxwFHVJ3fHIhLciZ3nD+aXgGXwKIWIb+4 vM6prgmfPLK1cldaBHs/dv25ezSJ/2I97k5UYciNrQ== X-Received: by 2002:a05:6102:757:: with SMTP id v23mr1488000vsg.35.1581157553987; Sat, 08 Feb 2020 02:25:53 -0800 (PST) MIME-Version: 1.0 References: <6ff7c82d-4204-a339-4070-0154ab4515f1@codeaurora.org> <20200205140603.GB38466@bogus> <20200205161816.GD38466@bogus> <20200206204514.GB8107@codeaurora.org> <20200207111955.GA40103@bogus> <20200207144850.GA18655@e121166-lin.cambridge.arm.com> <20200207161547.GB8342@bogus> In-Reply-To: <20200207161547.GB8342@bogus> From: Ulf Hansson Date: Sat, 8 Feb 2020 11:25:18 +0100 Message-ID: Subject: Re: [PATCH v3 5/7] drivers: firmware: psci: Add hierarchical domain idle states converter To: Sudeep Holla Cc: Lorenzo Pieralisi , Lina Iyer , Maulik Shah , Stephen Boyd , Andy Gross , David Brown , linux-arm-msm , Linux Kernel Mailing List , Linux PM , Linux ARM , Bjorn Andersson , Evan Green , Doug Anderson , Rajendra Nayak , lsrao@codeaurora.org, "Rafael J. Wysocki" Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 7 Feb 2020 at 17:15, Sudeep Holla wrote: > > On Fri, Feb 07, 2020 at 04:52:52PM +0100, Ulf Hansson wrote: > > On Fri, 7 Feb 2020 at 15:48, Lorenzo Pieralisi > > wrote: > > > > > > On Fri, Feb 07, 2020 at 01:32:28PM +0100, Ulf Hansson wrote: > > > > [...] > > > > > > > > > > I understand the arguments for using PC vs OSI and agree with it. But > > > > > > what in PSCI is against Linux knowing when the last core is powering > > > > > > down when the PSCI is configured to do only Platform Cordinated. > > > > > > > > > > Nothing :D. But knowing the evolution and reasons for adding OSI in the > > > > > PSCI specification and having argued about benefits of OSI over PC for > > > > > years and finally when we have it in mainline, this argument of using > > > > > PC for exact reasons why OSI evolved is something I can't understand > > > > > and I am confused. > > > > > > > > > > > There should not be any objection to drivers knowing when all the cores > > > > > > are powered down, be it reference counting CPU PM notifications or using > > > > > > a cleaner approach like this where GendPD framwork does everything > > > > > > cleanly and gives a nice callback. ARM architecture allows for different > > > > > > aspects of CPU access be handled at different levels. I see this as an > > > > > > extension of that approach. > > > > > > > > > > > > > > > > One thing that was repeatedly pointed out during OSI patch review was no > > > > > extra overhead for PC mode where firmware can make decisions. So, just > > > > > use OSI now and let us be done with this discussion of OSI vs PC. If PC > > > > > is what you think you need for future, we can revert all OSI changes and > > > > > start discussing again :-) > > > > > > > > Just to make it clear, I fully agree with you in regards to overhead > > > > for PC-mode. This is especially critical for ARM SoCs with lots of > > > > cores, I assume. > > > > > > > > However, the overhead you refer to, is *only* going to be present in > > > > case when the DTS has the hierarchical CPU topology description with > > > > "power-domains". Because, that is *optional* to use, I am expecting > > > > only those SoC/platforms that needs to manage last-man activities to > > > > use this layout, the others will remain unaffected. > > > > > > In PC mode not only there is no need but it is wrong to manage > > > any last-man activity in the kernel. I wonder why we are still > > > talking about this to be honest. > > > > I guess the discussion is here because there is a use case to consider now. > > > > If this is what Bjorn presented in his email, I have responded to that. > If it's any different, please let us know the complete details. > > > For sure, we agree on what is the best solution. But this is rather > > about what can we do to improve the current situation, if we should do > > anything. > > > > Sure, and I haven't found a reason to do that in OSPM yet(as part of the > discussion in this thread) > > > > > > > Code to handle PSCI platform coordinated mode has been/is in > > > the kernel today and that's all is needed according to the PSCI > > > specifications. > > > > PSCI specifies CPU power management, not SoC power management. If > > these things were completely decoupled, I would agree with you, but > > that's not the case. Maybe SCMI, etc, helps with this in future. > > > > Why does that not work even if they are not decoupled. The IO/device > that share with CPU votes from OSPM and the CPU/Cluster from PSCI in > PC mode. There is no argument there, but why it needs to be done in OSPM > is the objection here. That implies the votes from I/O devices needs to reach the FW immediately when the vote is done. No caching or other optimizations can be done at OSPM. In principle, the FW needs to have an always up to date view of the votes, etc. That sounds highly inefficient, both from energy and latency point of view, at least in my opinion. > > > Anyway, my fear is that not many ARM vendors implements OSI support, > > but still they have "last-man-activities" to deal with. This is not > > only QCOM. > > > > I am interested to hear from them. And the same question to same too as > above. I have been talking to some of them. But, yes, we need to hear more from them. > > > I guess an option would be to add OSI support to the public ARM > > Trusted Firmware, then we could more easily point to that - rather > > than trying to mitigate the problem on the kernel side. > > > > I would say go for it. But don't mix responsibility of OSPM in PC vs OSI. > We have discussed this for years and I hope this discussion ends ASAP. > I don't see any point in dragging this any further. Okay. KInd regards Uffe