Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S941306AbcJaLxu (ORCPT ); Mon, 31 Oct 2016 07:53:50 -0400 Received: from hqemgate15.nvidia.com ([216.228.121.64]:1780 "EHLO hqemgate15.nvidia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S941261AbcJaLxd (ORCPT ); Mon, 31 Oct 2016 07:53:33 -0400 X-PGP-Universal: processed; by hqnvupgp07.nvidia.com on Sun, 30 Oct 2016 16:53:24 -0700 Subject: Re: [RFC PATCH 0/3] PM / Domains: Add support for devices that require multiple domains To: Rajendra Nayak , "Rafael J. Wysocki" , Kevin Hilman , Ulf Hansson References: <1474367287-10402-1-git-send-email-jonathanh@nvidia.com> <57F5E986.40704@codeaurora.org> <8ba7aa10-0c2f-98ca-c7bd-00e1724e5972@nvidia.com> <57F60EBE.8010509@codeaurora.org> CC: , , From: Jon Hunter Message-ID: <91b96909-64bc-db72-6da5-556272565091@nvidia.com> Date: Mon, 31 Oct 2016 10:44:41 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 MIME-Version: 1.0 In-Reply-To: <57F60EBE.8010509@codeaurora.org> X-Originating-IP: [10.21.132.110] X-ClientProxiedBy: DRUKMAIL101.nvidia.com (10.25.59.19) To UKMAIL101.nvidia.com (10.26.138.13) Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2380 Lines: 59 Hi Rajendra, On 06/10/16 09:43, Rajendra Nayak wrote: > > On 10/06/2016 01:55 PM, Jon Hunter wrote: >> Hi Rajendra, >> >> On 06/10/16 07:04, Rajendra Nayak wrote: >>> >>> On 09/20/2016 03:58 PM, Jon Hunter wrote: >>>> The Tegra124/210 XUSB subsystem (that consists of both host and device >>>> controllers) is partitioned across 3 PM domains which are: >>>> - XUSBA: Superspeed logic (for USB 3.0) >>>> - XUSBB: Device controller >>>> - XUSBC: Host controller >>>> >>>> These power domains are not nested and can be powered-up and down >>>> independently of one another. In practice different scenarios require >>>> different combinations of the power domains, for example: >>>> - Superspeed host: XUSBA and XUSBC >>>> - Superspeed device: XUSBA and XUSBB >>>> >>>> Although it could be possible to logically nest both the XUSBB and XUSBC >>>> domains under the XUSBA, superspeed may not always be used/required and >>>> so this would keep it on unnecessarily. >>> >>> Hey Jon, so does this RFC provide a way to just specify multiple Powerdomains >>> for a device (which then will *all* be powered on/off together) or does >>> it also provide for more granular control of these powerdomains? >> >> Only to specify multiple power-domains for a device and not the later. >> >>> The above statement seems to suggest you would need more granular control >>> of these powerdomains (like keeping XUSBA off in case superspeed it not >>> needed) but I can't seem to figure out how you achieve it with this series. >> >> It is an interesting point but today we have always kept the superspeed >> partition on if the device is configured for superspeed regardless of >> what is actually connected. I will check to see if the h/w would allow >> us to turn it off if a non-superspeed device is in use but I did not >> think so. >> >> Do you have any interesting use-cases that would make use of this or >> require other such enhancements? > > We do have atleast a few devices which need to control multiple power domains, > I will need to look more to see if any of them can be controlled individually. > The downstream code we have models these (powerdomains) as regulators and > the drivers hence have individual control on each (specifying multiple -supply's > in DT) Were you able to check to see if you need to have individual control for the power-domains? Cheers Jon -- nvpublic