Re: [PATCH v3] xhci: Add quirk to workaround the errata seen on Cavium Thunder-X2 Soc

2018-10-30 Thread George Cherian
sing private registers in XHCI register >> space. After the PHY is reset we check for the PLL lock status and retry >> the operation if it fails. From our tests, retrying 4 times is >> sufficient. >> >> Add a new quirk flag XHCI_RESET_PLL_ON_DISCONNECT to invok

Re: [PATCH v2] xhci: Add quirk to workaround the errata seen on Cavium Thunder-X2 Soc

2018-10-30 Thread George Cherian
g XHCI_RESET_PLL_ON_DISCONNECT to invoke the >> workaround >> in handle_xhci_port_status(). >> >> Signed-off-by: George Cherian >> --- >>   drivers/usb/host/xhci-pci.c  |  5 + >>   drivers/usb/host/xhci-ring.c | 35 ++- >>   d

Re: [PATCH] xhci: Add quirk to workaround the errata seen on Cavium Thunder-X2 Soc

2018-10-28 Thread George Cherian
Hi Alan, Thanks for the review. I will update the patch accordingly and send out v2. On 10/28/2018 10:48 PM, Alan Stern wrote: > > On Sat, 27 Oct 2018, Cherian, George wrote: > >> Implement workaround for ThunderX2 Errata-129 (documented in >> CN99XX Known Issues" available at Cavium support s

Re: JMS56x not working reliably with uas driver

2016-12-27 Thread George Cherian
Hi Alan, On Tuesday 27 December 2016 08:50 PM, Alan Stern wrote: On Tue, 27 Dec 2016, Oliver Neukum wrote: On Thu, 2016-12-22 at 17:44 -0500, Alan Stern wrote: I don't see how this patch fixes anything. Unless I'm mistaken, it just avoids the problem by preventing the system from issuing th

Re: JMS56x not working reliably with uas driver

2016-12-22 Thread George Cherian
Hi Alan, On Friday 23 December 2016 04:14 AM, Alan Stern wrote: On Wed, 21 Dec 2016, George Cherian wrote: Hi Oliver, I was working with this JMicron device and using the uas driver. I am seeing the following 2 issues. 1) On connect I see the following messages. xhci_hcd :00:11.0

Re: JMS56x not working reliably with uas driver

2016-12-22 Thread George Cherian
= On Thursday 22 December 2016 07:34 AM, George Cherian wrote: Hi Oliver, I will try it out and update you!! Regards, -George On Wednesday 21 December 2016 08:09 PM, Oliver Neukum wrote: On Wed, 2016-12-21 at 18:17 +0530, George Cherian wrote

Re: JMS56x not working reliably with uas driver

2016-12-21 Thread George Cherian
Hi Oliver, I will try it out and update you!! Regards, -George On Wednesday 21 December 2016 08:09 PM, Oliver Neukum wrote: On Wed, 2016-12-21 at 18:17 +0530, George Cherian wrote: [ 843.149653] scsi host5: uas_post_reset: alloc streams error -19 after reset That would mean the endpoints

Re: JMS56x not working reliably with uas driver

2016-12-21 Thread George Cherian
On 12/21/2016 05:12 PM, Oliver Neukum wrote: On Wed, 2016-12-21 at 17:09 +0530, George Cherian wrote: Hi Oliver, I was working with this JMicron device and using the uas driver. I am seeing the following 2 issues. 1) On connect I see the following messages. Thanks. Do you want to submit

Re: JMS56x not working reliably with uas driver

2016-12-21 Thread George Cherian
On 12/21/2016 05:50 PM, Hans de Goede wrote: Hi, On 21-12-16 13:07, George Cherian wrote: On 12/21/2016 05:12 PM, Oliver Neukum wrote: On Wed, 2016-12-21 at 17:09 +0530, George Cherian wrote: Hi Oliver, I was working with this JMicron device and using the uas driver. I am seeing the

JMS56x not working reliably with uas driver

2016-12-21 Thread George Cherian
ing The same error is not seen when it is added to unusual_device list with US_FL_NO_REPORT_OPCODES passed. Signed-off-by: George Cherian --- drivers/usb/storage/unusual_uas.h | 7 +++ 1 file changed, 7 insertions(+) diff --git a/drivers/usb/storage/unusual_uas.h b/drivers/usb/stor

Re: [RFC 01/19] extcon: add extcon-odroid-usbotg driver

2015-03-19 Thread George Cherian
Hi Robert, +Roger On Thu, Mar 19, 2015 at 5:37 PM, Robert Baldyga wrote: > Hi George, > > On 03/19/2015 09:50 AM, George Cherian wrote: >> Hi Robert, >> >> This looks like a extcon driver based on gpio for USB. >> >> Roger posted a generic one a while back

Re: [RFC 01/19] extcon: add extcon-odroid-usbotg driver

2015-03-19 Thread George Cherian
Hi Robert, This looks like a extcon driver based on gpio for USB. Roger posted a generic one a while back. https://lkml.org/lkml/2015/2/2/187 Doesn't this serve the purpose rather than adding this driver? -George On Wed, Mar 18, 2015 at 7:34 PM, Robert Baldyga wrote: > This patch adds extcon

Re: [RFC 11/19] dwc3: add OTG handling code

2015-03-19 Thread George Cherian
Hi Robert, On Wed, Mar 18, 2015 at 7:34 PM, Robert Baldyga wrote: > > This patch introduces OTG support in DWC3 driver. OTG feature is responsible > for dynamic USB role switching (between host and peripheral modes) based > on detected cable type. > > Each role switch causes complete core reinit

Re: [PATCH] usb: dwc3: dwc3-omap: Fix disable IRQ

2015-02-12 Thread George Cherian
On 02/12/2015 11:52 PM, Felipe Balbi wrote: On Thu, Feb 12, 2015 at 11:13:16AM +0530, George Cherian wrote: >In the wrapper the IRQ disable should be done by writing 1's to the >IRQ*_CLR register. Existing code is broken because it instead writes >zeros to IRQ*_SET register.

[PATCH v2] usb: dwc3: dwc3-omap: Fix disable IRQ

2015-02-12 Thread George Cherian
Fixes: 72246da40f37 ("usb: Introduce DesignWare USB3 DRD Driver") Cc: # v3.2+ Signed-off-by: George Cherian --- drivers/usb/dwc3/dwc3-omap.c | 30 -- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/drivers/usb/dwc3/dwc3-omap.c b/drivers/usb/dwc3/dw

[PATCH] usb: dwc3: dwc3-omap: Fix disable IRQ

2015-02-11 Thread George Cherian
ff-by: George Cherian --- drivers/usb/dwc3/dwc3-omap.c | 30 -- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/drivers/usb/dwc3/dwc3-omap.c b/drivers/usb/dwc3/dwc3-omap.c index 172d64e..52e0c4e 100644 --- a/drivers/usb/dwc3/dwc3-omap.c +++ b/drivers/usb

Re: [PATCH 2/2] usb: musb: Fix getting a generic phy for musb_dsps

2015-02-08 Thread George Cherian
Hi Tony, On 02/06/2015 10:53 PM, Tony Lindgren wrote: * George Cherian [150206 05:05]: Hi Tony, You also need to add similar things in dsps_musb_reset(); Otherwise you might not recover from a BABBLE condition. Thank I totally missed that, updated patch below. Do you have some testcase

Re: [PATCH 2/2] usb: musb: Fix getting a generic phy for musb_dsps

2015-02-06 Thread George Cherian
Hi Tony, You also need to add similar things in dsps_musb_reset(); Otherwise you might not recover from a BABBLE condition. On 02/05/2015 10:05 PM, Tony Lindgren wrote: We still have a combination of legacy phys and generic phys in use so we need to support both types of phy for musb_dsps.c.

[PATCH 02/19] usb: host xhci: fix up deallocation code

2014-11-25 Thread George Cherian
preserve the already allocated xhci struct for the subsequent call of usb_add_hcd() from the DRD library. A new quirk flag XHCI_DRD_SUPPORT is added to differentiate between normal usb_remove_hcd and drd specific call. Signed-off-by: George Cherian --- drivers/usb/host/xhci.c | 22

[PATCH 03/19] usb: host: xhci-plat: Add support to pass XHCI_DRD_SUPPORT quirk

2014-11-25 Thread George Cherian
Extend the platform data to pass XHCI_DRD_SUPPORT quirk to the xhci driver. Signed-off-by: George Cherian --- drivers/usb/host/xhci-plat.c | 4 include/linux/usb/xhci_pdriver.h | 1 + 2 files changed, 5 insertions(+) diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci

[PATCH 00/19] Add Support for USB DRD in AM437x

2014-11-25 Thread George Cherian
Felipe Balbi (2): usb: dwc3: core: Adapt to named interrupts arm: dts: am4372: Add named interrupt property for dwc3 George Cherian (17): usb: common: drd-lib: Add DRD lib for USB. usb: host xhci: fix up deallocation code usb: host: xhci-plat: Add support to pass XHCI_DRD_SUPPORT quirk

[PATCH 01/19] usb: common: drd-lib: Add DRD lib for USB.

2014-11-25 Thread George Cherian
IP specific low level start/stop defined in ll_start/stop Signed-off-by: George Cherian --- drivers/usb/Kconfig | 15 ++ drivers/usb/common/Makefile | 1 + drivers/usb/common/drd-lib.c | 346 +++ include/linux/usb/drd.h | 77 ++ 4

[PATCH 09/19] usb: dwc3: dwc3-omap: Make the wrapper interrupt shared

2014-11-25 Thread George Cherian
OTG interrupt and wrapper is shared Signed-off-by: George Cherian --- drivers/usb/dwc3/dwc3-omap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/usb/dwc3/dwc3-omap.c b/drivers/usb/dwc3/dwc3-omap.c index 172d64e..f99e2ca 100644 --- a/drivers/usb/dwc3/dwc3-omap.c

[PATCH 06/19] usb: dwc3: host: Pass the XHCI_DRD_SUPPORT and XHCI_NEEDS_LHC_RESET quirk

2014-11-25 Thread George Cherian
d-off-by: George Cherian --- drivers/usb/dwc3/host.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/usb/dwc3/host.c b/drivers/usb/dwc3/host.c index dcb8ca0..257b5b5 100644 --- a/drivers/usb/dwc3/host.c +++ b/drivers/usb/dwc3/host.c @@ -53,6 +53,8 @@ int dwc3_host_init(struct dwc3

[PATCH 05/19] usb: host: xhci-plat: Add support to pass XHCI_NEEDS_LHC_RESET quirk

2014-11-25 Thread George Cherian
Extend the platform data to pass XHCI_NEEDS_LHC_RESET quirk to the xhci driver. Signed-off-by: George Cherian --- drivers/usb/host/xhci-plat.c | 3 +++ include/linux/usb/xhci_pdriver.h | 1 + 2 files changed, 4 insertions(+) diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci

[PATCH 07/19] usb: host: xhci: Adapt xhci to use usb drd library

2014-11-25 Thread George Cherian
Adapt the xhci-plat driver to use drd library functions. In prepration to support DRD on dwc3. Signed-off-by: George Cherian --- drivers/usb/host/xhci-plat.c | 15 +++ 1 file changed, 15 insertions(+) diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci-plat.c index

[PATCH 04/19] usb: host xhci: Add XHCI_NEEDS_LHC_RESET quirk

2014-11-25 Thread George Cherian
and Device modes, it's advbised to do a LIGHT HC reset else the already configured global registers of the DWC3 IP gets re-initialized. Signed-off-by: George Cherian --- drivers/usb/host/xhci.c | 5 +++-- drivers/usb/host/xhci.h | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --

[PATCH 08/19] usb: dwc3: core: Add dwc3_drd_helper function

2014-11-25 Thread George Cherian
ed to re-initialize the EVENT buffer registers for the Device mode to continue work properly. dwc3_event_buffers_setup() is exported out from core.c via wrapper dwc3_core_gadget_helper() which will be invoked from dwc3 otg driver. Signed-off-by: George Cherian --- drivers/usb/dwc3/core.

[PATCH 16/19] arm: dts: omap5: Add named interrupt property for dwc3

2014-11-25 Thread George Cherian
Add interrupt names so that the same can be used for OTG easily. Signed-off-by: George Cherian --- arch/arm/boot/dts/omap5.dtsi | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi index 256b7f6..a712ad9 100644

[PATCH 14/19] usb: dwc3: otg: Add the initial otg driver for dwc3.

2014-11-25 Thread George Cherian
Add the Initial OTG driver for dwc3. Currently support only * ID based Role switching. Signed-off-by: George Cherian --- drivers/usb/dwc3/Makefile | 4 ++ drivers/usb/dwc3/core.c | 10 +--- drivers/usb/dwc3/core.h | 10 drivers/usb/dwc3/otg.c| 126

[PATCH 11/19] usb: dwc3: Add seperate dwc3_gadget object to support gadget release

2014-11-25 Thread George Cherian
while switching roles between HOST and DEVICE modes. If the usb_gadget is not released during usb_del_gadget_udc, the subsequent usb_add_gadget_udc would try to initialize an already initialized kobject. To avoid this make sure we have an easily freeable object. Signed-off-by: George Cherian --- dr

[PATCH 13/19] usb: dwc3: core: Add DWC3 OTG specific register defines

2014-11-25 Thread George Cherian
Add OTG reggister defines to DWC3 core.h Signed-off-by: George Cherian --- drivers/usb/dwc3/core.h | 68 + 1 file changed, 68 insertions(+) diff --git a/drivers/usb/dwc3/core.h b/drivers/usb/dwc3/core.h index 7fbe736..eb2e970 100644 --- a/drivers

[PATCH 15/19] arm: dts: am4372: Add named interrupt property for dwc3

2014-11-25 Thread George Cherian
From: Felipe Balbi Add interrupt names so that the same can be used for OTG easily. Signed-off-by: Felipe Balbi Signed-off-by: George Cherian --- arch/arm/boot/dts/am4372.dtsi | 18 ++ 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/arch/arm/boot/dts/am4372

[PATCH 12/19] usb: dwc3: gadget: Adapt gadget to drd library

2014-11-25 Thread George Cherian
Adapt the dwc3 gadget to use drd library functions. In prepration to support DRD on dwc3. Signed-off-by: George Cherian --- drivers/usb/dwc3/gadget.c | 128 -- 1 file changed, 100 insertions(+), 28 deletions(-) diff --git a/drivers/usb/dwc3/gadget.c

[PATCH 10/19] usb: dwc3: core: Adapt to named interrupts

2014-11-25 Thread George Cherian
From: Felipe Balbi Add support to use interrupt names, Following are the interrupt names Peripheral Interrupt - peripheral HOST Interrupt - host OTG Interrupt - otg Signed-off-by: Felipe Balbi Signed-off-by: George Cherian --- drivers/usb/dwc3/core.c | 12 drivers/usb/dwc3

[PATCH 18/19] arm: dts: exynos5250: Add named interrupt property for dwc3

2014-11-25 Thread George Cherian
Add interrupt names so that the same can be used for OTG easily. Signed-off-by: George Cherian --- arch/arm/boot/dts/exynos5250.dtsi | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi index f21b9aa

[PATCH 19/19] arm: dts: am43x evms: Make usb1 as OTG

2014-11-25 Thread George Cherian
USB1 of am43x EPOS EVM, am437x GP EVM and am437x SK EVM can be used as OTG. Enable the same. Signed-off-by: George Cherian --- arch/arm/boot/dts/am437x-gp-evm.dts | 2 +- arch/arm/boot/dts/am437x-sk-evm.dts | 2 +- arch/arm/boot/dts/am43x-epos-evm.dts | 2 +- 3 files changed, 3 insertions

[PATCH 17/19] arm: dts: dra7: Add named interrupt property for dwc3

2014-11-25 Thread George Cherian
Add interrupt names so that the same can be used for OTG easily. Signed-off-by: George Cherian --- arch/arm/boot/dts/dra7.dtsi | 28 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi index

Re: [PATCH] usb: musb: core: Disable the Interrupts till BABBLE is fully handled

2014-11-14 Thread George Cherian
On 11/14/2014 02:12 PM, Sebastian Andrzej Siewior wrote: On 11/14/2014 09:24 AM, George Cherian wrote: Disable the MUSB interrupts till MUSB is recovered fully from BABBLE condition. There are chances that we could get multiple interrupts till the time the babble recover work gets scheduled

[PATCH] usb: musb: core: Disable the Interrupts till BABBLE is fully handled

2014-11-14 Thread George Cherian
Signed-off-by: George Cherian --- drivers/usb/musb/musb_core.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c index 3345c94..992c768 100644 --- a/drivers/usb/musb/musb_core.c +++ b/drivers/usb/musb

Re: [PATCH] usb: musb: musb_dsps: fix NULL pointer in suspend

2014-10-08 Thread George Cherian
3a4) because platform_get_drvdata(glue->musb) returns a NULL pointer as long as the device is not fully probed. Signed-off-by: Sebastian Andrzej Siewior Tested-by: George Cherian --- drivers/usb/musb/musb_dsps.c | 13 +++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/

Re: OOPS: musb_hdrc

2014-09-09 Thread George Cherian
Hi Matwey, On 09/09/2014 01:58 PM, Matwey V. Kornilov wrote: Hi, Can you add a few printks around drivers/usb/musb/musb_cppi41.c to further narrow down where the problem is ? I ran v3.17-rc1 on my beaglebone black (a while back) and didn't have any issues. Now I am rebuilding the kernel to se

[RESEND PATCH v3 1/4] usb: dwc3: dwc3-omap: Remove x_major calculation from revision register

2014-07-16 Thread George Cherian
Remove the x_major calculation logic from the wrapper revision register to differentiate between OMAP5 and AM437x. This was done to find the register offsets of wrapper register. Now that We do it using dt compatible, remove the whole logic. Signed-off-by: George Cherian --- drivers/usb/dwc3

[RESEND PATCH v3 4/4] usb: dwc3: dwc3-omap: Add dwc3_omap_extcon_register function

2014-07-16 Thread George Cherian
Move the extcon related code to its own function. Improve code readability, decrease the dwc3_probe() size. Signed-off-by: George Cherian --- drivers/usb/dwc3/dwc3-omap.c | 65 ++-- 1 file changed, 39 insertions(+), 26 deletions(-) diff --git a/drivers

[RESEND PATCH v3 2/4] usb: dwc3: dwc3-omap: Add dwc3_omap_map_offset() function

2014-07-16 Thread George Cherian
Move map offset to its own seperate function. Improve code readability, decrease the dwc3_probe() size. Signed-off-by: George Cherian --- drivers/usb/dwc3/dwc3-omap.c | 33 - 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/drivers/usb/dwc3/dwc3

[RESEND PATCH v3 3/4] usb: dwc3: dwc3-omap: Add dwc3_omap_set_utmi_mode() function

2014-07-16 Thread George Cherian
Move find and set the utmi mode to its own seperate function. Improve code readability, decrease the dwc3_probe() size. Signed-off-by: George Cherian --- drivers/usb/dwc3/dwc3-omap.c | 44 +--- 1 file changed, 25 insertions(+), 19 deletions(-) diff --git

[RESEND PATCH v3 0/4] Cleanup for dwc3-omap

2014-07-16 Thread George Cherian
The series does some refactoring on dwc3_probe() Patch 1 - Now that we use driver compatible for revision check, remove the unnecessary logic. Patch 2-4 - reduce the size of dwc3_probe() George Cherian (4): usb: dwc3: dwc3-omap: Remove x_major calculation from revision register usb

[PATCH v7 3/4] usb: musb: core: Convert the musb_platform_reset to have a return value.

2014-07-16 Thread George Cherian
resetting the IP block. In preperation to add that support its better to have a rest_done return for musb_platform_reset(). Signed-off-by: George Cherian Tested-by: Bin Liu --- drivers/usb/musb/musb_core.c | 10 ++ drivers/usb/musb/musb_core.h | 10 ++ drivers/usb/musb/musb_dsps.c

[PATCH v7 4/4] usb: musb: dsps: Add the sw_babble_control() and Enable for newer silicon

2014-07-16 Thread George Cherian
register reads 0x4 by default in newer silicon as opposed to 0 in old versions of AM335x. Based on this enable the sw babble control logic. Signed-off-by: George Cherian Tested-by: Bin Liu --- drivers/usb/musb/musb_dsps.c | 89 +--- drivers/usb/musb

[PATCH v7 2/4] usb: musb: core: Convert babble recover work to delayed work

2014-07-16 Thread George Cherian
-howto.txt Signed-off-by: George Cherian Tested-by: Bin Liu --- drivers/usb/musb/musb_core.c | 15 --- drivers/usb/musb/musb_core.h | 2 +- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c index 0ad9551..c0ce09f

[PATCH v7 0/4] Add support for SW babble Control

2014-07-16 Thread George Cherian
introduced in Patch#5 of v4. v3 -> v4 : Fixes an issue in gagdet mode - BUS RESET should not be handled as a BABBLE. Added a check for the same.(Patch #1) Enable sw babble control properly (Patch #6) v2 -> v3 : Modify musb_platform_reset() to return zero

[PATCH v7 1/4] usb: musb: core: Handle Babble condition only in HOST mode

2014-07-16 Thread George Cherian
BABBLE and RESET share the same interrupt. The interrupt is considered to be RESET if MUSB is in peripheral mode and as a BABBLE if MUSB is in HOST mode. Handle babble condition iff MUSB is in HOST mode. Signed-off-by: George Cherian Tested-by: Bin Liu --- drivers/usb/musb/musb_core.c | 2

Re: [PATCH 0/2] usb musb/cppi41: Address issues with isochronous audio endpoints

2014-06-24 Thread George Cherian
Hi Torben, On 6/24/2014 6:31 PM, Torben Hohn wrote: On Wed, Jun 18, 2014 at 11:28:25AM +0200, Daniel Mack wrote: Hi, Hi Daniel, I've been debugging issues with musb in host mode and both full-speed and high-speed USB audio devices with cppi41 DMA mode enabled. The effect that was observed w

Re: [PATCH v2 0/2] usb musb/cppi41: Address issues with isochronous audio endpoints

2014-06-19 Thread George Cherian
On 6/20/2014 3:50 AM, Daniel Mack wrote: Hi, I've been debugging issues with musb in host mode and both full-speed and high-speed USB audio devices with cppi41 DMA mode enabled. The effect that was observed with full-speed devices was that CPU load went up to 100% due to the dma channels dma_co

Re: Gadget regression with enabling of MUSB babble interrupt handling

2014-06-19 Thread George Cherian
On 6/19/2014 4:54 PM, Tony Lindgren wrote: * Daniel Mack [140619 03:51]: On 06/19/2014 12:43 PM, Tony Lindgren wrote: * Daniel Mack [140619 03:38]: On 06/19/2014 12:31 PM, Tony Lindgren wrote: * Daniel Mack [140619 03:10]: On 06/19/2014 11:56 AM, Tony Lindgren wrote: But that also raises

Re: [PATCH] usb: dwc3: add support for USB 2.0-only core configuration

2014-06-02 Thread George Cherian
On 5/31/2014 5:35 AM, Paul Zimmerman wrote: From: Felipe Balbi [mailto:ba...@ti.com] Sent: Friday, May 30, 2014 4:42 PM On Fri, May 23, 2014 at 11:39:24AM -0700, Paul Zimmerman wrote: Newer DWC3 controllers can be built for USB 2.0-only mode, where most of the USB 3.0 circuitry is left out. To

[PATCH v6 2/5] usb: musb: core: Convert babble recover work to delayed work

2014-05-26 Thread George Cherian
-howto.txt Signed-off-by: George Cherian --- drivers/usb/musb/musb_core.c | 15 --- drivers/usb/musb/musb_core.h | 2 +- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c index 0ad9551..c0ce09f 100644 --- a/drivers/usb

[PATCH v6 1/5] usb: musb: core: Handle Babble condition only in HOST mode

2014-05-26 Thread George Cherian
BABBLE and RESET share the same interrupt. The interrupt is considered to be RESET if MUSB is in peripheral mode and as a BABBLE if MUSB is in HOST mode. Handle babble condition iff MUSB is in HOST mode. Signed-off-by: George Cherian --- drivers/usb/musb/musb_core.c | 2 +- 1 file changed, 1

[PATCH v6 0/5] Add support for SW babble Control

2014-05-26 Thread George Cherian
Fixes an issue in gagdet mode - BUS RESET should not be handled as a BABBLE. Added a check for the same.(Patch #1) Enable sw babble control properly (Patch #6) v2 -> v3 : Modify musb_platform_reset() to return zero on success. George Cherian (5): usb

[PATCH v6 3/5] usb: musb: dsps: Call usb_phy(_shutdown/_init) during musb_platform_reset()

2014-05-26 Thread George Cherian
For DSPS platform usb_phy_vbus(_off/_on) are NOPs. So during musb_platform_reset() call usb_phy(_shutdown/_init) Signed-off-by: George Cherian --- drivers/usb/musb/musb_dsps.c | 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb

[PATCH v6 4/5] usb: musb: core: Convert the musb_platform_reset to have a return value.

2014-05-26 Thread George Cherian
resetting the IP block. In preperation to add that support its better to have a rest_done return for musb_platform_reset(). Signed-off-by: George Cherian --- drivers/usb/musb/musb_core.c | 10 ++ drivers/usb/musb/musb_core.h | 10 ++ drivers/usb/musb/musb_dsps.c | 3 ++- 3 files

[PATCH v6 5/5] usb: musb: dsps: Add the sw_babble_control() and Enable for newer silicon

2014-05-26 Thread George Cherian
register reads 0x4 by default in newer silicon as opposed to 0 in old versions of AM335x. Based on this enable the sw babble control logic. Signed-off-by: George Cherian --- drivers/usb/musb/musb_dsps.c | 89 +--- drivers/usb/musb/musb_regs.h | 7 2

Re: [PATCH v4 1/6] usb: musb: core: Handle Babble condition only in HOST mode

2014-05-26 Thread George Cherian
On 5/23/2014 2:12 AM, Bin Liu wrote: Hi George, On Mon, May 19, 2014 at 11:32 PM, George Cherian wrote: Hi Bin, On 5/19/2014 9:24 PM, Bin Liu wrote: Hi, On Mon, May 19, 2014 at 8:39 AM, George Cherian wrote: BABBLE and RESET share the same interrupt. The interrupt is considered to be

Re: [PATCH v3 5/7] usb: musb: introduce dma_channel.packet_done

2014-05-25 Thread George Cherian
set it from musb_cppi41.c. If set, it will make the core do what the DMA layer decided and complete the urb. Signed-off-by: Daniel Mack Since this is used only for rx, Can you name newly added dma flag as rx_packet_done? Other than that. Acked-by: George Cherian --- drivers/usb/musb/musb_

Re: [PATCH v3 4/7] usb: musb: fix bit mask for CSR in musb_h_tx_flush_fifo()

2014-05-25 Thread George Cherian
On 5/25/2014 7:28 PM, Sergei Shtylyov wrote: Hello. On 25-05-2014 12:36, Daniel Mack wrote: The datasheet says that MUSB_TXCSR_FLUSHFIFO is only valid when MUSB_CSR0_TXPKTRDY is set as well. With this patch applied, the warning in this function does no longer kick in when an USB soundcard i

Re: [PATCH v2 3/6] usb: musb: use is_host_active() to distinguish between host and gadget mode

2014-05-23 Thread George Cherian
On 5/23/2014 3:00 PM, Daniel Mack wrote: On AM33xx platforms, unplugging a device in the middle of an active transfer leads to a drop of MUSB_DEVCTL_HM in MUSB_DEVCTL before the system is informed about a disconnect. This consequently makes the musb core call the gadget code to handle the interru

Re: [PATCH v2 6/6] usb: musb/cppi41: call musb_ep_select() before accessing an endpoint's CSR

2014-05-23 Thread George Cherian
On 5/23/2014 6:58 PM, Daniel Mack wrote: On 05/23/2014 03:18 PM, George Cherian wrote: On 5/23/2014 3:01 PM, Daniel Mack wrote: Before accessing any of an endpoint's CSR registers, make sure the correct endpoint is selected. Otherwise, data read from or written to the registers is like

Re: [PATCH v2 6/6] usb: musb/cppi41: call musb_ep_select() before accessing an endpoint's CSR

2014-05-23 Thread George Cherian
On 5/23/2014 3:01 PM, Daniel Mack wrote: Before accessing any of an endpoint's CSR registers, make sure the correct endpoint is selected. Otherwise, data read from or written to the registers is likely to affect the wrong endpoint as long as the connected device has more than one endpoint. This,

Re: [PATCH v2 2/6] usb: musb: remove unnecessary (void) prefix at function calls

2014-05-23 Thread George Cherian
On 5/23/2014 3:00 PM, Daniel Mack wrote: Just a little cleanup that removes unnecessary casts. Signed-off-by: Daniel Mack Acked-by: George Cherian --- drivers/usb/musb/musb_host.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/usb/musb/musb_host.c b

Re: [PATCH v2 5/6] usb: musb: introduce dma_channel.packet_done

2014-05-23 Thread George Cherian
On 5/23/2014 5:04 PM, Daniel Mack wrote: Hi George, Thanks for having a look! On 05/23/2014 01:24 PM, George Cherian wrote: On 5/23/2014 3:01 PM, Daniel Mack wrote: The musb/cppi41 glue layer is capable of handling transactions that span over more than one USB packet by reloading the DMA

Re: [PATCH v2 5/6] usb: musb: introduce dma_channel.packet_done

2014-05-23 Thread George Cherian
On 5/23/2014 3:01 PM, Daniel Mack wrote: The musb/cppi41 glue layer is capable of handling transactions that span over more than one USB packet by reloading the DMA descriptors partially. An urb is considered completed when either its transfer buffer has been filled entirely (actual_length == tra

Re: [PATCH v5 6/6] usb: musb: dsps: Enable sw babble control for newer silicon

2014-05-22 Thread George Cherian
On 5/22/2014 5:28 PM, Sergei Shtylyov wrote: Hello. On 22-05-2014 10:29, George Cherian wrote: Find whether we are running on newer silicon. The babble control register reads 0x4 by default in newer silicon as opposed to 0 in old versions of AM335x. Based on this enable the sw babble control

[PATCH v5 2/6] usb: musb: core: Convert babble recover work to delayed work

2014-05-21 Thread George Cherian
-howto.txt Signed-off-by: George Cherian --- drivers/usb/musb/musb_core.c | 15 --- drivers/usb/musb/musb_core.h | 2 +- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c index eff3c5c..8920b80 100644 --- a/drivers

[PATCH v5 0/6] Add support for SW babble Control

2014-05-21 Thread George Cherian
e - BUS RESET should not be handled as a BABBLE. Added a check for the same.(Patch #1) Enable sw babble control properly (Patch #6) v2 -> v3 : Modify musb_platform_reset() to return zero on success. George Cherian (6): usb: musb: core: Handle Babble condition on

[PATCH v5 6/6] usb: musb: dsps: Enable sw babble control for newer silicon

2014-05-21 Thread George Cherian
Find whether we are running on newer silicon. The babble control register reads 0x4 by default in newer silicon as opposed to 0 in old versions of AM335x. Based on this enable the sw babble control logic. Signed-off-by: George Cherian --- drivers/usb/musb/musb_dsps.c | 38

[PATCH v5 4/6] usb: musb: core: Convert the musb_platform_reset to have a return value.

2014-05-21 Thread George Cherian
resetting the IP block. In preperation to add that support its better to have a rest_done return for musb_platform_reset(). Signed-off-by: George Cherian --- drivers/usb/musb/musb_core.c | 10 ++ drivers/usb/musb/musb_core.h | 10 ++ drivers/usb/musb/musb_dsps.c | 3 ++- 3 files

[PATCH v5 5/6] usb: musb: dsps: Add the sw_babble_control()

2014-05-21 Thread George Cherian
Add sw_babble_control() logic to differentiate between transient babble and real babble condition. Also add the SW babble control register definitions. Babble control register logic is implemented in the latest revision of AM335x. Signed-off-by: George Cherian --- drivers/usb/musb/musb_dsps.c

[PATCH v5 1/6] usb: musb: core: Handle Babble condition only in HOST mode

2014-05-21 Thread George Cherian
BABBLE and RESET share the same interrupt. The interrupt is considered to be RESET if MUSB is in peripheral mode and as a BABBLE if MUSB is in HOST mode. Handle babble condition iff MUSB is in HOST mode. Signed-off-by: George Cherian --- drivers/usb/musb/musb_core.c | 2 +- 1 file changed, 1

[PATCH v5 3/6] usb: musb: dsps: Call usb_phy(_shutdown/_init) during musb_platform_reset()

2014-05-21 Thread George Cherian
For DSPS platform usb_phy_vbus(_off/_on) are NOPs. So during musb_platform_reset() call usb_phy(_shutdown/_init) Signed-off-by: George Cherian --- drivers/usb/musb/musb_dsps.c | 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb

[PATCH v3 1/6] usb: dwc3: dwc3-omap: Remove x_major calculation from revision register

2014-05-21 Thread George Cherian
Remove the x_major calculation logic from the wrapper revision register to differentiate between OMAP5 and AM437x. This was done to find the register offsets of wrapper register. Now that We do it using dt compatible, remove the whole logic. Signed-off-by: George Cherian --- drivers/usb/dwc3

[PATCH v3 3/6] usb: dwc3: dwc3-omap: Add dwc3_omap_set_utmi_mode() function

2014-05-21 Thread George Cherian
Move find and set the utmi mode to its own seperate function. Improve code readability, decrease the dwc3_probe() size. Signed-off-by: George Cherian --- drivers/usb/dwc3/dwc3-omap.c | 44 +--- 1 file changed, 25 insertions(+), 19 deletions(-) diff --git

[PATCH v3 5/6] usb: dwc3: dwc3-omap: Fix the crash on module removal

2014-05-21 Thread George Cherian
7e2a8746ff4fc811 ]--- Segmentation fault Signed-off-by: George Cherian --- drivers/usb/dwc3/dwc3-omap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/dwc3/dwc3-omap.c b/drivers/usb/dwc3/dwc3-omap.c index 7594535..b729cdb 100644 --- a/drivers/usb/dwc3/dwc3-omap.c +++ b

[PATCH v3 2/6] usb: dwc3: dwc3-omap: Add dwc3_omap_map_offset() function

2014-05-21 Thread George Cherian
Move map offset to its own seperate function. Improve code readability, decrease the dwc3_probe() size. Signed-off-by: George Cherian --- drivers/usb/dwc3/dwc3-omap.c | 33 - 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/drivers/usb/dwc3/dwc3

[PATCH v3 6/6] usb: dwc3: dwc3-omap: Disable/Enable only wrapper interrupts in prepare/complete

2014-05-21 Thread George Cherian
The dwc3 wrapper driver should not be fiddling with the core interrupts. Disabling the core interrupts in prepare stops xhci from proper operation. So remove disable/enable of core interrupts from prepare/complete. Signed-off-by: George Cherian --- drivers/usb/dwc3/dwc3-omap.c | 15

[PATCH v3 4/6] usb: dwc3: dwc3-omap: Add dwc3_omap_extcon_register function

2014-05-21 Thread George Cherian
Move the extcon related code to its own function. Improve code readability, decrease the dwc3_probe() size. Signed-off-by: George Cherian --- drivers/usb/dwc3/dwc3-omap.c | 65 ++-- 1 file changed, 39 insertions(+), 26 deletions(-) diff --git a/drivers

[PATCH v3 0/6] Cleanup and fixes for dwc3-omap

2014-05-21 Thread George Cherian
system sleep. George Cherian (6): usb: dwc3: dwc3-omap: Remove x_major calculation from revision register usb: dwc3: dwc3-omap: Add dwc3_omap_map_offset() function usb: dwc3: dwc3-omap: Add dwc3_omap_set_utmi_mode() function usb: dwc3: dwc3-omap: Add dwc3_omap_extcon_register function

Re: [PATCH v4 1/6] usb: musb: core: Handle Babble condition only in HOST mode

2014-05-19 Thread George Cherian
Hi Bin, On 5/19/2014 9:24 PM, Bin Liu wrote: Hi, On Mon, May 19, 2014 at 8:39 AM, George Cherian wrote: BABBLE and RESET share the same interrupt. The interrupt is considered to be RESET if MUSB is in peripheral mode and as a BABBLE if MUSB is in HOST mode. Handle babble condition iff MUSB

[PATCH v4 1/6] usb: musb: core: Handle Babble condition only in HOST mode

2014-05-19 Thread George Cherian
BABBLE and RESET share the same interrupt. The interrupt is considered to be RESET if MUSB is in peripheral mode and as a BABBLE if MUSB is in HOST mode. Handle babble condition iff MUSB is in HOST mode. Signed-off-by: George Cherian --- drivers/usb/musb/musb_core.c | 2 +- 1 file changed, 1

[PATCH v4 0/6] Add support for SW babble Control

2014-05-19 Thread George Cherian
or the same.(Patch #1) Enable sw babble control properly (Patch #6) v2 -> v3 : Modify musb_platform_reset() to return zero on success. George Cherian (6): usb: musb: core: Handle Babble condition only in HOST mode usb: musb: core: Convert babble recover work to delaye

[PATCH v4 2/6] usb: musb: core: Convert babble recover work to delayed work

2014-05-19 Thread George Cherian
-howto.txt Signed-off-by: George Cherian --- drivers/usb/musb/musb_core.c | 15 --- drivers/usb/musb/musb_core.h | 2 +- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c index eff3c5c..8920b80 100644 --- a/drivers

[PATCH v4 4/6] usb: musb: core: Convert the musb_platform_reset to have a return value.

2014-05-19 Thread George Cherian
resetting the IP block. In preperation to add that support its better to have a rest_done return for musb_platform_reset(). Signed-off-by: George Cherian --- drivers/usb/musb/musb_core.c | 38 +- drivers/usb/musb/musb_core.h | 10 ++ drivers/usb/musb

[PATCH v4 5/6] usb: musb: dsps: Add the sw_babble_control()

2014-05-19 Thread George Cherian
Add sw_babble_control() logic to differentiate between transient babble and real babble condition. Also add the SW babble control register definitions. Babble control register logic is implemented in the latest revision of AM335x. Signed-off-by: George Cherian --- drivers/usb/musb/musb_dsps.c

[PATCH v4 3/6] usb: musb: dsps: Call usb_phy(_shutdown/_init) during musb_platform_reset()

2014-05-19 Thread George Cherian
For DSPS platform usb_phy_vbus(_off/_on) are NOPs. So during musb_platform_reset() call usb_phy(_shutdown/_init) Signed-off-by: George Cherian --- drivers/usb/musb/musb_dsps.c | 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb

[PATCH v4 6/6] usb: musb: dsps: Enable sw babble control for newer silicon

2014-05-19 Thread George Cherian
Find whether we are running on newer silicon. The babble control register reads 0x4 by default in newer silicon as opposed to 0 in old versions of AM335x. Based on this enable the sw babble control logic. Signed-off-by: George Cherian --- drivers/usb/musb/musb_dsps.c | 37

Re: [PATCH v3 0/5] Add support for SW babble Control

2014-05-19 Thread George Cherian
Hi Bin, On 5/15/2014 8:49 PM, Bin Liu wrote: George, On Thu, May 15, 2014 at 1:28 AM, George Cherian wrote: Hi Bin, On 5/14/2014 10:13 PM, Bin Liu wrote: George, On Wed, May 14, 2014 at 9:34 AM, Bin Liu wrote: George, On Wed, May 14, 2014 at 12:37 AM, George Cherian wrote: On 5/14

[PATCH v2 0/6] Cleanup and fixes for dwc3-omap

2014-05-19 Thread George Cherian
system sleep. George Cherian (6): usb: dwc3: dwc3-omap: Remove x_major calculation from revision register usb: dwc3: dwc3-omap: Add dwc3_omap_map_offset() function usb: dwc3: dwc3-omap: Add dwc3_omap_set_utmi_mode() function usb: dwc3: dwc3-omap: Add dwc3_omap_extcon_register function

[PATCH v2 1/6] usb: dwc3: dwc3-omap: Remove x_major calculation from revision register

2014-05-19 Thread George Cherian
Remove the x_major calculation logic from the wrapper revision register to differentiate between OMAP5 and AM437x. This was done to find the register offsets of wrapper register. Now that We do it using dt compatible, remove the whole logic. Signed-off-by: George Cherian --- drivers/usb/dwc3

[PATCH v2 2/6] usb: dwc3: dwc3-omap: Add dwc3_omap_map_offset() function

2014-05-19 Thread George Cherian
Move map offset to its own seperate function. Improve code readability, decrease the dwc3_probe() size. Signed-off-by: George Cherian --- drivers/usb/dwc3/dwc3-omap.c | 31 +++ 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/drivers/usb/dwc3/dwc3

[PATCH v2 3/6] usb: dwc3: dwc3-omap: Add dwc3_omap_set_utmi_mode() function

2014-05-19 Thread George Cherian
Move find and set the utmi mode to its own seperate function. Improve code readability, decrease the dwc3_probe() size. Signed-off-by: George Cherian --- drivers/usb/dwc3/dwc3-omap.c | 44 +--- 1 file changed, 25 insertions(+), 19 deletions(-) diff --git

[PATCH v2 5/6] usb: dwc3: dwc3-omap: Fix the crash on module removal

2014-05-19 Thread George Cherian
7e2a8746ff4fc811 ]--- Segmentation fault Signed-off-by: George Cherian --- drivers/usb/dwc3/dwc3-omap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/dwc3/dwc3-omap.c b/drivers/usb/dwc3/dwc3-omap.c index 131d75a..e4f681a 100644 --- a/drivers/usb/dwc3/dwc3-omap.c +++ b

  1   2   3   >