All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] usb: core: downgrade log severity to info when descriptor missing
@ 2014-09-22 20:20 Scot Doyle
  2014-09-23 14:26 ` Alan Stern
  0 siblings, 1 reply; 6+ messages in thread
From: Scot Doyle @ 2014-09-22 20:20 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Alan Stern, Sarah Sharp, Dan Williams
  Cc: Daniel Mack, linux-usb, linux-kernel

According to commit 0cce2eda19923e5e5ccc8b042dec5af87b3ffad0
    USB: fix LANGID=0 regression

usb devices are not required to report string descriptors. Since they are
optional, log an info message instead of an error message. In addition,
use a higher level info message while moving the details to a debug message.

Tested with USB device 0930:021c.

Signed-off-by: Scot Doyle <lkml14@scotdoyle.com>
---
 drivers/usb/core/message.c | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/drivers/usb/core/message.c b/drivers/usb/core/message.c
index 0c8a7fc..6b95de7 100644
--- a/drivers/usb/core/message.c
+++ b/drivers/usb/core/message.c
@@ -766,7 +766,7 @@ static int usb_get_langid(struct usb_device *dev, unsigned char *tbuf)

 	/* If the string was reported but is malformed, default to english
 	 * (0x0409) */
-	if (err == -ENODATA || (err > 0 && err < 4)) {
+	if (err > 0 && err < 4) {
 		dev->string_langid = 0x0409;
 		dev->have_langid = 1;
 		dev_err(&dev->dev,
@@ -776,6 +776,18 @@ static int usb_get_langid(struct usb_device *dev, unsigned char *tbuf)
 		return 0;
 	}

+	/* If the string was unavailable, default to english (0x0409) */
+	if (err == -ENODATA) {
+		dev->string_langid = 0x0409;
+		dev->have_langid = 1;
+		dev_info(&dev->dev,
+			"no string descriptor language, defaulting to English");
+		dev_dbg(&dev->dev,
+			"string descriptor 0 unavailable (err = -ENODATA), "
+			"defaulting to 0x%04x\n", dev->string_langid);
+		return 0;
+	}
+
 	/* In case of all other errors, we assume the device is not able to
 	 * deal with strings at all. Set string_langid to -1 in order to
 	 * prevent any string to be retrieved from the device */
-- 
2.1.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-09-24 17:57 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-09-22 20:20 [PATCH] usb: core: downgrade log severity to info when descriptor missing Scot Doyle
2014-09-23 14:26 ` Alan Stern
2014-09-23 19:06   ` Scot Doyle
2014-09-23 19:12     ` [PATCH v2] usb: core: downgrade log severity to info when descriptor unavailable Scot Doyle
2014-09-24  5:18       ` Greg Kroah-Hartman
2014-09-24 17:56         ` Scot Doyle

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.