Commit 7e16fd6d authored by Keith Busch's avatar Keith Busch Committed by Bjorn Helgaas

PCI: Bind DPC to Root Ports as well as Downstream Ports

PCIe port type values are not flags, so OR'ing them is not correct.
Previously the result was equivalent to PCIe Downstream Ports, so we were
missing binding to DPC-capable Root Ports.

Change the type to 'any' so we can bind to both port types.  While this
will cause the code to check Upstream Ports, the driver won't claim them
since they are not DPC-capable.
Reported-by: default avatarAlexander Antonov <alexanderx.v.antonov@intel.com>
Signed-off-by: default avatarKeith Busch <keith.busch@intel.com>
Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
CC: Mika Westerberg <mika.westerberg@linux.intel.com>
parent 14a16d57
...@@ -133,7 +133,7 @@ static void dpc_remove(struct pcie_device *dev) ...@@ -133,7 +133,7 @@ static void dpc_remove(struct pcie_device *dev)
static struct pcie_port_service_driver dpcdriver = { static struct pcie_port_service_driver dpcdriver = {
.name = "dpc", .name = "dpc",
.port_type = PCI_EXP_TYPE_ROOT_PORT | PCI_EXP_TYPE_DOWNSTREAM, .port_type = PCIE_ANY_PORT,
.service = PCIE_PORT_SERVICE_DPC, .service = PCIE_PORT_SERVICE_DPC,
.probe = dpc_probe, .probe = dpc_probe,
.remove = dpc_remove, .remove = dpc_remove,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment