Message ID | 60814116d3e42b984a61f44661369db014ee94ea.1328816414.git.leann.ogasawara@canonical.com |
---|---|
State | New |
Headers | show |
On 02/09/2012 12:46 PM, leann.ogasawara@canonical.com wrote: > From: Sarah Sharp<sarah.a.sharp@linux.intel.com> > > BugLink: http://bugs.launchpad.net/bugs/929656 > > xHCI host controllers may not be capable of MSI, but they should be able > to be used in legacy PCI interrupt mode. Similarly, some xHCI host > controllers will have MSI support but not MSI-X support. Lower the > dmesg log level from an error to debug. The message won't appear unless > CONFIG_USB_XHCI_HCD_DEBUGGING is turned on. > > If we need to find out whether the device can support MSI or MSI-X and > it's not being enabled by the driver, it's easy to ask the user to run > lspci. > > Signed-off-by: Sarah Sharp<sarah.a.sharp@linux.intel.com> > (cherry picked from commit 3b9783b277e66731891ab42eeaacebbdcdd6e629) > > Signed-off-by: Leann Ogasawara<leann.ogasawara@canonical.com> > --- > drivers/usb/host/xhci.c | 8 ++++---- > 1 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c > index 107438e..a692693 100644 > --- a/drivers/usb/host/xhci.c > +++ b/drivers/usb/host/xhci.c > @@ -209,14 +209,14 @@ static int xhci_setup_msi(struct xhci_hcd *xhci) > > ret = pci_enable_msi(pdev); > if (ret) { > - xhci_err(xhci, "failed to allocate MSI entry\n"); > + xhci_dbg(xhci, "failed to allocate MSI entry\n"); > return ret; > } > > ret = request_irq(pdev->irq, (irq_handler_t)xhci_msi_irq, > 0, "xhci_hcd", xhci_to_hcd(xhci)); > if (ret) { > - xhci_err(xhci, "disable MSI interrupt\n"); > + xhci_dbg(xhci, "disable MSI interrupt\n"); > pci_disable_msi(pdev); > } > > @@ -257,7 +257,7 @@ static int xhci_setup_msix(struct xhci_hcd *xhci) > > ret = pci_enable_msix(pdev, xhci->msix_entries, xhci->msix_count); > if (ret) { > - xhci_err(xhci, "Failed to enable MSI-X\n"); > + xhci_dbg(xhci, "Failed to enable MSI-X\n"); > goto free_entries; > } > > @@ -273,7 +273,7 @@ static int xhci_setup_msix(struct xhci_hcd *xhci) > return ret; > > disable_msix: > - xhci_err(xhci, "disable MSI-X interrupt\n"); > + xhci_dbg(xhci, "disable MSI-X interrupt\n"); > xhci_free_irq(xhci); > pci_disable_msix(pdev); > free_entries:
On 09/02/12 20:46, leann.ogasawara@canonical.com wrote: > From: Sarah Sharp<sarah.a.sharp@linux.intel.com> > > BugLink: http://bugs.launchpad.net/bugs/929656 > > xHCI host controllers may not be capable of MSI, but they should be able > to be used in legacy PCI interrupt mode. Similarly, some xHCI host > controllers will have MSI support but not MSI-X support. Lower the > dmesg log level from an error to debug. The message won't appear unless > CONFIG_USB_XHCI_HCD_DEBUGGING is turned on. > > If we need to find out whether the device can support MSI or MSI-X and > it's not being enabled by the driver, it's easy to ask the user to run > lspci. > > Signed-off-by: Sarah Sharp<sarah.a.sharp@linux.intel.com> > (cherry picked from commit 3b9783b277e66731891ab42eeaacebbdcdd6e629) > > Signed-off-by: Leann Ogasawara<leann.ogasawara@canonical.com> > --- > drivers/usb/host/xhci.c | 8 ++++---- > 1 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c > index 107438e..a692693 100644 > --- a/drivers/usb/host/xhci.c > +++ b/drivers/usb/host/xhci.c > @@ -209,14 +209,14 @@ static int xhci_setup_msi(struct xhci_hcd *xhci) > > ret = pci_enable_msi(pdev); > if (ret) { > - xhci_err(xhci, "failed to allocate MSI entry\n"); > + xhci_dbg(xhci, "failed to allocate MSI entry\n"); > return ret; > } > > ret = request_irq(pdev->irq, (irq_handler_t)xhci_msi_irq, > 0, "xhci_hcd", xhci_to_hcd(xhci)); > if (ret) { > - xhci_err(xhci, "disable MSI interrupt\n"); > + xhci_dbg(xhci, "disable MSI interrupt\n"); > pci_disable_msi(pdev); > } > > @@ -257,7 +257,7 @@ static int xhci_setup_msix(struct xhci_hcd *xhci) > > ret = pci_enable_msix(pdev, xhci->msix_entries, xhci->msix_count); > if (ret) { > - xhci_err(xhci, "Failed to enable MSI-X\n"); > + xhci_dbg(xhci, "Failed to enable MSI-X\n"); > goto free_entries; > } > > @@ -273,7 +273,7 @@ static int xhci_setup_msix(struct xhci_hcd *xhci) > return ret; > > disable_msix: > - xhci_err(xhci, "disable MSI-X interrupt\n"); > + xhci_dbg(xhci, "disable MSI-X interrupt\n"); > xhci_free_irq(xhci); > pci_disable_msix(pdev); > free_entries: Acked-by: Colin King <colin.king@canonical.com>
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c index 107438e..a692693 100644 --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c @@ -209,14 +209,14 @@ static int xhci_setup_msi(struct xhci_hcd *xhci) ret = pci_enable_msi(pdev); if (ret) { - xhci_err(xhci, "failed to allocate MSI entry\n"); + xhci_dbg(xhci, "failed to allocate MSI entry\n"); return ret; } ret = request_irq(pdev->irq, (irq_handler_t)xhci_msi_irq, 0, "xhci_hcd", xhci_to_hcd(xhci)); if (ret) { - xhci_err(xhci, "disable MSI interrupt\n"); + xhci_dbg(xhci, "disable MSI interrupt\n"); pci_disable_msi(pdev); } @@ -257,7 +257,7 @@ static int xhci_setup_msix(struct xhci_hcd *xhci) ret = pci_enable_msix(pdev, xhci->msix_entries, xhci->msix_count); if (ret) { - xhci_err(xhci, "Failed to enable MSI-X\n"); + xhci_dbg(xhci, "Failed to enable MSI-X\n"); goto free_entries; } @@ -273,7 +273,7 @@ static int xhci_setup_msix(struct xhci_hcd *xhci) return ret; disable_msix: - xhci_err(xhci, "disable MSI-X interrupt\n"); + xhci_dbg(xhci, "disable MSI-X interrupt\n"); xhci_free_irq(xhci); pci_disable_msix(pdev); free_entries: