Received: by 2002:a25:d7c1:0:0:0:0:0 with SMTP id o184csp1719340ybg; Sat, 19 Oct 2019 01:02:26 -0700 (PDT) X-Google-Smtp-Source: APXvYqw5gOqDlvc8miUVaAQWxzS2yxBMMlRYs8ijbTvOXl2NMR8OZKjZt8W7YnPrSUeUeV+fC+gL X-Received: by 2002:a17:906:160f:: with SMTP id m15mr12014539ejd.217.1571472146864; Sat, 19 Oct 2019 01:02:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1571472146; cv=none; d=google.com; s=arc-20160816; b=e4yC04YFqjzsgsLry7Jdq2rlGh+d1FgEN6PWndkxLer2rxA+beZueBhgNZCpztu6AF gMQiWjymt1rpD04BpQn5IqDxD0mtfD4t0pje4B2CKoj/aOx8NaqmBFYQLFrMjJLG1XQY EJlENF6NFcRtqhI4d7wvvrseJscR+479GAhotOa5FyY9FRTVvza4FXcrsmObPssqne+O 8ZWgMotxVgrCg1VsuvYURjUrQcxV+1OH9SqVca0D1X5pENOui+nQWiREagNDfn83tIvh rFeqXoZ0lmTlMlVwh24r31xPpuQ7CDKGbwOiUknQ+Mra47GEBxaL8ZMigCglEgo0Cvgm yp8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:to:references:message-id :content-transfer-encoding:cc:date:in-reply-to:from:subject :mime-version; bh=WJkKUpNqEwdbzD1wwRvSadtDrpvnsFfzefT1G6oI2UM=; b=vdf3wj4rsjIRCSED/2RW33Ktiqm9LA4hdtpUlIaTtRfB9HWIJx58O4CNAAnbQYu/eY FO7RI/HtgdnRoYAUWr6CAE3LdPwjhOGn0LagbLkKvET6HPDi5k+N51kL3IrRepS6iqwx Qv3wEhs6QsmAfWGp+wCXFNus3LpXJ+e4CqYL6g7gv5aeO8WAAdrXV2aSeJuBGfNF5znN z7E4gAxCuhvxyLgAGjEI2nN2Tr6cyX6sPVypqYWSWAr7jBTj+l55Q4wywGlg9do7cyop sMG3OVQ85no27Pai324BiHFBs9toJutrX/Yt1jc8zl02eLn/rNYvwPOVomf7FJoHtSYs OVSg== 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=canonical.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id sd13si4764302ejb.256.2019.10.19.01.02.03; Sat, 19 Oct 2019 01:02:26 -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=canonical.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2505033AbfJRIaR convert rfc822-to-8bit (ORCPT + 99 others); Fri, 18 Oct 2019 04:30:17 -0400 Received: from youngberry.canonical.com ([91.189.89.112]:38866 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2406746AbfJRIaR (ORCPT ); Fri, 18 Oct 2019 04:30:17 -0400 Received: from mail-pl1-f200.google.com ([209.85.214.200]) by youngberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1iLNeK-0004ML-0u for linux-kernel@vger.kernel.org; Fri, 18 Oct 2019 08:30:16 +0000 Received: by mail-pl1-f200.google.com with SMTP id j9so3263565plk.21 for ; Fri, 18 Oct 2019 01:30:15 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=9HnLyuAc2KszW2sCbnW2TVqDttn2ZhGYOZuSbcGb+Ao=; b=RkogPkFAoa1+KyhX/d1WLOR7Tw4BqNHO7k/RqmlDyYzuKMojgOhoADEC18rj4hMwka 17lpHDASnWr0ZFmYf1ayru9v8TP9hcezabIOrkmLloKs4oZjQylvegQiYuCU099F/qxD 4I6fuoycAMKekdgrdWwjAcRVjd0/utBsnjlGRrYBu4e+mOqY5hcKSTCKpWsDZ4My6UEp 7Rz/Al6S3Oq0sSVwgVHt2jdRuZxN1zigwvFCkx+XjzYgaKD5emxwJtP9WYzU0Zodp0vU omEML8duYO5A1OilPlNprsEQ9lrPrlhvD7JY9V69as+8TAW7oM+obk4ROaAlyTSeTPNh kP9w== X-Gm-Message-State: APjAAAU4gwpahY/DrOINpVx13j2uqyuC1wvtKXeBuJ5EuDCiZvhrFb0A APtnARFNzEL5MP65iF6poQ6/Z+wszWeit9xFSdLPYeM5Di7glj7tFqEpetjdC4wD9ug9XQuKCIo mbH4o+gxFDWrte+DAZqc90Nv801C3axuXdSvj0ifgdA== X-Received: by 2002:a17:902:aa86:: with SMTP id d6mr8878183plr.268.1571387414555; Fri, 18 Oct 2019 01:30:14 -0700 (PDT) X-Received: by 2002:a17:902:aa86:: with SMTP id d6mr8878156plr.268.1571387414189; Fri, 18 Oct 2019 01:30:14 -0700 (PDT) Received: from 2001-b011-380f-3c42-80b6-0157-ba58-fc96.dynamic-ip6.hinet.net (2001-b011-380f-3c42-80b6-0157-ba58-fc96.dynamic-ip6.hinet.net. [2001:b011:380f:3c42:80b6:157:ba58:fc96]) by smtp.gmail.com with ESMTPSA id f185sm6882160pfb.183.2019.10.18.01.30.12 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 18 Oct 2019 01:30:13 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 13.0 \(3601\)) Subject: Re: [PATCH v6 1/2] PCI: Add a helper to check Power Resource Requirements _PR3 existence From: Kai-Heng Feng In-Reply-To: Date: Fri, 18 Oct 2019 16:30:11 +0800 Cc: bhelgaas@google.com, linux-pci@vger.kernel.org, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8BIT Message-Id: <4C18DF4A-FAE8-4762-AF65-F892A4845297@canonical.com> References: <20191018073848.14590-1-kai.heng.feng@canonical.com> To: Takashi Iwai X-Mailer: Apple Mail (2.3601) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > On Oct 18, 2019, at 16:18, Takashi Iwai wrote: > > On Fri, 18 Oct 2019 09:38:47 +0200, > Kai-Heng Feng wrote: >> >> A driver may want to know the existence of _PR3, to choose different >> runtime suspend behavior. A user will be add in next patch. >> >> This is mostly the same as nouveau_pr3_present(). >> >> Reported-by: kbuild test robot > > It's confusing -- this particular change isn't reported by the test > bot, but only about the lack of the CONFIG_ACPI ifdef. Hmm, because the test bot asked to add the tag. If it's not appropriate will you drop it? I can also send a v7. Kai-Heng > > > thanks, > > Takashi > >> Signed-off-by: Kai-Heng Feng >> --- >> v6: >> - Only define the function when CONFIG_ACPI is set. >> v5: >> - Add wording suggestion from Bjorn. >> v4: >> - Let caller to find its upstream port device. >> >> drivers/pci/pci.c | 18 ++++++++++++++++++ >> include/linux/pci.h | 2 ++ >> 2 files changed, 20 insertions(+) >> >> diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c >> index e7982af9a5d8..1df99d9e350e 100644 >> --- a/drivers/pci/pci.c >> +++ b/drivers/pci/pci.c >> @@ -5856,6 +5856,24 @@ int pci_set_vga_state(struct pci_dev *dev, bool decode, >> return 0; >> } >> >> +#ifdef CONFIG_ACPI >> +bool pci_pr3_present(struct pci_dev *pdev) >> +{ >> + struct acpi_device *adev; >> + >> + if (acpi_disabled) >> + return false; >> + >> + adev = ACPI_COMPANION(&pdev->dev); >> + if (!adev) >> + return false; >> + >> + return adev->power.flags.power_resources && >> + acpi_has_method(adev->handle, "_PR3"); >> +} >> +EXPORT_SYMBOL_GPL(pci_pr3_present); >> +#endif >> + >> /** >> * pci_add_dma_alias - Add a DMA devfn alias for a device >> * @dev: the PCI device for which alias is added >> diff --git a/include/linux/pci.h b/include/linux/pci.h >> index f9088c89a534..1d15c5d49cdd 100644 >> --- a/include/linux/pci.h >> +++ b/include/linux/pci.h >> @@ -2310,9 +2310,11 @@ struct irq_domain *pci_host_bridge_acpi_msi_domain(struct pci_bus *bus); >> >> void >> pci_msi_register_fwnode_provider(struct fwnode_handle *(*fn)(struct device *)); >> +bool pci_pr3_present(struct pci_dev *pdev); >> #else >> static inline struct irq_domain * >> pci_host_bridge_acpi_msi_domain(struct pci_bus *bus) { return NULL; } >> +static bool pci_pr3_present(struct pci_dev *pdev) { return false; } >> #endif >> >> #ifdef CONFIG_EEH >> -- >> 2.17.1 >>