Anders Darander | 4 Jul 15:32 2014

ath9k -> bogus usb xfer on at91


While porting an internal BSP (a design based on a at91sam9g20 SoC)
from 3.10 to 3.14, I got flooded with messages like:

~# usb 1-1: new full-speed USB device number 3 using at91_ohci
usb 1-1: ath9k_htc: Firmware htc_9271.fw requested
usb 1-1: ath9k_htc: Transferred FW: htc_9271.fw, size: 51272
-----------[ cut here ]-----------
WARNING: CPU: 0 PID: 93 at
usb 1-1: BOGUS urb xfer, pipe 1 != type 3
Modules linked in: ath9k_htc ath9k_common ath9k_hw ath mac80211
cfg80211 ccudrv(O) at91_disable_wdt(O) at91_bootcount(O) at91_adc(O)
CPU: 0 PID: 93 Comm: kworker/0:3 Tainted: G W O 3.14.10-ccu #2
Workqueue: events request_firmware_work_func
[<c000d354>] (unwind_backtrace) from [<c000bb74>] (show_stack+0x10/0x14)
[<c000bb74>] (show_stack) from [<c00155ac>] (warn_slowpath_common+0x60/0x80)
[<c00155ac>] (warn_slowpath_common) from [<c00155f8>]
[<c00155f8>] (warn_slowpath_fmt) from [<c01d9c14>] (usb_submit_urb+0x2ac/0x460)
[<c01d9c14>] (usb_submit_urb) from [<bf134e28>]
(hif_usb_send+0x268/0x2c8 [ath9k_htc])
[<bf134e28>] (hif_usb_send [ath9k_htc]) from [<bf133064>]
(htc_issue_send.constprop.4+0x64/0x68 [ath9k_htc])
[<bf133064>] (htc_issue_send.constprop.4 [ath9k_htc]) from
[<bf133354>] (htc_connect_service+0x170/0x1c8 [ath9k_htc])
[<bf133354>] (htc_connect_service [ath9k_htc]) from [<bf135484>]
(ath9k_wmi_connect+0x50/0x6c [ath9k_htc])
(Continue reading)

Abbas Raza | 4 Jul 14:40 2014

[PATCH] usb: chipidea: udc: avoid gadget driver insertion in host mode

From: Abbas Raza <Abbas_Raza@...>

When gadget driver is inserted and OTG is in host mode, interrupts
occur which are not handled by chipidea driver causing following
problem. To avoid this problem, don't allow insertion of gadget
driver in host mode.

root <at> mx6q:~# echo -n host > /sys/kernel/debug/ci_hdrc.0/role
root <at> mx6q:~# modprobe g_ether
using random self ethernet address
using random host ethernet address
usb0: HOST MAC aa:4b:f8:b4:d7:81
usb0: MAC 5e:65:a8:9e:6e:45
using random self ethernet address
using random host ethernet address
g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
g_ether gadget: g_ether ready
root <at> mx6q35:~# irq 75: nobody cared (try booting with the "irqpoll" option)
CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.16.0-rc2-00001-gd675913 #53
[<80012418>] (dump_backtrace) from [<800126fc>] (show_stack+0x18/0x1c)
 r6:8092bae0 r5:8092bae0 r4:00000000 r3:00000000
[<800126e4>] (show_stack) from [<806770bc>] (dump_stack+0x8c/0xa4)
[<80677030>] (dump_stack) from [<80074520>] (__report_bad_irq+0x28/0xc8)
 r6:0000004b r5:00000000 r4:be00ab00 r3:00000000
[<800744f8>] (__report_bad_irq) from [<80074ae8>] (note_interrupt+0x264/0x2c4)
 r6:0000004b r5:00000000 r4:be00ab00 r3:00000000
[<80074884>] (note_interrupt) from [<80072400>] (handle_irq_event_percpu+0xb4/0x13c)
 r10:80969dc6 r9:be00ab00 r8:0000004b r7:00000000 r6:00000000 r5:00000000
 r4:00000000 r3:00000000
(Continue reading)

Marek Szyprowski | 4 Jul 14:13 2014

[PATCH] drivers: phy: exynos-usb2: add support for Exynos 3250

This patch adds support for Exynos3250 SoC to Exynos2USB PHY driver.
Although Exynos3250 has only one device phy interface, the register
layout and all operations that are required to get it enabled are almost
same as on Exynos4x12. The only different is one more register
(REFCLKSEL) which need to be set.

Signed-off-by: Marek Szyprowski <m.szyprowski@...>
 drivers/phy/Kconfig               | 12 ++++++------
 drivers/phy/phy-exynos4x12-usb2.c | 18 ++++++++++++++++++
 drivers/phy/phy-samsung-usb2.c    |  6 ++++++
 drivers/phy/phy-samsung-usb2.h    |  2 ++
 4 files changed, 32 insertions(+), 6 deletions(-)

diff --git a/drivers/phy/Kconfig b/drivers/phy/Kconfig
index 16a2f067c242..58737b9eaa6e 100644
--- a/drivers/phy/Kconfig
+++ b/drivers/phy/Kconfig
 <at>  <at>  -141,14 +141,14  <at>  <at>  config PHY_EXYNOS4210_USB2
 	  phys are available - device, host, HSIC0 and HSIC1.

 config PHY_EXYNOS4X12_USB2
-	bool "Support for Exynos 4x12"
+	bool "Support for Exynos 3250/4x12"
 	depends on PHY_SAMSUNG_USB2
-	depends on (SOC_EXYNOS4212 || SOC_EXYNOS4412)
+	depends on (SOC_EXYNOS3250 || SOC_EXYNOS4212 || SOC_EXYNOS4412)
-	  Enable USB PHY support for Exynos 4x12. This option requires that
-	  Samsung USB 2.0 PHY driver is enabled and means that support for this
(Continue reading)

Ramneek Mehresh | 4 Jul 12:34 2014

[PATCH 7/7] fsl/otg: Resolve OTG crash issue with another host

Resolves kernel crash issue when a USB flash drive is inserted
into USB1 port with USB2 port configured as otg. Removing
"else" block so that the controller coming up in "non-otg" mode
doesn't return -ENODEV. Returning "ENODEV" results in platform
framework unbinding platform-drv from controller resulting in
kernel crash later in hub driver

Signed-off-by: Ramneek Mehresh <ramneek.mehresh@...>
 drivers/usb/host/ehci-fsl.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/usb/host/ehci-fsl.c b/drivers/usb/host/ehci-fsl.c
index 121f0c8..18339f8 100644
--- a/drivers/usb/host/ehci-fsl.c
+++ b/drivers/usb/host/ehci-fsl.c
 <at>  <at>  -206,9 +206,6  <at>  <at>  static int usb_hcd_fsl_probe(const struct hc_driver *driver,

 		ehci_fsl->have_hcd = 1;
-	} else {
-		dev_err(&pdev->dev, "wrong operating mode\n");
-		return -ENODEV;
 	return retval;


(Continue reading)

Ricardo Ribalda Delgado | 4 Jul 11:27 2014

[PATCH] usb: gadget: net2280: Fix typo on #ifdef

Commit e56e69cc0ff4 ("usb: gadget: net2280: Use pr_* function")
includes a editing mistake on one of the #ifdef.

This patch fixes it.

Reported-by: Paul Bolle <pebolle@...>
Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@...>
 drivers/usb/gadget/udc/net2280.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/gadget/udc/net2280.c b/drivers/usb/gadget/udc/net2280.c
index ce8bc86..248dccb 100644
--- a/drivers/usb/gadget/udc/net2280.c
+++ b/drivers/usb/gadget/udc/net2280.c
 <at>  <at>  -1562,7 +1562,7  <at>  <at>  static const struct usb_gadget_ops net2280_ops = {



 /* FIXME move these into procfs, and use seq_file.
  * Sysfs _still_ doesn't behave for arbitrarily sized files,


To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@...
(Continue reading)

Jingoo Han | 4 Jul 08:00 2014

[PATCH] usb: dwc3: gadget: remove unnecessary 'start_new' variable

Remove 'start_new' variable from dwc3_endpoint_transfer_complete(),
since this variable has not been used.

Signed-off-by: Jingoo Han <jg1.han@...>
 drivers/usb/dwc3/gadget.c |    7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index 9d64dd0..d9304a8 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
 <at>  <at>  -1971,8 +1971,7  <at>  <at>  static int dwc3_cleanup_done_reqs(struct dwc3 *dwc, struct dwc3_ep *dep,

 static void dwc3_endpoint_transfer_complete(struct dwc3 *dwc,
-		struct dwc3_ep *dep, const struct dwc3_event_depevt *event,
-		int start_new)
+		struct dwc3_ep *dep, const struct dwc3_event_depevt *event)
 	unsigned		status = 0;
 	int			clean_busy;
 <at>  <at>  -2039,7 +2038,7  <at>  <at>  static void dwc3_endpoint_interrupt(struct dwc3 *dwc,

-		dwc3_endpoint_transfer_complete(dwc, dep, event, 1);
+		dwc3_endpoint_transfer_complete(dwc, dep, event);
(Continue reading)

Greg KH | 4 Jul 03:01 2014

[GIT PULL] USB driver fixes for 3.16-rc4

The following changes since commit a497c3ba1d97fc69c1e78e7b96435ba8c2cb42ee:

  Linux 3.16-rc2 (2014-06-21 19:02:54 -1000)

are available in the git repository at:

  git:// tags/usb-3.16-rc4

for you to fetch changes up to e4adcff09ca39ecbcc4851d40d0f0a5458e7b77a:

  usb: chipidea: udc: delete td from req's td list at ep_dequeue (2014-07-01 23:06:02 -0700)

USB bugfixes for 3.16-rc4

Here's a round of USB bugfixes, quirk additions, and new device ids for
3.16-rc4.  Nothing major in here at all, just a bunch of tiny changes.
All have been in linux-next with no reported issues.

Signed-off-by: Greg Kroah-Hartman <gregkh@...>

Alan Stern (1):
      usb-storage/SCSI: Add broken_fua blacklist flag

Andreas Larsson (1):
      usb: gadget: gr_udc: Fix check for invalid number of microframes

Andrzej Pietrasiewicz (2):
      usb: gadget: OS descriptors configfs cleanup
(Continue reading)

Vladimir Zapolskiy | 3 Jul 20:37 2014

[PATCH 0/2] USB: make HCD specific allocations non-atomically

This change makes two more one-time per HCD allocations to be done
from non-atomic DMA pool, the main purpose of the change is to save
some bits of space in coherent atomic DMA pool, which is 256KB by
default on ARM platform.

Vladimir Zapolskiy (2):
  USB: OHCI: don't allocate HCCA atomically
  USB: UHCI: don't allocate frame list atomically

 drivers/usb/host/ohci-hcd.c |    2 +-
 drivers/usb/host/uhci-hcd.c |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)


To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@...
More majordomo info at

Sebastian Reimers | 3 Jul 20:15 2014

[PATCH 1/1] usb: gadget: f_uac2: Fix pcm sample size selection

The pcm playback and capture sample size format was fixed

This patch respects also 16, 24 and 32 bit p_ssize and c_ssize values.

Signed-off-by: Sebastian Reimers <sebastian.reimers@...>
 drivers/usb/gadget/f_uac2.c | 24 ++++++++++++++++++++++--
 1 file changed, 22 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/gadget/f_uac2.c b/drivers/usb/gadget/f_uac2.c
index 6261db4a..3ed89ec 100644
--- a/drivers/usb/gadget/f_uac2.c
+++ b/drivers/usb/gadget/f_uac2.c
 <at>  <at>  -348,14 +348,34  <at>  <at>  static int uac2_pcm_open(struct snd_pcm_substream *substream)
 	if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
 		runtime->hw.rate_min = p_srate;
-		runtime->hw.formats = SNDRV_PCM_FMTBIT_S16_LE; /* ! p_ssize ! */
+		switch (p_ssize) {
+		case 3:
+			runtime->hw.formats = SNDRV_PCM_FMTBIT_S24_3LE;
+			break;
+		case 4:
+			runtime->hw.formats = SNDRV_PCM_FMTBIT_S32_LE;
+			break;
+		default:
+			runtime->hw.formats = SNDRV_PCM_FMTBIT_S16_LE;
+			break;
+		}
(Continue reading)

Vladimir Zapolskiy | 3 Jul 16:53 2014

[PATCH] USB: EHCI: don't allocate hardware periodic table atomically by default

ehci_mem_init() is executed one time during ehci_init() and by default
all memory allocations but ehci->periodic are done not atomically,
GFP_KERNEL is passed as flags parameter.

Do similar allocation for ehci->periodic and free some space in
coherent atomic DMA pool by default.

Cc: Alan Stern <stern@...>
Cc: Greg Kroah-Hartman <gregkh@...>
Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@...>

 drivers/usb/host/ehci-mem.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/host/ehci-mem.c b/drivers/usb/host/ehci-mem.c
index c0fb6a8..b6205fa 100644
--- a/drivers/usb/host/ehci-mem.c
+++ b/drivers/usb/host/ehci-mem.c
 <at>  <at>  -209,7 +209,7  <at>  <at>  static int ehci_mem_init (struct ehci_hcd *ehci, gfp_t flags)
 	ehci->periodic = (__le32 *)
 		dma_alloc_coherent (ehci_to_hcd(ehci)->self.controller,
 			ehci->periodic_size * sizeof(__le32),
-			&ehci->periodic_dma, 0);
+			&ehci->periodic_dma, flags);
 	if (ehci->periodic == NULL) {
 		goto fail;

(Continue reading)

arun | 3 Jul 14:49 2014

Problem with Mobile Broadband on ubuntu

    I am on Ubuntu 12.04, and am trying to install a USB dongle with a
3-g simcard. I have D-link 156 dongle.

    I do the following 2:
- dpkg -i <file>.deb
- usb_modeswitch ...

after this, i am not able to locate the driver in Network Manager.

If i do dmesg, it says:
usbserial_generic 1-1.3:1.5: Tell linux-usb@... to add
your device to a proper driver.

hence emailing you.

To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@...
More majordomo info at