{"id":818662,"url":"http://patchwork.ozlabs.org/api/patches/818662/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-pci/patch/20170926141720.25067-3-mika.westerberg@linux.intel.com/","project":{"id":28,"url":"http://patchwork.ozlabs.org/api/projects/28/?format=json","name":"Linux PCI development","link_name":"linux-pci","list_id":"linux-pci.vger.kernel.org","list_email":"linux-pci@vger.kernel.org","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20170926141720.25067-3-mika.westerberg@linux.intel.com>","list_archive_url":null,"date":"2017-09-26T14:17:15","name":"[2/7] PCI: Introduce pcie_upstream_port()","commit_ref":null,"pull_url":null,"state":"superseded","archived":false,"hash":"06714aad18f3f23e80c576f2c9d798eabb04601c","submitter":{"id":14534,"url":"http://patchwork.ozlabs.org/api/people/14534/?format=json","name":"Mika Westerberg","email":"mika.westerberg@linux.intel.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linux-pci/patch/20170926141720.25067-3-mika.westerberg@linux.intel.com/mbox/","series":[{"id":5151,"url":"http://patchwork.ozlabs.org/api/series/5151/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-pci/list/?series=5151","date":"2017-09-26T14:17:19","name":"PCI: Improvements for native PCIe hotplug","version":1,"mbox":"http://patchwork.ozlabs.org/series/5151/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/818662/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/818662/checks/","tags":{},"related":[],"headers":{"Return-Path":"<linux-pci-owner@vger.kernel.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":"ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=linux-pci-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3y1jkP31wBz9t3B\n\tfor <incoming@patchwork.ozlabs.org>;\n\tWed, 27 Sep 2017 00:19:09 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S969431AbdIZORZ (ORCPT <rfc822;incoming@patchwork.ozlabs.org>);\n\tTue, 26 Sep 2017 10:17:25 -0400","from mga11.intel.com ([192.55.52.93]:56468 \"EHLO mga11.intel.com\"\n\trhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP\n\tid S965228AbdIZORY (ORCPT <rfc822;linux-pci@vger.kernel.org>);\n\tTue, 26 Sep 2017 10:17:24 -0400","from fmsmga001.fm.intel.com ([10.253.24.23])\n\tby fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t26 Sep 2017 07:17:23 -0700","from black.fi.intel.com ([10.237.72.28])\n\tby fmsmga001.fm.intel.com with ESMTP; 26 Sep 2017 07:17:21 -0700","by black.fi.intel.com (Postfix, from userid 1001)\n\tid 53495EB; Tue, 26 Sep 2017 17:17:20 +0300 (EEST)"],"X-ExtLoop1":"1","X-IronPort-AV":"E=Sophos;i=\"5.42,441,1500966000\"; d=\"scan'208\";a=\"1199177786\"","From":"Mika Westerberg <mika.westerberg@linux.intel.com>","To":"Bjorn Helgaas <bhelgaas@google.com>","Cc":"Ashok Raj <ashok.raj@intel.com>, Keith Busch <keith.busch@intel.com>,\n\t\"Rafael J . Wysocki\" <rafael.j.wysocki@intel.com>,\n\tLukas Wunner <lukas@wunner.de>, Michael Jamet <michael.jamet@intel.com>,\n\tYehezkel Bernat <yehezkel.bernat@intel.com>, Mario.Limonciello@dell.com,\n\tMika Westerberg <mika.westerberg@linux.intel.com>,\n\tlinux-pci@vger.kernel.org, linux-kernel@vger.kernel.org","Subject":"[PATCH 2/7] PCI: Introduce pcie_upstream_port()","Date":"Tue, 26 Sep 2017 17:17:15 +0300","Message-Id":"<20170926141720.25067-3-mika.westerberg@linux.intel.com>","X-Mailer":"git-send-email 2.14.1","In-Reply-To":"<20170926141720.25067-1-mika.westerberg@linux.intel.com>","References":"<20170926141720.25067-1-mika.westerberg@linux.intel.com>","Sender":"linux-pci-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<linux-pci.vger.kernel.org>","X-Mailing-List":"linux-pci@vger.kernel.org"},"content":"This helper allows to determine whether the PCI device is PCIe upstream\nport.\n\nSigned-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>\n---\n include/linux/pci.h | 11 +++++++++++\n 1 file changed, 11 insertions(+)","diff":"diff --git a/include/linux/pci.h b/include/linux/pci.h\nindex f68c58a93dd0..4397692be538 100644\n--- a/include/linux/pci.h\n+++ b/include/linux/pci.h\n@@ -2042,6 +2042,17 @@ static inline int pci_pcie_type(const struct pci_dev *dev)\n \treturn (pcie_caps_reg(dev) & PCI_EXP_FLAGS_TYPE) >> 4;\n }\n \n+/**\n+ * pcie_upstream_port - is the PCI device PCIe upstream port\n+ * @dev: PCI device\n+ */\n+static inline bool pcie_upstream_port(struct pci_dev *dev)\n+{\n+\tif (!pci_is_pcie(dev))\n+\t\treturn false;\n+\treturn pci_pcie_type(dev) == PCI_EXP_TYPE_UPSTREAM;\n+}\n+\n static inline struct pci_dev *pcie_find_root_port(struct pci_dev *dev)\n {\n \twhile (1) {\n","prefixes":["2/7"]}