All of lore.kernel.org
 help / color / mirror / Atom feed
From: Trent Piepho <tpiepho@impinj.com>
To: "linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
	"thinh.nguyen@synopsys.com" <thinh.nguyen@synopsys.com>,
	"bhelgaas@google.com" <bhelgaas@google.com>,
	"linux-usb@vger.kernel.org" <linux-usb@vger.kernel.org>
Cc: "john.youn@synopsys.com" <john.youn@synopsys.com>
Subject: Re: [PATCH v2 2/2] PCI: Override Synopsys USB 3.x HAPS device class
Date: Mon, 4 Feb 2019 23:50:30 +0000	[thread overview]
Message-ID: <1549324229.3075.16.camel@impinj.com> (raw)
In-Reply-To: <30102591E157244384E984126FC3CB4F639C0B41@us01wembx1.internal.synopsys.com>

On Mon, 2019-02-04 at 23:18 +0000, Thinh Nguyen wrote:
> Trent Piepho wrote:
> > On Mon, 2018-12-10 at 14:08 -0800, Thinh Nguyen wrote:
> > > Synopsys USB 3.x host HAPS platform has a class code of
> > > PCI_CLASS_SERIAL_USB_XHCI, and xhci driver can claim it. However, these
> > > devices should use dwc3-haps driver. Change these devices' class code to
> > > PCI_CLASS_SERIAL_USB_DEVICE to prevent the xhci-pci driver from claiming
> > > them.
> > > 
> > This change breaks my IMX7d based device.  This SoC has a PCIe bus
> > based on the Synopsys Designware host controller.  This has a root
> >                                                  
> > 
> Right. Lukas also reported this. It appears that there's a duplicate VID
> PID used for the USB controller on HAPS platform. You can review the
> discussion subject "Linux Kernel Regression: HAPS quirk breaks PCIe on
> i.MX6QP".
> 
> -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_SYNOPSYS, PCI_ANY_ID,
> -                        quirk_synopsys_haps);
> +DECLARE_PCI_FIXUP_CLASS_HEADER(PCI_VENDOR_ID_SYNOPSYS, PCI_ANY_ID,
> +               PCI_CLASS_SERIAL_USB_XHCI, 0, quirk_synopsys_haps);

Thanks for the quick response.  Tested this on imx7d, and as expected,
it fixes the problem.  The host bridge has class PCI_CLASS_BRIDGE_PCI
like it should and the quirk no longer matches.

WARNING: multiple messages have this Message-ID (diff)
From: Trent Piepho <tpiepho@impinj.com>
To: "linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
	"thinh.nguyen@synopsys.com" <thinh.nguyen@synopsys.com>,
	"bhelgaas@google.com" <bhelgaas@google.com>,
	"linux-usb@vger.kernel.org" <linux-usb@vger.kernel.org>
Cc: "john.youn@synopsys.com" <john.youn@synopsys.com>
Subject: [v2,2/2] PCI: Override Synopsys USB 3.x HAPS device class
Date: Mon, 4 Feb 2019 23:50:30 +0000	[thread overview]
Message-ID: <1549324229.3075.16.camel@impinj.com> (raw)

On Mon, 2019-02-04 at 23:18 +0000, Thinh Nguyen wrote:
> Trent Piepho wrote:
> > On Mon, 2018-12-10 at 14:08 -0800, Thinh Nguyen wrote:
> > > Synopsys USB 3.x host HAPS platform has a class code of
> > > PCI_CLASS_SERIAL_USB_XHCI, and xhci driver can claim it. However, these
> > > devices should use dwc3-haps driver. Change these devices' class code to
> > > PCI_CLASS_SERIAL_USB_DEVICE to prevent the xhci-pci driver from claiming
> > > them.
> > > 
> > This change breaks my IMX7d based device.  This SoC has a PCIe bus
> > based on the Synopsys Designware host controller.  This has a root
> >                                                  
> > 
> Right. Lukas also reported this. It appears that there's a duplicate VID
> PID used for the USB controller on HAPS platform. You can review the
> discussion subject "Linux Kernel Regression: HAPS quirk breaks PCIe on
> i.MX6QP".
> 
> -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_SYNOPSYS, PCI_ANY_ID,
> -                        quirk_synopsys_haps);
> +DECLARE_PCI_FIXUP_CLASS_HEADER(PCI_VENDOR_ID_SYNOPSYS, PCI_ANY_ID,
> +               PCI_CLASS_SERIAL_USB_XHCI, 0, quirk_synopsys_haps);

Thanks for the quick response.  Tested this on imx7d, and as expected,
it fixes the problem.  The host bridge has class PCI_CLASS_BRIDGE_PCI
like it should and the quirk no longer matches.

  reply	other threads:[~2019-02-04 23:50 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-10 22:07 [PATCH v2 1/2] PCI: Move Synopsys HAPS platform device IDs Thinh Nguyen
2018-12-10 22:07 ` [v2,1/2] " Thinh Nguyen
2018-12-10 22:08 ` [PATCH v2 2/2] PCI: Override Synopsys USB 3.x HAPS device class Thinh Nguyen
2018-12-10 22:08   ` [v2,2/2] " Thinh Nguyen
2018-12-17 22:29   ` [PATCH v2 2/2] " Bjorn Helgaas
2018-12-17 22:29     ` [v2,2/2] " Bjorn Helgaas
2019-02-04 22:42   ` [PATCH v2 2/2] " Trent Piepho
2019-02-04 22:42     ` [v2,2/2] " Trent Piepho
2019-02-04 23:18     ` [PATCH v2 2/2] " Thinh Nguyen
2019-02-04 23:18       ` [v2,2/2] " Thinh Nguyen
2019-02-04 23:50       ` Trent Piepho [this message]
2019-02-04 23:50         ` Trent Piepho

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1549324229.3075.16.camel@impinj.com \
    --to=tpiepho@impinj.com \
    --cc=bhelgaas@google.com \
    --cc=john.youn@synopsys.com \
    --cc=linux-pci@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=thinh.nguyen@synopsys.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.