[Skiboot] [PATCH 1/3] core/pci: Make the conditions for device type quirk obvious
Gavin Shan
gwshan at linux.vnet.ibm.com
Fri May 26 11:53:04 AEST 2017
The device type should be fixed to downstream port when it seats
behinds behind a upstream port, which is connected to root port
directly and its VDID is 0x874810b5.
This reorders the conditions to make it a bit obvious: parent,
parent's device type, device's VDID and device type in sequence.
No logicial changes.
Signed-off-by: Gavin Shan <gwshan at linux.vnet.ibm.com>
---
core/pci.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/core/pci.c b/core/pci.c
index d69eb28..7ec8409 100644
--- a/core/pci.c
+++ b/core/pci.c
@@ -171,9 +171,8 @@ static void pci_init_pcie_cap(struct phb *phb, struct pci_device *pd)
*/
pci_cfg_read16(phb, pd->bdfn, ecap + PCICAP_EXP_CAPABILITY_REG, ®);
pd->dev_type = GETFIELD(PCICAP_EXP_CAP_TYPE, reg);
- if (pd->parent && pd->dev_type == PCIE_TYPE_SWITCH_UPPORT &&
- pd->parent->dev_type == PCIE_TYPE_SWITCH_UPPORT &&
- pd->vdid == 0x874810b5) {
+ if (pd->parent && pd->parent->dev_type == PCIE_TYPE_SWITCH_UPPORT &&
+ pd->vdid == 0x874810b5 && pd->dev_type == PCIE_TYPE_SWITCH_UPPORT) {
PCIDBG(phb, pd->bdfn, "Fixing up bad PLX downstream port !\n");
pd->dev_type = PCIE_TYPE_SWITCH_DNPORT;
}
--
2.7.4
More information about the Skiboot
mailing list