Received: by 2002:ac0:a594:0:0:0:0:0 with SMTP id m20-v6csp1902454imm; Thu, 24 May 2018 02:38:02 -0700 (PDT) X-Google-Smtp-Source: AB8JxZr2vO6MX0ZGFJeA/jo/OFR7zEkPwq2JHuGSalrYmfSlkaYq7QuSGPGSWiRiyG7m/Tv9GghQ X-Received: by 2002:a63:6fcf:: with SMTP id k198-v6mr5287154pgc.307.1527154682066; Thu, 24 May 2018 02:38:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527154682; cv=none; d=google.com; s=arc-20160816; b=fFxee3lU/GUzi8d3G/7hgZaMcOqoQwgmEyxyGDQuxw4W8XT2rERyf7Ibtsi+Cwy8PN pM+NsG2/Gd9//6b1/OEhB6Uvw5ZlkAId9hXcVORZbCKrZqFFtn9ZdsDysEEF9kO4TwQd aFt5BnH+3+XofXH1gTqvNmGOxVr3/Z9CeFE0XgQQbHRVdNVOLh2BBm7Dys6e4FjZN64v +SNTfocT72RV54ymVU/8kNg/rM29h6sQ6n+YS2RFubboFM7FWLzXXLZWeDURcBm5G7NG D/oaWydLxGsLIveZdHPCJxtxG1Cmsl4NqueYKXk0pFmdzBe9M6cvc6tFHquXAq3MocP8 7IYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:arc-authentication-results; bh=UqNBmM5+ACJwZJoNdLrcHd6EShw34ASjzFIE6bOgdqU=; b=HBraizWwASTnh+3XJUE79Y7GdwlzG+p7O3FqOmPI6UfxPb6Q3zL0SLaShhia7SwGVA O++ht0Coz30HgkRoKK1EsPRvR5KuU7+UZaElkf0+7pgHWUrcOj3b0uGEzCzCjc6u0zU1 /5soCShve7z1KGYqxmr/9wfBx3CgELmg0lCwSagg62NAT5ayJAuXu5dQolaU1AbHAO3P 4oJID0pq+TNPlBfpqrRrTW8bf0iComElIPlNnK+5id0gDEfWn/BxsOW6QKEg2wDzfCsb Ac23E4uEka6JsO7kMgFlJuQp9Eekag6Wu4wYqI2vQdlbjzcHaXYhG0W/tWhT5QruGyNT orVg== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=NONE sp=NONE dis=NONE) header.from=nvidia.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e68-v6si21562897pfl.132.2018.05.24.02.37.47; Thu, 24 May 2018 02:38:02 -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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=nvidia.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S966073AbeEXJgn (ORCPT + 99 others); Thu, 24 May 2018 05:36:43 -0400 Received: from hqemgate15.nvidia.com ([216.228.121.64]:6350 "EHLO hqemgate15.nvidia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965783AbeEXJgl (ORCPT ); Thu, 24 May 2018 05:36:41 -0400 Received: from hqpgpgate102.nvidia.com (Not Verified[216.228.121.13]) by hqemgate15.nvidia.com (using TLS: TLSv1, AES128-SHA) id ; Thu, 24 May 2018 02:36:45 -0700 Received: from HQMAIL104.nvidia.com ([172.20.161.6]) by hqpgpgate102.nvidia.com (PGP Universal service); Thu, 24 May 2018 02:36:43 -0700 X-PGP-Universal: processed; by hqpgpgate102.nvidia.com on Thu, 24 May 2018 02:36:43 -0700 Received: from HQMAIL102.nvidia.com (172.18.146.10) by HQMAIL104.nvidia.com (172.18.146.11) with Microsoft SMTP Server (TLS) id 15.0.1347.2; Thu, 24 May 2018 09:36:39 +0000 Received: from [10.21.132.148] (10.124.1.5) by HQMAIL102.nvidia.com (172.18.146.10) with Microsoft SMTP Server (TLS) id 15.0.1347.2; Thu, 24 May 2018 09:36:36 +0000 Subject: Re: [PATCH 8/9] PM / Domains: Add support for multi PM domains per device to genpd To: Ulf Hansson CC: Rajendra Nayak , Geert Uytterhoeven , Linux PM , "Greg Kroah-Hartman" , Kevin Hilman , "Rafael J . Wysocki" , "Linux Kernel Mailing List" , Todor Tomov , Viresh Kumar , , Vincent Guittot , Linux ARM References: <1526639490-12167-1-git-send-email-ulf.hansson@linaro.org> <1526639490-12167-9-git-send-email-ulf.hansson@linaro.org> <5a79d3a2-d090-645b-da69-524b7e7a4d90@nvidia.com> <51f7de26-579a-8b9e-4e79-f4eee923ab38@codeaurora.org> <3838f17a-2ac8-bf3f-f0b1-f69bbe17629c@nvidia.com> From: Jon Hunter Message-ID: <1687797a-93f1-7e5c-6060-01c12c070964@nvidia.com> Date: Thu, 24 May 2018 10:36:34 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: X-Originating-IP: [10.124.1.5] X-ClientProxiedBy: HQMAIL101.nvidia.com (172.20.187.10) To HQMAIL102.nvidia.com (172.18.146.10) Content-Type: text/plain; charset="utf-8"; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 24/05/18 08:04, Ulf Hansson wrote: ... >> Any reason why we could not add a 'boolean' argument to the API to indicate >> whether the new device should be linked? I think that I prefer the API >> handles it, but I can see there could be instances where drivers may wish to >> handle it themselves. > > Coming back to this question. Both Tegra XUSB and Qcom Camera use > case, would benefit from doing the linking themselves, as it needs > different PM domains to be powered on depending on the current use > case - as to avoid wasting power. > > However, I can understand that you prefer some simplicity over > optimizations, as you told us. Then, does it mean that you are > insisting on extending the APIs with a boolean for linking, or are you > fine with the driver to call device_link_add()? I am fine with the driver calling device_link_add(), but I just wonder if we will find a several drivers doing this and then we will end up doing this later anyway. The current API is called ... * genpd_dev_pm_attach_by_id() - Attach a device to one of its PM domain. * @dev: Device to attach. * @index: The index of the PM domain. This naming and description is a bit misleading, because really it is not attaching the device that is passed, but creating a new device to attach a PM domain to. So we should consider renaming and changing the description and indicate that users need to link the device. Finally, how is a PM domain attached via calling genpd_dev_pm_attach_by_id() detached? Cheers Jon -- nvpublic