Received: by 10.223.185.116 with SMTP id b49csp7483656wrg; Thu, 1 Mar 2018 06:19:21 -0800 (PST) X-Google-Smtp-Source: AG47ELvbK2iomYFDCHyrcF+poNscXg6P7uTAQJJTT1iiIoEGtz7BGJqJRsq+H3fc1TKYICzjWiIO X-Received: by 2002:a17:902:6b4c:: with SMTP id g12-v6mr2034348plt.363.1519913961443; Thu, 01 Mar 2018 06:19:21 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519913961; cv=none; d=google.com; s=arc-20160816; b=Alay5HCYlpBeHVwD7ygIuV2562FoxDZqMPm3EEjdQtvZlPWM1QVEK2mc6HPUBlDNOw 4fsU83hmufq/rmXuXmSMaE7ZFc5M4y6iiXGjifo9eOVEwoqY18g82jyWhueYt7Jmx6N8 2uRVoGFChoA3FouKVl4Jgu2mQWu+XeRwoCCaqXCDHJc9RG7uHZsrXZwCimu92Pfh0lh7 BewIIQSKvQZ0/I2wHC/0Jxd6Lxr6+l08YCanSAy5y9d3rSph/GGx1Ew5u1+F8HFnFdqh jqHtT9NctDLgGdRAWhXkOczjBz3uSmh4w5xItr/9sIb+sTGHu+JrxcJ9FxnyBmzS1pIG RBxQ== 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=PTjCr3HW3r5DemgZuyTgaZyQkjgrqFQCMqX1wrUDNQs=; b=jT1NH47EldU6CoH9Yad2KKna8/gc69i7lJ3TDpsXKC7BT9UZ8AhddjVcA9LdeqKFa9 txON136aJM380OyYXWdNJ5yGzWQ6xcePuvLWJpjVROi5y7ph+1+SkUQcMbrAofolrKLO qkJDGWkpQZL/RrVkT/PRpubhlPJ7PlpHEkBGyCq84mkjDIjU4SdxIsQcyaZ8BAEOg0/G 6P8X6FOl3TG6l4Qq0BXJ0V3xnHl22uqG3knOF6r46CVct+QfgN+v3+Bx3vKxLOPQyNM0 LXmnyOHOOccT+hvpmZELJGRfpLCbrtLU9z+uoQRZEhxCsUnNI7OwSt8zD+Dd42vQ5jSI J6dg== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r7-v6si3090529ple.514.2018.03.01.06.19.06; Thu, 01 Mar 2018 06:19:21 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1031181AbeCAOO5 (ORCPT + 99 others); Thu, 1 Mar 2018 09:14:57 -0500 Received: from mga07.intel.com ([134.134.136.100]:36152 "EHLO mga07.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1030989AbeCAOOz (ORCPT ); Thu, 1 Mar 2018 09:14:55 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 01 Mar 2018 06:14:55 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.47,408,1515484800"; d="scan'208";a="22074853" Received: from mattu-haswell.fi.intel.com (HELO [10.237.72.164]) ([10.237.72.164]) by orsmga006.jf.intel.com with ESMTP; 01 Mar 2018 06:14:53 -0800 Subject: Re: [PATCH 2/3] usb: xhci: tegra: Add runtime PM support To: Jon Hunter , Mathias Nyman , Greg Kroah-Hartman , Thierry Reding Cc: linux-usb@vger.kernel.org, linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org References: <1518626085-29102-1-git-send-email-jonathanh@nvidia.com> <1518626085-29102-2-git-send-email-jonathanh@nvidia.com> From: Mathias Nyman Message-ID: <54bd00b7-2835-a253-0399-370e8c8203b8@linux.intel.com> Date: Thu, 1 Mar 2018 16:18:09 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 MIME-Version: 1.0 In-Reply-To: <1518626085-29102-2-git-send-email-jonathanh@nvidia.com> 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 14.02.2018 18:34, Jon Hunter wrote: > Add runtime PM support to the Tegra XHCI driver and move the function > calls to enable/disable the clocks, regulators and PHY into the runtime > PM callbacks. > > Signed-off-by: Jon Hunter > --- > drivers/usb/host/xhci-tegra.c | 80 ++++++++++++++++++++++++++++++------------- > 1 file changed, 56 insertions(+), 24 deletions(-) > > diff --git a/drivers/usb/host/xhci-tegra.c b/drivers/usb/host/xhci-tegra.c > index 02b0b24faa58..42aa67858b53 100644 > --- a/drivers/usb/host/xhci-tegra.c > +++ b/drivers/usb/host/xhci-tegra.c > @@ -18,6 +18,7 @@ > #include > #include > #include > +#include > #include > #include > #include > @@ -1067,22 +1068,12 @@ static int tegra_xusb_probe(struct platform_device *pdev) > */ > platform_set_drvdata(pdev, tegra); > > - err = tegra_xusb_clk_enable(tegra); > - if (err) { > - dev_err(&pdev->dev, "failed to enable clocks: %d\n", err); > - goto put_usb2; > - } > - > - err = regulator_bulk_enable(tegra->soc->num_supplies, tegra->supplies); > - if (err) { > - dev_err(&pdev->dev, "failed to enable regulators: %d\n", err); > - goto disable_clk; > - } > + pm_runtime_enable(&pdev->dev); > > - err = tegra_xusb_phy_enable(tegra); > + err = pm_runtime_get_sync(&pdev->dev); > if (err < 0) { Does this mean that if runtime PM is disabled then clocks and regulator will never be enabled for Tegra xhci? How about keeping the clock and regualtor enabling in probe, and instead add something like: pm_runtime_set_active(&pdev->dev); pm_runtime_enable(&pdev->dev); pm_runtime_get_noresume(&pdev->dev); -Mathias