Patchwork [Oneiric,SRU,2/2] xhci: Remove warnings about MSI and MSI-X capabilities.

login
register
mail settings
Submitter Leann Ogasawara
Date Feb. 9, 2012, 8:46 p.m.
Message ID <60814116d3e42b984a61f44661369db014ee94ea.1328816414.git.leann.ogasawara@canonical.com>
Download mbox | patch
Permalink /patch/140435/
State New
Headers show

Comments

Leann Ogasawara - Feb. 9, 2012, 8:46 p.m.
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(-)
Brad Figg - Feb. 9, 2012, 8:58 p.m.
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:
Colin King - Feb. 9, 2012, 9:04 p.m.
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>

Patch

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: