diff mbox

[1/6] PCI: Use PCI_CLASS_SERIAL_USB instead of bare number

Message ID 20150619224223.14626.20847.stgit@bhelgaas-glaptop2.roam.corp.google.com
State Superseded
Headers show

Commit Message

Bjorn Helgaas June 19, 2015, 10:42 p.m. UTC
be6646bfbaec ("PCI: Prevent xHCI driver from claiming AMD Nolan USB3 DRD
device") added a quirk to override the PCI class code of the AMD Nolan
device.

Use PCI_CLASS_SERIAL_USB instead of a bare number to improve greppability.
Also add a log message about what we're doing.

No functional change except the new message.

Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
CC: Huang Rui <ray.huang@amd.com>
CC: Jason Chang <jason.chang@amd.com>
CC: Felipe Balbi <balbi@ti.com>
---
 drivers/pci/quirks.c |   10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)


--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in

Comments

Huang Rui June 23, 2015, 2:07 a.m. UTC | #1
On Sat, Jun 20, 2015 at 06:42:23AM +0800, Bjorn Helgaas wrote:
> be6646bfbaec ("PCI: Prevent xHCI driver from claiming AMD Nolan USB3 DRD
> device") added a quirk to override the PCI class code of the AMD Nolan
> device.
> 
> Use PCI_CLASS_SERIAL_USB instead of a bare number to improve greppability.
> Also add a log message about what we're doing.
> 
> No functional change except the new message.
> 
> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
> CC: Huang Rui <ray.huang@amd.com>
> CC: Jason Chang <jason.chang@amd.com>
> CC: Felipe Balbi <balbi@ti.com>

Looks good for me.

Acked-by: Huang Rui <ray.huang@amd.com>
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
diff mbox

Patch

diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index cbe0351..2dab425 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -424,10 +424,12 @@  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI,	PCI_DEVICE_ID_ATI_RS100,   quirk_ati_
  */
 static void quirk_amd_nl_class(struct pci_dev *pdev)
 {
-	/*
-	 * Use 'USB Device' (0x0c03fe) instead of PCI header provided
-	 */
-	pdev->class = 0x0c03fe;
+	u32 class = pdev->class;
+
+	/* Use "USB Device (not host controller)" class */
+	pdev->class = (PCI_CLASS_SERIAL_USB << 8) | 0xfe;
+	dev_info(&pdev->dev, "PCI class overridden (%#08x -> %#08x) so dwc3 driver can claim this instead of xhci\n",
+		 class, pdev->class);
 }
 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_NL_USB,
 		quirk_amd_nl_class);