Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2996963AbdDZJYs (ORCPT ); Wed, 26 Apr 2017 05:24:48 -0400 Received: from mail-qt0-f180.google.com ([209.85.216.180]:35620 "EHLO mail-qt0-f180.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S936851AbdDZJEH (ORCPT ); Wed, 26 Apr 2017 05:04:07 -0400 MIME-Version: 1.0 In-Reply-To: References: <1490710443-27425-1-git-send-email-jonathanh@nvidia.com> From: Ulf Hansson Date: Wed, 26 Apr 2017 11:04:04 +0200 Message-ID: Subject: Re: [RFC PATCH 0/4] PM / Domains: Add support for explicit control of PM domains To: Geert Uytterhoeven Cc: Jon Hunter , "Rafael J . Wysocki" , Kevin Hilman , Rajendra Nayak , Stanimir Varbanov , Stephen Boyd , Marek Szyprowski , "linux-pm@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-tegra@vger.kernel.org" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1791 Lines: 39 On 26 April 2017 at 10:06, Geert Uytterhoeven wrote: > Hi Ulf, > > On Tue, Apr 25, 2017 at 9:34 PM, Ulf Hansson wrote: >> However, we currently know about at least two different SoCs that need >> this. Perhaps we can extend the below list to justify adding a new >> framework/APIs. Something along the lines what you propose in $subject >> patchset. >> >> 1) Nvidia; to solve the USB super-speed host/device problem. >> 2) QCOM, which has pointed to several cases where the PM topology is >> laid out like devices having two PM domains.. >> 3?) I don't fully remember - but I think Geert also pointed to some >> examples where a device could reside in a clock domain but also in >> power domain for a Renesas SoC!? >> 4) ? > > Most Renesas SoCs have module clocks, which we model as a clock domain. > Some Renesas SoCs have power domains for CPUs, others have them for > devices as well. > As we always provide a virtual "always-on" power domain in the power domain > controller, all devices can refer to it using "power-domains" properties, > and the driver for the power domain controller can just forward the clock > domain operations to the clock driver. Okay, thanks for clarifying this. Thinking about this as bit more, when I realized that *if* we would add a new PM domain framework for explicit control of PM domains, that would mean you need to deploy support for that in the drivers. On the other hand, as you anyway would need to change the drivers, you could instead deploy clock support in the drivers, which would avoid using the clock domain. In that way, you could still stay with one PM domain pointer per device, used to control the power domains instead. Right? Or would that have other implications? Kind regards Uffe