Peter Chen writes:
> Using below configs, the compile will have error:
> ERROR: "ehci_init_driver" undefined!
>
> .config:
> CONFIG_USB_CHIPIDEA=m
> CONFIG_USB_CHIPIDEA_HOST=y
> CONFIG_USB_CHIPIDEA_DEBUG=y
>
> The reason is chipidea host uses symbol from ehci, but ehci
> is not compiled. Let the
Fabio Estevam writes:
> Fix the following build warnings on x86:
>
> drivers/usb/chipidea/core.c: In function 'hw_phymode_configure':
> drivers/usb/chipidea/core.c:226:3: warning: large integer implicitly
> truncated to unsigned type [-Woverflow]
> drivers/usb/chipidea/core.c:230:3: warning: lar
On 07/09/2013 05:16 PM, Alan Stern wrote:
> On Tue, 9 Jul 2013, Roger Quadros wrote:
>
>> Most HCD drivers are doing the same thing in their ".shutdown" callback
>> so it makes sense to use the generic usb_hcd_platform_shutdown()
>> handler there.
>>
>> Signed-off-by: Roger Quadros
>> ---
>> dri
commit 09fc7d (usb: musb: fix incorrect usage of resource pointer)
assumes musb core will always have only 2 resources. But for OMAP
platforms there can be 3 resources (2 irq resource and 1 iomem
resource). Fixed it here.
Signed-off-by: Kishon Vijay Abraham I
---
Changes from v1:
*) Removed redun
On Wed, Jul 10, 2013 at 04:29:22PM +0530, Kishon Vijay Abraham I wrote:
> commit 09fc7d (usb: musb: fix incorrect usage of resource pointer)
> assumes musb core will always have only 2 resources. But for OMAP
> platforms there can be 3 resources (2 irq resource and 1 iomem
> resource). Fixed it her
Hi,
On Tue, Jul 09, 2013 at 02:43:45PM -0700, Sarah Sharp wrote:
> On Tue, Jul 09, 2013 at 02:59:38PM +0300, Felipe Balbi wrote:
> > Hi,
> >
> > On Mon, Jul 08, 2013 at 09:55:15PM -0700, Sarah Sharp wrote:
> > > Felipe, Andy, and Seb, I have a couple questions below.
> > >
> > > On Fri, Jul 05,
On Tue, Jul 09, 2013 at 02:16:32PM +0300, Roger Quadros wrote:
> Hi,
>
> On 07/06/2013 03:52 PM, Ruchika Kharwar wrote:
> > This patch adapts the dwc3 to use the device tree helper
> > "of_usb_get_dr_mode" for the mode of operation of the dwc3 instance
> > being probed.
> >
> > Signed-off-by: Ruc
Hi,
On Sat, Jul 06, 2013 at 07:53:57AM -0500, Ruchika Kharwar wrote:
> When the initialization of usb3 phy fails, when enabled in the system
> the dwc3_probe deferral is further qualified by the maximum speed.
> In devices such as dra7xx, there are multiple dwc3 instances where the
>
On Tue, Jul 09 2013, Andrzej Pietrasiewicz wrote:
> USB_CONFIGFS_RNDIS depends on USB_U_RNDIS. Select it.
>
> Reported-by: Fengguang Wu
> Signed-off-by: Andrzej Pietrasiewicz
> Signed-off-by: Kyungmin Park
Acked-by: Michal Nazarewicz
> ---
> drivers/usb/gadget/Kconfig |1 +
> 1 files cha
I am looking to use an Edgeport 416 USB to serial convertor under SLES SP2.
When I plug in the device all 16 serial ports are discovered but after about
2 minutes they spontaneously disconnect and reconnect. Is this a known
problem? Is there a newer driver I should be using?
Any and all help appr
On 07/10/2013 02:42 PM, Felipe Balbi wrote:
> On Tue, Jul 09, 2013 at 02:16:32PM +0300, Roger Quadros wrote:
>> Hi,
>>
>> On 07/06/2013 03:52 PM, Ruchika Kharwar wrote:
>>> This patch adapts the dwc3 to use the device tree helper
>>> "of_usb_get_dr_mode" for the mode of operation of the dwc3 instan
Hi,
On Wed, Jul 10, 2013 at 04:11:52PM +0300, Roger Quadros wrote:
> On 07/10/2013 02:42 PM, Felipe Balbi wrote:
> > On Tue, Jul 09, 2013 at 02:16:32PM +0300, Roger Quadros wrote:
> >> Hi,
> >>
> >> On 07/06/2013 03:52 PM, Ruchika Kharwar wrote:
> >>> This patch adapts the dwc3 to use the device t
On Wednesday 10 July 2013 04:57 PM, Felipe Balbi wrote:
> On Wed, Jul 10, 2013 at 04:29:22PM +0530, Kishon Vijay Abraham I wrote:
>> commit 09fc7d (usb: musb: fix incorrect usage of resource pointer)
>> assumes musb core will always have only 2 resources. But for OMAP
>> platforms there can be 3 re
On 07/10/2013 04:35 PM, Felipe Balbi wrote:
> Hi,
>
> On Wed, Jul 10, 2013 at 04:11:52PM +0300, Roger Quadros wrote:
>> On 07/10/2013 02:42 PM, Felipe Balbi wrote:
>>> On Tue, Jul 09, 2013 at 02:16:32PM +0300, Roger Quadros wrote:
Hi,
On 07/06/2013 03:52 PM, Ruchika Kharwar wrote:
>
On 07/10/2013 06:46 AM, Felipe Balbi wrote:
Hi,
On Sat, Jul 06, 2013 at 07:53:57AM -0500, Ruchika Kharwar wrote:
When the initialization of usb3 phy fails, when enabled in the system
the dwc3_probe deferral is further qualified by the maximum speed.
In devices such as dra7xx, th
On Tue, 9 Jul 2013, Devin Heitmueller wrote:
> So I hooked up the video and wrote a bit of Perl to parse the ISOC
> stream and render the underlying video frames. I can see definitively
> that the video returned from the device contains the corruption. This
> rules out any sort of DMA or memory
On Wed, 10 Jul 2013, Roger Quadros wrote:
> On 07/09/2013 05:16 PM, Alan Stern wrote:
> > On Tue, 9 Jul 2013, Roger Quadros wrote:
> >
> >> Most HCD drivers are doing the same thing in their ".shutdown" callback
> >> so it makes sense to use the generic usb_hcd_platform_shutdown()
> >> handler th
Hi Alan,
On Wed, Jul 10, 2013 at 10:48 AM, Alan Stern wrote:
> Digging into the scheduling code probably won't help much. However you
> could try collecting a usbmon trace (see Documentation/usb/usbmon.txt).
> This would clearly show the timing of URB submissions and completions.
Good suggestio
On Wed, Jul 10, 2013 at 12:09:35PM +, Brian Peters wrote:
> I am looking to use an Edgeport 416 USB to serial convertor under SLES SP2.
Great, then please contact SuSE for support, as you are paying for it
already :) There's nothing we can do with their kernel, as it is
different from the lat
On Wed, Jul 10, 2013 at 10:58 AM, Devin Heitmueller
wrote:
>> I bet the problem is related to the usage of the URB_ISO_ASAP flag.
>> em28xx_alloc_urbs() sets URB_ISO_ASAP in urb->transfer_flags, and the
>> value never gets cleared. In fact, that flag bit is supposed to be set
>> only in the first
On Wed, 10 Jul 2013, Devin Heitmueller wrote:
> > I bet the problem is related to the usage of the URB_ISO_ASAP flag.
> > em28xx_alloc_urbs() sets URB_ISO_ASAP in urb->transfer_flags, and the
> > value never gets cleared. In fact, that flag bit is supposed to be set
> > only in the first URB of a
On Wed, 10 Jul 2013, Devin Heitmueller wrote:
> On Wed, Jul 10, 2013 at 10:58 AM, Devin Heitmueller
> wrote:
> >> I bet the problem is related to the usage of the URB_ISO_ASAP flag.
> >> em28xx_alloc_urbs() sets URB_ISO_ASAP in urb->transfer_flags, and the
> >> value never gets cleared. In fact,
On Wed, Jul 10, 2013 at 11:40 AM, Alan Stern wrote:
>> Nope, that wasn't it. I am now only setting ISO_ASAP in the first
>> packet, and I tried both leaving it as in on resubmit and clearing the
>> flag prior to resubmit.
>
> usbmon is the best debugging tool at this point.
http://www.devinheitm
To ensure hardware context is restored while resuming from
OFF mode we need to enable the Hardware SAR bit for the
USB Host power domain.
Signed-off-by: Roger Quadros
---
arch/arm/mach-omap2/powerdomains3xxx_data.c |8 +---
1 files changed, 1 insertions(+), 7 deletions(-)
diff --git a/a
Hi,
This series implements suspend/resume for the OMAP EHCI host controller during
runtime idle. This will cause its parent, the OMAP USB Host Module as well
as the USB TLL Module to be put in suspend and hence allow the USB power domain
to be put in a lower power state. Then we no longer prevent
Add the Idle state pins for USB host and enable WAKEUP on
DIR, DAT0-3, so that the PHY can wakeup the OMAP SoC from
sleep on any USB activity (e.g. remote wakeup or connect/disconnect).
Signed-off-by: Roger Quadros
---
arch/arm/boot/dts/omap3-beagle-xm.dts | 29 +++--
1
Some platforms e.g. ehci-omap can generate an interrupt
(i.e. remote wakeup) even when the controller is suspended i.e.
HW_ACCESSIBLE is cleared.
Introduce a flag "has_wakeup_irq" in struct usb_hcd to indicate
such cases.
We tackle this case by disabling the IRQ, scheduling a
hub resume and enabl
We no longer need to be initialized in any particular order
so move driver initialization to the standard place i.e. module_init()
CC: Samuel Ortiz
Signed-off-by: Roger Quadros
---
drivers/mfd/omap-usb-host.c | 23 +++
drivers/mfd/omap-usb-tll.c | 20 ++-
Call ehci_suspend/resume() during runtime suspend/resume
as well as system suspend/resume.
Use a flag "bound" to indicate that the HCD structures are valid.
This is only true between usb_add_hcd() and usb_remove_hcd() calls.
The flag can be used by omap_ehci_runtime_suspend/resume() handlers
to a
In order to support wake up from suspend use the pinctrl
framework to put the USB host pins in IDLE state during suspend.
CC: Samuel Ortiz
Signed-off-by: Roger Quadros
---
drivers/mfd/omap-usb-host.c | 22 ++
1 files changed, 22 insertions(+), 0 deletions(-)
diff --git a/
On Wed, 10 Jul 2013, Devin Heitmueller wrote:
> On Wed, Jul 10, 2013 at 11:40 AM, Alan Stern
> wrote:
> >> Nope, that wasn't it. I am now only setting ISO_ASAP in the first
> >> packet, and I tried both leaving it as in on resubmit and clearing the
> >> flag prior to resubmit.
> >
> > usbmon is
On Wed, Jul 10, 2013 at 12:30 PM, Alan Stern wrote:
> If you use the bus analyzer at the same time, you could compare
> microframe numbers.
Ah, again, good suggestion. I'll get a usbmon trace in parallel to
the Beagle. I'll have to move some stuff around though because I
don't want to run the B
Speaks AT on interfaces 5 (command & PPP) and 3 (secondary), other
interface protocols are unknown.
Cc: sta...@vger.kernel.org
Signed-off-by: Dan Williams
---
diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
index 5dd857d..feda580 100644
--- a/drivers/usb/serial/option.c
++
Hi Felipe,
This is intended to pull down a reset signal line, not to switch power
to the device. I could implement that with the regulator framework
too, but I think that would just be confusing and harder to understand
without providing any benefit. It's really just a plain old GPIO.
--
To unsubs
On Wed, 10 Jul 2013, Devin Heitmueller wrote:
> > I don't see any problems in the usbmon trace, but they might not show
> > up there. In particular, the trace includes the status values only for
> > the first 5 packets in each URB. Does the driver encounter any packets
> > with a nonzero status?
On Wed, 10 Jul 2013, Roger Quadros wrote:
> Some platforms e.g. ehci-omap can generate an interrupt
> (i.e. remote wakeup) even when the controller is suspended i.e.
> HW_ACCESSIBLE is cleared.
>
> Introduce a flag "has_wakeup_irq" in struct usb_hcd to indicate
> such cases.
>
> We tackle this c
On Wed, 10 Jul 2013, Roger Quadros wrote:
> Call ehci_suspend/resume() during runtime suspend/resume
> as well as system suspend/resume.
>
> Use a flag "bound" to indicate that the HCD structures are valid.
> This is only true between usb_add_hcd() and usb_remove_hcd() calls.
>
> The flag can be
Hi Alan,
On Wed, Jul 10, 2013 at 2:27 PM, Alan Stern wrote:
> You inspired me to take a closer look at the usbmon log you made
> available. There _is_ an error indication after all; the line with
> timestamp 397263317 got an error in one of its 64 packets (but this
> was the only error in the en
On Wed, 10 Jul 2013, Roger Quadros wrote:
> Some platforms e.g. ehci-omap can generate an interrupt
> (i.e. remote wakeup) even when the controller is suspended i.e.
> HW_ACCESSIBLE is cleared.
>
> Introduce a flag "has_wakeup_irq" in struct usb_hcd to indicate
> such cases.
>
> We tackle this c
On Wed, 10 Jul 2013, Devin Heitmueller wrote:
> Hi Alan,
>
> On Wed, Jul 10, 2013 at 2:27 PM, Alan Stern wrote:
> > You inspired me to take a closer look at the usbmon log you made
> > available. There _is_ an error indication after all; the line with
> > timestamp 397263317 got an error in one
On Wed, Jul 10, 2013 at 3:37 PM, Alan Stern wrote:
> 20-30 times each second? Okay... I didn't realize the errors were
> that frequent.
Yeah, now you see why I'm freaking out. If this were one corrupt line
every 20 seconds, I wouldn't care less. But there are lines every few
frames of video (
If NO_DMA=y:
drivers/built-in.o: In function `usb_hcd_unmap_urb_setup_for_dma':
drivers/usb/core/hcd.c:1361: undefined reference to `dma_unmap_single'
drivers/built-in.o: In function `usb_hcd_unmap_urb_for_dma':
drivers/usb/core/hcd.c:1393: undefined reference to `dma_unmap_sg'
drivers/usb/core/hc
On Wed, 10 Jul 2013, Devin Heitmueller wrote:
> > It's rather disturbing that they don't show up at all in the usbmon
> > trace. This suggests two possibilities:
> >
> > The ehci-hcd driver is so messed up that not only did it fail
> > to tell the hardware to send those missing pa
On Wed, 10 Jul 2013, Geert Uytterhoeven wrote:
> If NO_DMA=y:
>
> drivers/built-in.o: In function `usb_hcd_unmap_urb_setup_for_dma':
> drivers/usb/core/hcd.c:1361: undefined reference to `dma_unmap_single'
> ,,,
>
> Commit d9ea21a779278da06d0cbe989594bf542ed213d7 ("usb: host: make
> USB_ARCH_HA
When builtin (CONFIG_USB_FOTG210_UDC=y):
LD drivers/usb/gadget/built-in.o
WARNING: drivers/usb/gadget/built-in.o(.data+0xbf8): Section mismatch in
reference from the variable fotg210_driver to the function
.init.text:fotg210_udc_probe()
The variable fotg210_driver references
the function
On 07/11/2013 01:45 AM, Geert Uytterhoeven wrote:
When builtin (CONFIG_USB_FOTG210_UDC=y):
LD drivers/usb/gadget/built-in.o
WARNING: drivers/usb/gadget/built-in.o(.data+0xbf8): Section mismatch in
reference from the variable fotg210_driver to the function
.init.text:fotg210_udc_prob
On Wed, Jul 10, 2013 at 5:21 PM, Alan Stern wrote:
>> Yeah, I tried that a few days ago. I did a memset() on the
>> transfer_buffer prior to every resubmit, because at one point I
>> thought perhaps I was getting back the buffer without it having been
>> filled in.
>
> And you found that the buff
On Wednesday 10 July 2013, Alan Stern wrote:
> This isn't right. There are USB host controllers that use PIO, not
> DMA. The HAS_DMA dependency should go with the controller driver, not
> the USB core.
>
> On the other hand, the USB core does call various routines like
> dma_unmap_single. It
Hi Clemens,
On Mon, Jul 8, 2013 at 2:12 PM, James Stone wrote:
>> Acquire audio card Audio0
>> creating alsa driver ... hw:USB,0|-|64|2|44100|0|0|nomon|swmeter|-|16bit
>> Using ALSA driver USB-Audio running on card 0 - Focusrite Scarlett 2i4
>> USB at usb-:00:12.2-3, high speed
>> configurin
On Wednesday, July 10, 2013 9:34 AM, Julius Werner wrote:
>
> This patch adds support for a new 'samsung,hsic-reset-gpio' in the
> device tree, which will be interpreted as an active-low reset pin during
> PHY initialization when it exists. Useful for intergrated HSIC devices
> like an SMSC 3503 h
Hi Julius,
On Wed, Jul 10, 2013 at 2:42 PM, Julius Werner wrote:
> Hi Felipe,
>
> This is intended to pull down a reset signal line, not to switch power
> to the device. I could implement that with the regulator framework
> too, but I think that would just be confusing and harder to understand
>
On Thu, 11 Jul 2013, Arnd Bergmann wrote:
> On Wednesday 10 July 2013, Alan Stern wrote:
> > This isn't right. There are USB host controllers that use PIO, not
> > DMA. The HAS_DMA dependency should go with the controller driver, not
> > the USB core.
> >
> > On the other hand, the USB core do
Hello Maintainers:
Please help check this patch when you have time, thanks.
BTW: this uninitialized variable warning may not be found by gcc
compiler (which a gcc bug exists almost 10 years).
Thanks.
On 07/02/2013 12:06 PM, Chen Gang wrote:
> The variable 'actual' is only used in "checking 'buf
On Wed, 10 Jul 2013, Devin Heitmueller wrote:
> So one might ask: why is the em28xx device sending a microframe with
> corrupt bytes? One thing I've noticed is immediately prior to any
> microframe containing corruption, there was a missing microframe - the
> time between the microframe containi
When the gadget role starts, we need to make sure the vbus is lower
than OTGSC_BSV, or there will be an vbus interrupt since we use
B_SESSION_VALID as vbus interrupt to indicate connect and disconnect.
When the host role starts, it may not be useful to wait vbus to lower
than OTGSC_BSV, but it can
This patchset adds tested otg id switch function and
vbus connect and disconnect detection for chipidea driver.
And fix kinds of bugs found at chipidea drivers after enabling
id and vbus detection.
This patch is fully tested at imx6 sabresd platform.
My chipidea repo: https://github.com/hzpeterche
Since we need otgsc to know vbus's status at some chipidea
controllers even it is peripheral-only mode. Besides, some
SoCs (eg, AR9331 SoC) don't have otgsc register even
the DCCPARAMS_DC and DCCPARAMS_HC are both 1 at CAP_DCCPARAMS.
We inroduce otg_cap attribute to indicate if the controller
is ot
For boards which have board level vbus control (eg, through gpio), we
need to vbus operation according to below rules:
- For host, we need open vbus before start hcd, and close it
after remove hcd.
- For otg, the vbus needs to be on/off when usb role switches.
When the host roles begins, it opens v
It is useless at below cases:
- If we implement both usb host and device at chipidea driver.
- If we don't need phy->otg.
Signed-off-by: Peter Chen
---
drivers/usb/chipidea/udc.c |7 ++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/drivers/usb/chipidea/udc.c b/drivers/u
Since we have added vbus reguatlor operation at common
host file (chipidea/host.c), the glue layer vbus operation
isn't needed any more.
Signed-off-by: Peter Chen
---
drivers/usb/chipidea/ci_hdrc_imx.c | 30 +++---
1 files changed, 7 insertions(+), 23 deletions(-)
diff
During the initialization, it needs to disable all interrupts
enable bit as well as clear all interrupts status bits to avoid
exceptional interrupt.
Signed-off-by: Peter Chen
---
drivers/usb/chipidea/core.c | 11 ++-
1 files changed, 10 insertions(+), 1 deletions(-)
diff --git a/drive
This file is mainly used to access otgsc currently, it may
add otg related things in the future.
Signed-off-by: Peter Chen
---
drivers/usb/chipidea/Makefile |2 +-
drivers/usb/chipidea/bits.h | 10
drivers/usb/chipidea/core.c |3 +-
drivers/usb/chipidea/otg.c| 50 +++
When the flag CI_HDRC_PULLUP_ON_VBUS is set, .pullup should only be
called when the vbus is active. When the CI_HDRC_PULLUP_ON_VBUS
is set, the controller only begins to run when the vbus is on,
So, it is only meaningful software set pullup/pulldown after
the controller begins to run.
Signed-off-b
- The role's init will be called at probe procedure.
- The role's destory will be called at fail patch
at probe and driver's removal.
- The role's start/stop will be called when specific
role has started.
Signed-off-by: Peter Chen
---
drivers/usb/chipidea/core.c | 10 --
drivers/usb/ch
We add vbus interrupt handler at ci_otg_work, it uses OTGSC_BSV(at otgsc)
to know it is connect or disconnet event.
Meanwhile, we introduce two flags id_event and b_sess_valid_event to
indicate it is an id interrupt or a vbus interrupt.
Signed-off-by: Peter Chen
---
drivers/usb/chipidea/ci.h |
When we rmmod gadget, the ci->driver needs to be cleared.
Otherwise, we plug in usb cable again, the driver will
consider gadget is there, in fact, it was removed.
Besides, consolidate the calling of ci->driver->disconnect, when
we do rmmod gadget, the gadget's disconnect should be called from
udc
Move otg relate things to otg file.
Signed-off-by: Peter Chen
---
drivers/usb/chipidea/core.c | 63 +--
drivers/usb/chipidea/otg.c | 57 +-
drivers/usb/chipidea/otg.h |2 +
3 files changed, 70 insertions(+), 52
CI_HDRC_REGS_SHARED stands for the controller registers is shared
with other USB drivers, if all USB drivers are at chipidea/, it doesn't
needed to set.
CI_HDRC_PULLUP_ON_VBUS stands for pullup dp when the vbus is on. This
flag doesn't need to set if the vbus is always on for gadget
since dp has al
On Thu, Jul 11, 2013 at 02:27:10PM +0800, Peter Chen wrote:
> Since we have added vbus reguatlor operation at common
> host file (chipidea/host.c), the glue layer vbus operation
> isn't needed any more.
>
> Signed-off-by: Peter Chen
> ---
> drivers/usb/chipidea/ci_hdrc_imx.c | 30 +++--
On Thu, Jul 11, 2013 at 08:37:19AM +0200, Sascha Hauer wrote:
> >
> > - /* we only support host now, so enable vbus here */
> > - data->reg_vbus = devm_regulator_get(&pdev->dev, "vbus");
> > - if (!IS_ERR(data->reg_vbus)) {
> > - ret = regulator_enable(data->reg_vbus);
> > -
70 matches
Mail list logo