From mboxrd@z Thu Jan 1 00:00:00 1970 From: Liviu Dudau Subject: [PATCH v2 2/5] PCI: Add quirk for PLDA's XpressRICH3 host bridge class. Date: Fri, 9 Oct 2015 17:57:26 +0100 Message-ID: <1444409849-5685-3-git-send-email-Liviu.Dudau@arm.com> References: <1444409849-5685-1-git-send-email-Liviu.Dudau@arm.com> Return-path: In-Reply-To: <1444409849-5685-1-git-send-email-Liviu.Dudau@arm.com> Sender: linux-pci-owner@vger.kernel.org To: Will Deacon , Catalin Marinas , Bjorn Helgaas , Mark Rutland , Linus Walleij , Robin Murphy , Rob Herring , Ian Campbell , Kumar Gala , Arnd Bergmann , Jon Medhurst Cc: linux-pci , device-tree , LAKML , LKML List-Id: devicetree@vger.kernel.org The XpressRICH3 host bridge at power up has an unassigned class on some of ARM Ltd boards, add a quirk to correct that. Signed-off-by: Liviu Dudau --- drivers/pci/quirks.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index b03373f..ae24bb4 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -4149,3 +4149,13 @@ static void quirk_intel_qat_vf_cap(struct pci_dev *pdev) } } DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x443, quirk_intel_qat_vf_cap); + +/* + * The PLDA's XpressRICH3 doesn't describe itself as a bridge. This is required + * for correct/normal enumeration. + */ +static void xr3pci_quirk_class(struct pci_dev *pdev) +{ + pdev->class = PCI_CLASS_BRIDGE_PCI << 8; +} +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_PLDA, PCI_DEVICE_ID_XR3PCI, xr3pci_quirk_class); -- 2.6.0