Skip to contentSkip to conversation

driver model bring-up of dwc3 usb peripheral

PATCH New Mugunthan V N 5 participants 35 messages Mar 15, 2016 – Dec 20, 2016

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

cover driver model bring-up of dwc3 usb peripheral

This patch series enables dwc3 usb driver to adopt driver model. This has been tested on AM437x evm sk (logs [1]) by loading kernel through usb ether

Also pushed a branch for testing [2]

[1] - http://pastebin.ubuntu.com/15391169/
[2] - git://git.ti.com/~mugunthanvnm/ti-u-boot/mugunth-ti-u-boot.git dm-dwc3

Kishon Vijay Abraham I (1):
configs: am43xx: Add am43xx_evm_usbspl_defconfig

Mugunthan V N (8):
drivers: usb: dwc3: remove devm_zalloc from linux_compact
drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board
files to drivers
am437x: board: do not register usb devices when CONFIG_DM_USB is
defined
dra7xx: board: do not register usb devices when CONFIG_DM_USB is
defined
drivers: usb: dwc3: add ti dwc3 misc driver for wrapper
drivers: usb: common: add support to get maximum speed from dt
drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model
support
defconfig: am437x_sk_evm: enable usb driver model

Tom Rini (1):
am43xx: Add USB device boot support to SPL

 board/ti/am43xx/MAINTAINERS         |   1 +
 board/ti/am43xx/board.c             |  52 +++++---
 board/ti/am57xx/board.c             |  11 --
 board/ti/dra7xx/evm.c               |  13 +-
 configs/am437x_sk_evm_defconfig     |   4 +
 configs/am43xx_evm_usbspl_defconfig |   9 ++
 drivers/Makefile                    |   2 +
 drivers/usb/common/common.c         |  29 +++++
 drivers/usb/dwc3/core.c             |  64 +++++++++-
 drivers/usb/dwc3/core.h             |   6 +
 drivers/usb/dwc3/dwc3-omap.c        | 230 +++++++++++++++++++++++++++++++++++-
 drivers/usb/dwc3/gadget.c           |   2 +-
 drivers/usb/dwc3/linux-compat.h     |   5 -
 drivers/usb/dwc3/ti_usb_phy.c       |   1 +
 drivers/usb/gadget/gadget_chips.h   |   2 +
 include/configs/am43xx_evm.h        |  13 ++
 include/linux/usb/otg.h             |   9 ++
 17 files changed, 406 insertions(+), 47 deletions(-)
 create mode 100644 configs/am43xx_evm_usbspl_defconfig
Signature · 1 line
2.7.2.333.g70bd996
#1 lore raw

PATCH 1/10 drivers: usb: dwc3: remove devm_zalloc from linux_compact

devm_zalloc() is already defined in dm/device.h header, so devm_zalloc can be removed from linux_compact.h beader file.

---
 drivers/usb/dwc3/core.c         | 7 +++++--
 drivers/usb/dwc3/dwc3-omap.c    | 2 +-
 drivers/usb/dwc3/linux-compat.h | 5 -----
 drivers/usb/dwc3/ti_usb_phy.c   | 1 +
 4 files changed, 7 insertions(+), 8 deletions(-)
drivers/usb/dwc3/core.c +5 -2
index 85cc96a..c599d0b 100644
@@ -19,6 +19,7 @@
 #include <dwc3-uboot.h>
 #include <asm/dma-mapping.h>
 #include <linux/ioport.h>
+#include <dm.h>
 
 #include <linux/usb/ch9.h>
 #include <linux/usb/gadget.h>
@@ -111,7 +112,8 @@ static struct dwc3_event_buffer *dwc3_alloc_one_event_buffer(struct dwc3 *dwc,
 {
 	struct dwc3_event_buffer	*evt;
 
-	evt = devm_kzalloc(dwc->dev, sizeof(*evt), GFP_KERNEL);
+	evt = devm_kzalloc((struct udevice *)dwc->dev, sizeof(*evt),
+			   GFP_KERNEL);
 	if (!evt)
 		return ERR_PTR(-ENOMEM);
 
@@ -622,7 +624,8 @@ int dwc3_uboot_init(struct dwc3_device *dwc3_dev)
 
 	void			*mem;
 
-	mem = devm_kzalloc(dev, sizeof(*dwc) + DWC3_ALIGN_MASK, GFP_KERNEL);
+	mem = devm_kzalloc((struct udevice *)dev,
+			   sizeof(*dwc) + DWC3_ALIGN_MASK, GFP_KERNEL);
 	if (!mem)
 		return -ENOMEM;
 
drivers/usb/dwc3/dwc3-omap.c +1 -1
index 3dcc2f4..afbd845 100644
@@ -377,7 +377,7 @@ int dwc3_omap_uboot_init(struct dwc3_omap_device *omap_dev)
 	struct device		*dev = NULL;
 	struct dwc3_omap	*omap;
 
-	omap = devm_kzalloc(dev, sizeof(*omap), GFP_KERNEL);
+	omap = devm_kzalloc((struct udevice *)dev, sizeof(*omap), GFP_KERNEL);
 	if (!omap)
 		return -ENOMEM;
 
drivers/usb/dwc3/linux-compat.h +0 -5
index 9e944a3..f95d615 100644
@@ -23,9 +23,4 @@ static inline size_t strlcat(char *dest, const char *src, size_t n)
 	return strlen(dest) + strlen(src);
 }
 
-static inline void *devm_kzalloc(struct device *dev, unsigned int size,
-				 unsigned int flags)
-{
-	return kzalloc(size, flags);
-}
 #endif
drivers/usb/dwc3/ti_usb_phy.c +1 -0
index 4159e5a..3cc415d 100644
@@ -24,6 +24,7 @@
 #include <linux/ioport.h>
 #include <asm/io.h>
 #include <asm/arch/sys_proto.h>
+#include <dm.h>
 
 #include "linux-compat.h"
 
Signature · 1 line
2.7.2.333.g70bd996
#2 lore raw

PATCH 1/10 drivers: usb: dwc3: remove devm_zalloc from linux_compact

Quoted 4 lines · Mugunthan V N

devm_zalloc() is already defined in dm/device.h header, so devm_zalloc can be removed from linux_compact.h beader file.

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160315/d796495a/attachment.sig>
#3 lore raw

PATCH 1/10 drivers: usb: dwc3: remove devm_zalloc from linux_compact

Hi Mugunthan,

Quoted 6 lines · Tom Rini
Quoted 3 lines · Mugunthan V N

devm_zalloc() is already defined in dm/device.h header, so devm_zalloc can be removed from linux_compact.h beader file.

Quoted 6 lines
Quoted 1 line

--
Tom

Unfortunately I still cannot apply this as there are build errors. Can you please take a look and resend the entire series (along with the lonely patch) rebased to u-boot-dm/master?

09: drivers: usb: dwc3: remove devm_zalloc from linux_compact
arm: + omap5_uevm
+ omap = devm_kzalloc((struct udevice *)dev, sizeof(*omap), GFP_KERNEL);
+ ^
+ ^
+drivers/usb/dwc3/built-in.o: In function `dwc3_omap_uboot_init':
+build/../drivers/usb/dwc3/dwc3-omap.c:380: undefined reference to `devm_kzalloc'
+arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 +arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' not found in the linker script
+arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation +make[1]: *** [u-boot] Error 1
+make: *** [sub-make] Error 2
w+../drivers/usb/dwc3/dwc3-omap.c: In function 'dwc3_omap_uboot_init':
w+../drivers/usb/dwc3/dwc3-omap.c:380:2: warning: implicit declaration of function 'devm_kzalloc' [-Wimplicit-function-declaration] w+../drivers/usb/dwc3/dwc3-omap.c:380:7: warning: assignment makes pointer from integer without a cast
10: drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board files to drivers
-build/../drivers/usb/dwc3/dwc3-omap.c:380: undefined reference to `devm_kzalloc'
+drivers/usb/dwc3/built-in.o: In function `usb_gadget_handle_interrupts':
+:(.text.usb_gadget_handle_interrupts+0x0): multiple definition of `usb_gadget_handle_interrupts' +board/ti/omap5_uevm/built-in.o:build/../board/ti/omap5_uevm/evm.c:122:
first defined here
+:(.text.dwc3_omap_uboot_init+0xa): undefined reference to `devm_kzalloc' w-../drivers/usb/dwc3/dwc3-omap.c:380:2: warning: implicit declaration of function 'devm_kzalloc' [-Wimplicit-function-declaration] w-../drivers/usb/dwc3/dwc3-omap.c:380:7: warning: assignment makes pointer from integer without a cast w+../drivers/usb/dwc3/dwc3-omap.c:381:2: warning: implicit declaration of function 'devm_kzalloc' [-Wimplicit-function-declaration] w+../drivers/usb/dwc3/dwc3-omap.c:381:7: warning: assignment makes pointer from integer without a cast
11: am437x: board: do not register usb devices when CONFIG_DM_USB is defined 12: dra7xx: board: do not register usb devices when CONFIG_DM_USB is defined 13: drivers: usb: dwc3: add ti dwc3 misc driver for wrapper
- omap = devm_kzalloc((struct udevice *)dev, sizeof(*omap), GFP_KERNEL);
- ^
- ^
-drivers/usb/dwc3/built-in.o: In function `dwc3_omap_uboot_init':
-:(.text.dwc3_omap_uboot_init+0xa): undefined reference to `devm_kzalloc' -arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 -arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' not found in the linker script
-arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation w-../drivers/usb/dwc3/dwc3-omap.c: In function 'dwc3_omap_uboot_init':
w-../drivers/usb/dwc3/dwc3-omap.c:381:2: warning: implicit declaration of function 'devm_kzalloc' [-Wimplicit-function-declaration] w-../drivers/usb/dwc3/dwc3-omap.c:381:7: warning: assignment makes pointer from integer without a cast
14: drivers: usb: common: add support to get maximum speed from dt 15: drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model support
arm: + odroid-xu3
+board/samsung/common/built-in.o: In function `board_usb_cleanup':
+build/../board/samsung/common/board.c:382: undefined reference to `dwc3_uboot_exit'
+board/samsung/common/built-in.o: In function `usb_gadget_handle_interrupts':
+build/../board/samsung/common/exynos5-dt.c:318: undefined reference to `dwc3_uboot_handle_interrupt'
+board/samsung/common/built-in.o: In function `board_usb_init':
+build/../board/samsung/common/exynos5-dt.c:335: undefined reference to `dwc3_uboot_init'
+arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 +arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' not found in the linker script
+arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation 16: am43xx: Add USB device boot support to SPL

Regards,
Simon

#4 lore raw

PATCH 1/10 drivers: usb: dwc3: remove devm_zalloc from linux_compact

Quoted 27 lines · Simon Glass

Hi Mugunthan,

Quoted 6 lines · Tom Rini
Quoted 3 lines · Mugunthan V N

devm_zalloc() is already defined in dm/device.h header, so devm_zalloc can be removed from linux_compact.h beader file.

Quoted 6 lines
Quoted 1 line

--
Tom

Unfortunately I still cannot apply this as there are build errors. Can you please take a look and resend the entire series (along with the lonely patch) rebased to u-boot-dm/master?

09: drivers: usb: dwc3: remove devm_zalloc from linux_compact
arm: + omap5_uevm

(quoted diff) +5 -0
+  omap = devm_kzalloc((struct udevice *)dev, sizeof(*omap), GFP_KERNEL);
+  ^
+       ^
+drivers/usb/dwc3/built-in.o: In function `dwc3_omap_uboot_init':
+build/../drivers/usb/dwc3/dwc3-omap.c:380: undefined reference to
Quoted 1 line

`devm_kzalloc'

I didn't get this error when I built, is this error with incremental build?

I tried this command "./tools/buildman/buildman -c 7 -v -C -j 32 arm" but I am not seeing buildman does a test build for each commit, am I missing something?

Quoted 59 lines

+arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 +arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' not found in the linker script

(quoted diff) +3 -0
+arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation
+make[1]: *** [u-boot] Error 1
+make: *** [sub-make] Error 2

w+../drivers/usb/dwc3/dwc3-omap.c: In function 'dwc3_omap_uboot_init':
w+../drivers/usb/dwc3/dwc3-omap.c:380:2: warning: implicit declaration of function 'devm_kzalloc' [-Wimplicit-function-declaration] w+../drivers/usb/dwc3/dwc3-omap.c:380:7: warning: assignment makes pointer from integer without a cast
10: drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board files to drivers -build/../drivers/usb/dwc3/dwc3-omap.c:380: undefined reference to `devm_kzalloc'
+drivers/usb/dwc3/built-in.o: In function `usb_gadget_handle_interrupts':
+:(.text.usb_gadget_handle_interrupts+0x0): multiple definition of `usb_gadget_handle_interrupts' +board/ti/omap5_uevm/built-in.o:build/../board/ti/omap5_uevm/evm.c:122:
first defined here
+:(.text.dwc3_omap_uboot_init+0xa): undefined reference to `devm_kzalloc' w-../drivers/usb/dwc3/dwc3-omap.c:380:2: warning: implicit declaration of function 'devm_kzalloc' [-Wimplicit-function-declaration] w-../drivers/usb/dwc3/dwc3-omap.c:380:7: warning: assignment makes pointer from integer without a cast w+../drivers/usb/dwc3/dwc3-omap.c:381:2: warning: implicit declaration of function 'devm_kzalloc' [-Wimplicit-function-declaration] w+../drivers/usb/dwc3/dwc3-omap.c:381:7: warning: assignment makes pointer from integer without a cast
11: am437x: board: do not register usb devices when CONFIG_DM_USB is defined 12: dra7xx: board: do not register usb devices when CONFIG_DM_USB is defined 13: drivers: usb: dwc3: add ti dwc3 misc driver for wrapper

(quoted diff) +0 -6
-  omap = devm_kzalloc((struct udevice *)dev, sizeof(*omap), GFP_KERNEL);
-  ^
-       ^
-drivers/usb/dwc3/built-in.o: In function `dwc3_omap_uboot_init':
-:(.text.dwc3_omap_uboot_init+0xa): undefined reference to `devm_kzalloc'
-arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion

fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 -arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' not found in the linker script
-arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation w-../drivers/usb/dwc3/dwc3-omap.c: In function 'dwc3_omap_uboot_init':
w-../drivers/usb/dwc3/dwc3-omap.c:381:2: warning: implicit declaration of function 'devm_kzalloc' [-Wimplicit-function-declaration] w-../drivers/usb/dwc3/dwc3-omap.c:381:7: warning: assignment makes pointer from integer without a cast
14: drivers: usb: common: add support to get maximum speed from dt 15: drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model support
arm: + odroid-xu3

(quoted diff) +2 -0
+board/samsung/common/built-in.o: In function `board_usb_cleanup':
+build/../board/samsung/common/board.c:382: undefined reference to

`dwc3_uboot_exit'

(quoted diff) +2 -0
+board/samsung/common/built-in.o: In function `usb_gadget_handle_interrupts':
+build/../board/samsung/common/exynos5-dt.c:318: undefined reference

to `dwc3_uboot_handle_interrupt'

(quoted diff) +2 -0
+board/samsung/common/built-in.o: In function `board_usb_init':
+build/../board/samsung/common/exynos5-dt.c:335: undefined reference
Quoted 8 lines

to `dwc3_uboot_init'
+arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 +arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' not found in the linker script +arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation 16: am43xx: Add USB device boot support to SPL

Oops, I forgot to run buildman test before submitting, will send v2 ASAP.

Regards
Mugunthan V N

#5 lore raw

PATCH 1/10 drivers: usb: dwc3: remove devm_zalloc from linux_compact

Hi Mugunthan,

Quoted 21 lines · Mugunthan V N
Quoted 20 lines · Simon Glass

Hi Mugunthan,

Quoted 6 lines · Tom Rini
Quoted 3 lines · Mugunthan V N

devm_zalloc() is already defined in dm/device.h header, so devm_zalloc can be removed from linux_compact.h beader file.

Quoted 6 lines
Quoted 1 line

--
Tom

Unfortunately I still cannot apply this as there are build errors. Can you please take a look and resend the entire series (along with the lonely patch) rebased to u-boot-dm/master?

Quoted 10 lines
Quoted 8 lines

09: drivers: usb: dwc3: remove devm_zalloc from linux_compact
arm: + omap5_uevm

(quoted diff) +5 -0
+  omap = devm_kzalloc((struct udevice *)dev, sizeof(*omap), GFP_KERNEL);
+  ^
+       ^
+drivers/usb/dwc3/built-in.o: In function `dwc3_omap_uboot_init':
+build/../drivers/usb/dwc3/dwc3-omap.c:380: undefined reference to

`devm_kzalloc'

I didn't get this error when I built, is this error with incremental build?

Yes, although it doesn't matter, since buildman will automatically reconfigure and retry (non-incrementally) if it gets a failure.

Quoted 66 lines

I tried this command "./tools/buildman/buildman -c 7 -v -C -j 32 arm" but I am not seeing buildman does a test build for each commit, am I missing something?

Quoted 61 lines

+arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 +arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' not found in the linker script

(quoted diff) +3 -0
+arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation
+make[1]: *** [u-boot] Error 1
+make: *** [sub-make] Error 2

w+../drivers/usb/dwc3/dwc3-omap.c: In function 'dwc3_omap_uboot_init':
w+../drivers/usb/dwc3/dwc3-omap.c:380:2: warning: implicit declaration of function 'devm_kzalloc' [-Wimplicit-function-declaration] w+../drivers/usb/dwc3/dwc3-omap.c:380:7: warning: assignment makes pointer from integer without a cast
10: drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board files to drivers -build/../drivers/usb/dwc3/dwc3-omap.c:380: undefined reference to `devm_kzalloc'
+drivers/usb/dwc3/built-in.o: In function `usb_gadget_handle_interrupts':
+:(.text.usb_gadget_handle_interrupts+0x0): multiple definition of `usb_gadget_handle_interrupts' +board/ti/omap5_uevm/built-in.o:build/../board/ti/omap5_uevm/evm.c:122:
first defined here
+:(.text.dwc3_omap_uboot_init+0xa): undefined reference to `devm_kzalloc' w-../drivers/usb/dwc3/dwc3-omap.c:380:2: warning: implicit declaration of function 'devm_kzalloc' [-Wimplicit-function-declaration] w-../drivers/usb/dwc3/dwc3-omap.c:380:7: warning: assignment makes pointer from integer without a cast w+../drivers/usb/dwc3/dwc3-omap.c:381:2: warning: implicit declaration of function 'devm_kzalloc' [-Wimplicit-function-declaration] w+../drivers/usb/dwc3/dwc3-omap.c:381:7: warning: assignment makes pointer from integer without a cast
11: am437x: board: do not register usb devices when CONFIG_DM_USB is defined 12: dra7xx: board: do not register usb devices when CONFIG_DM_USB is defined 13: drivers: usb: dwc3: add ti dwc3 misc driver for wrapper

(quoted diff) +0 -6
-  omap = devm_kzalloc((struct udevice *)dev, sizeof(*omap), GFP_KERNEL);
-  ^
-       ^
-drivers/usb/dwc3/built-in.o: In function `dwc3_omap_uboot_init':
-:(.text.dwc3_omap_uboot_init+0xa): undefined reference to `devm_kzalloc'
-arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion

fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 -arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' not found in the linker script
-arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation w-../drivers/usb/dwc3/dwc3-omap.c: In function 'dwc3_omap_uboot_init':
w-../drivers/usb/dwc3/dwc3-omap.c:381:2: warning: implicit declaration of function 'devm_kzalloc' [-Wimplicit-function-declaration] w-../drivers/usb/dwc3/dwc3-omap.c:381:7: warning: assignment makes pointer from integer without a cast
14: drivers: usb: common: add support to get maximum speed from dt 15: drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model support
arm: + odroid-xu3

(quoted diff) +2 -0
+board/samsung/common/built-in.o: In function `board_usb_cleanup':
+build/../board/samsung/common/board.c:382: undefined reference to

`dwc3_uboot_exit'

(quoted diff) +2 -0
+board/samsung/common/built-in.o: In function `usb_gadget_handle_interrupts':
+build/../board/samsung/common/exynos5-dt.c:318: undefined reference

to `dwc3_uboot_handle_interrupt'

(quoted diff) +2 -0
+board/samsung/common/built-in.o: In function `board_usb_init':
+build/../board/samsung/common/exynos5-dt.c:335: undefined reference

to `dwc3_uboot_init'
+arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion

Quoted 8 lines
Quoted 6 lines

fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 +arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' not found in the linker script +arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation 16: am43xx: Add USB device boot support to SPL

Oops, I forgot to run buildman test before submitting, will send v2 ASAP.

OK thanks. Please do include all patches in one series, rebased to mainline.

Regards,
Simon

#6 lore raw

PATCH 2/10 drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board files to drivers

In reply to Mugunthan V N

In board files of am437x, dra7xx and am5xx, usb_gadget_handle_interrupts() is just a place holder to handle dwc3 interrupts, nothing related to board is handled here, so move usb_gadget_handle_interrupts() from board files to dwc3-omap.c to avoid code duplication based on boards.

---
 board/ti/am43xx/board.c      | 11 -----------
 board/ti/am57xx/board.c      | 11 -----------
 board/ti/dra7xx/evm.c        | 11 -----------
 drivers/usb/dwc3/dwc3-omap.c | 12 ++++++++++++
 4 files changed, 12 insertions(+), 33 deletions(-)
board/ti/am43xx/board.c +0 -11
index 770726c..16bbbd1 100644
@@ -764,17 +764,6 @@ int board_usb_cleanup(int index, enum usb_init_type init)
 
 	return 0;
 }
-
-int usb_gadget_handle_interrupts(int index)
-{
-	u32 status;
-
-	status = dwc3_omap_uboot_interrupt_status(index);
-	if (status)
-		dwc3_uboot_handle_interrupt(index);
-
-	return 0;
-}
 #endif
 
 #ifdef CONFIG_DRIVER_TI_CPSW
board/ti/am57xx/board.c +0 -11
index 042f9ab..0e9664a 100644
@@ -411,17 +411,6 @@ int board_usb_cleanup(int index, enum usb_init_type init)
 	disable_usb_clocks(index);
 	return 0;
 }
-
-int usb_gadget_handle_interrupts(int index)
-{
-	u32 status;
-
-	status = dwc3_omap_uboot_interrupt_status(index);
-	if (status)
-		dwc3_uboot_handle_interrupt(index);
-
-	return 0;
-}
 #endif
 
 #ifdef CONFIG_DRIVER_TI_CPSW
board/ti/dra7xx/evm.c +0 -11
index eebec88..50a9b72 100644
@@ -209,17 +209,6 @@ int board_usb_cleanup(int index, enum usb_init_type init)
 	disable_usb_clocks(index);
 	return 0;
 }
-
-int usb_gadget_handle_interrupts(int index)
-{
-	u32 status;
-
-	status = dwc3_omap_uboot_interrupt_status(index);
-	if (status)
-		dwc3_uboot_handle_interrupt(index);
-
-	return 0;
-}
 #endif
 
 #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_OS_BOOT)
drivers/usb/dwc3/dwc3-omap.c +12 -0
index afbd845..31d15f5 100644
@@ -23,6 +23,7 @@
 
 #include <linux/usb/otg.h>
 #include <linux/compat.h>
+#include <dwc3-uboot.h>
 
 #include "linux-compat.h"
 
@@ -445,6 +446,17 @@ int dwc3_omap_uboot_interrupt_status(int index)
 	return 0;
 }
 
+int usb_gadget_handle_interrupts(int index)
+{
+	u32 status;
+
+	status = dwc3_omap_uboot_interrupt_status(index);
+	if (status)
+		dwc3_uboot_handle_interrupt(index);
+
+	return 0;
+}
+
 MODULE_ALIAS("platform:omap-dwc3");
 MODULE_AUTHOR("Felipe Balbi <[email protected]>");
 MODULE_LICENSE("GPL v2");
Signature · 1 line
2.7.2.333.g70bd996
#7 lore raw

PATCH 2/10 drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board files to drivers

Quoted 7 lines · Mugunthan V N

In board files of am437x, dra7xx and am5xx, usb_gadget_handle_interrupts() is just a place holder to handle dwc3 interrupts, nothing related to board is handled here, so move usb_gadget_handle_interrupts() from board files to dwc3-omap.c to avoid code duplication based on boards.

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160315/dbaab116/attachment.sig>
#8 lore raw

PATCH 3/10 am437x: board: do not register usb devices when CONFIG_DM_USB is defined

In reply to Mugunthan V N

Do not register usb devices when CONFIG_DM_USB is define.

---
 board/ti/am43xx/board.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
board/ti/am43xx/board.c +1 -1
index 16bbbd1..c75ef53 100644
@@ -674,7 +674,7 @@ int board_late_init(void)
 }
 #endif
 
-#ifdef CONFIG_USB_DWC3
+#if defined(CONFIG_USB_DWC3) && !defined(CONFIG_DM_USB)
 static struct dwc3_device usb_otg_ss1 = {
 	.maximum_speed = USB_SPEED_HIGH,
 	.base = USB_OTG_SS1_BASE,
Signature · 1 line
2.7.2.333.g70bd996
#9 lore raw

PATCH 3/10 am437x: board: do not register usb devices when CONFIG_DM_USB is defined

Quoted 3 lines · Mugunthan V N

Do not register usb devices when CONFIG_DM_USB is define.

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160315/e55fdf42/attachment.sig>
#10 lore raw

PATCH 4/10 dra7xx: board: do not register usb devices when CONFIG_DM_USB is defined

In reply to Mugunthan V N

Do not register usb devices when CONFIG_DM_USB is define.

---
 board/ti/dra7xx/evm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
board/ti/dra7xx/evm.c +1 -1
index 50a9b72..f9e829b 100644
@@ -118,7 +118,7 @@ int board_mmc_init(bd_t *bis)
 }
 #endif
 
-#ifdef CONFIG_USB_DWC3
+#if defined(CONFIG_USB_DWC3) && !defined(CONFIG_DM_USB)
 static struct dwc3_device usb_otg_ss1 = {
 	.maximum_speed = USB_SPEED_SUPER,
 	.base = DRA7_USB_OTG_SS1_BASE,
Signature · 1 line
2.7.2.333.g70bd996
#11 lore raw

PATCH 4/10 dra7xx: board: do not register usb devices when CONFIG_DM_USB is defined

Quoted 3 lines · Mugunthan V N

Do not register usb devices when CONFIG_DM_USB is define.

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160315/edb29036/attachment.sig>
#12 lore raw

PATCH 5/10 drivers: usb: dwc3: add ti dwc3 misc driver for wrapper

In reply to Mugunthan V N

Add a misc driver for DWC3 wrapper, so that based on dr_mode the USB devices can bind to USB host or USB device drivers.

---
 drivers/usb/dwc3/core.h      |  4 ++++
 drivers/usb/dwc3/dwc3-omap.c | 52 ++++++++++++++++++++++++++++++++++++++++++++
 drivers/usb/dwc3/gadget.c    |  2 +-
 3 files changed, 57 insertions(+), 1 deletion(-)
drivers/usb/dwc3/core.h +4 -0
index 72d2fcd..24f03e4 100644
@@ -713,7 +713,11 @@ struct dwc3 {
 	/* device lock */
 	spinlock_t		lock;
 
+#ifndef CONFIG_DM_USB
 	struct device		*dev;
+#else
+	struct udevice		*dev;
+#endif
 
 	struct platform_device	*xhci;
 	struct resource		xhci_resources[DWC3_XHCI_RESOURCES_NUM];
drivers/usb/dwc3/dwc3-omap.c +52 -0

67 lines not on this page · raw message

drivers/usb/dwc3/gadget.c +1 -1
index 25ccc01..d6fcea7 100644
@@ -2611,7 +2611,7 @@ int dwc3_gadget_init(struct dwc3 *dwc)
 	if (ret)
 		goto err4;
 
-	ret = usb_add_gadget_udc(dwc->dev, &dwc->gadget);
+	ret = usb_add_gadget_udc((struct device *)dwc->dev, &dwc->gadget);
 	if (ret) {
 		dev_err(dwc->dev, "failed to register udc\n");
 		goto err4;
Signature · 1 line
2.7.2.333.g70bd996
#13 lore raw

PATCH 5/10 drivers: usb: dwc3: add ti dwc3 misc driver for wrapper

Quoted 4 lines · Mugunthan V N

Add a misc driver for DWC3 wrapper, so that based on dr_mode the USB devices can bind to USB host or USB device drivers.

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160315/2469da4e/attachment.sig>
#14 lore raw

PATCH 6/10 drivers: usb: common: add support to get maximum speed from dt

In reply to Mugunthan V N

Add support to get maximum speed from dt so that usb drivers makes use of it for DT parsing.

---
 drivers/usb/common/common.c | 29 +++++++++++++++++++++++++++++
 include/linux/usb/otg.h     |  9 +++++++++
 2 files changed, 38 insertions(+)
drivers/usb/common/common.c +29 -0
index ed9d993..040708e 100644
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <libfdt.h>
 #include <linux/usb/otg.h>
+#include <linux/usb/ch9.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
@@ -38,3 +39,31 @@ enum usb_dr_mode usb_get_dr_mode(int node)
 
 	return USB_DR_MODE_UNKNOWN;
 }
+
+static const char *const speed_names[] = {
+	[USB_SPEED_UNKNOWN] = "UNKNOWN",
+	[USB_SPEED_LOW] = "low-speed",
+	[USB_SPEED_FULL] = "full-speed",
+	[USB_SPEED_HIGH] = "high-speed",
+	[USB_SPEED_WIRELESS] = "wireless",
+	[USB_SPEED_SUPER] = "super-speed",
+};
+
+enum usb_device_speed usb_get_maximum_speed(int node)
+{
+	const void *fdt = gd->fdt_blob;
+	const char *max_speed;
+	int i;
+
+	max_speed = fdt_getprop(fdt, node, "maximum-speed", NULL);
+	if (!max_speed) {
+		error("usb dr_mode not found\n");
+		return USB_DR_MODE_UNKNOWN;
+	}
+
+	for (i = 0; i < ARRAY_SIZE(speed_names); i++)
+		if (!strcmp(max_speed, speed_names[i]))
+			return i;
+
+	return USB_SPEED_UNKNOWN;
+}
include/linux/usb/otg.h +9 -0
index 8f8ac6a..b61ef19 100644
@@ -26,4 +26,13 @@ enum usb_dr_mode {
  */
 enum usb_dr_mode usb_get_dr_mode(int node);
 
+/**
+ * usb_get_maximum_speed() - Get maximum speed for given device
+ * @node: Node offset to the given device
+ *
+ * The function gets phy interface string from property 'maximum-speed',
+ * and returns the correspondig enum usb_device_speed
+ */
+enum usb_device_speed usb_get_maximum_speed(int node);
+
 #endif /* __LINUX_USB_OTG_H */
Signature · 1 line
2.7.2.333.g70bd996
#15 lore raw

PATCH 6/10 drivers: usb: common: add support to get maximum speed from dt

Quoted 4 lines · Mugunthan V N

Add support to get maximum speed from dt so that usb drivers makes use of it for DT parsing.

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160315/4e923ccb/attachment.sig>
#16 lore raw

PATCH 6/10 drivers: usb: common: add support to get maximum speed from dt

In reply to Mugunthan V N

Hi,

Quoted 6 lines · Mugunthan V N

Add support to get maximum speed from dt so that usb drivers makes use of it for DT parsing.

---
 drivers/usb/common/common.c | 29 +++++++++++++++++++++++++++++

This file does not existing in mainline. Is there a dependent series for this series?

I can't apply it as is.

Quoted 2 lines
 include/linux/usb/otg.h     |  9 +++++++++
 2 files changed, 38 insertions(+)

[snip]

Regards,
Simon

#17 lore raw

PATCH 7/10 drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model support

In reply to Mugunthan V N

Add a TI DWC3 peripheral driver with driver model support and the driver will be bound by the DWC3 wrapper driver based on the dr_mode device tree entry.

---
 drivers/usb/dwc3/core.c      |  57 +++++++++++++++
 drivers/usb/dwc3/core.h      |   2 +
 drivers/usb/dwc3/dwc3-omap.c | 166 ++++++++++++++++++++++++++++++++++++++++++-
 include/configs/am43xx_evm.h |   1 +
 4 files changed, 225 insertions(+), 1 deletion(-)
drivers/usb/dwc3/core.c +57 -0
index c599d0b..0ad4a02 100644
@@ -601,6 +601,8 @@ static void dwc3_core_exit_mode(struct dwc3 *dwc)
 
 #define DWC3_ALIGN_MASK		(16 - 1)
 
+#ifndef CONFIG_DM_USB
+
 /**
  * dwc3_uboot_init - dwc3 core uboot initialization code
  * @dwc3_dev: struct dwc3_device containing initialization data
@@ -787,3 +789,58 @@ MODULE_ALIAS("platform:dwc3");
 MODULE_AUTHOR("Felipe Balbi <[email protected]>");
 MODULE_LICENSE("GPL v2");
 MODULE_DESCRIPTION("DesignWare USB3 DRD Controller Driver");
+
+#else
+
+int dwc3_init(struct dwc3 *dwc)
+{
+	int ret;
+
+	dwc3_cache_hwparams(dwc);
+
+	ret = dwc3_alloc_event_buffers(dwc, DWC3_EVENT_BUFFERS_SIZE);
+	if (ret) {
+		dev_err(dwc->dev, "failed to allocate event buffers\n");
+		return -ENOMEM;
+	}
+
+	ret = dwc3_core_init(dwc);
+	if (ret) {
+		dev_err(dev, "failed to initialize core\n");
+		goto err0;
+	}
+
+	ret = dwc3_event_buffers_setup(dwc);
+	if (ret) {
+		dev_err(dwc->dev, "failed to setup event buffers\n");
+		goto err1;
+	}
+
+	ret = dwc3_core_init_mode(dwc);
+	if (ret)
+		goto err2;
+
+	return 0;
+
+err2:
+	dwc3_event_buffers_cleanup(dwc);
+
+err1:
+	dwc3_core_exit(dwc);
+
+err0:
+	dwc3_free_event_buffers(dwc);
+
+	return ret;
+}
+
+void dwc3_remove(struct dwc3 *dwc)
+{
+	dwc3_core_exit_mode(dwc);
+	dwc3_event_buffers_cleanup(dwc);
+	dwc3_free_event_buffers(dwc);
+	dwc3_core_exit(dwc);
+	kfree(dwc->mem);
+}
+
+#endif
drivers/usb/dwc3/core.h +2 -0
index 24f03e4..9726287 100644
@@ -992,6 +992,8 @@ struct dwc3_gadget_ep_cmd_params {
 
 /* prototypes */
 int dwc3_gadget_resize_tx_fifos(struct dwc3 *dwc);
+int dwc3_init(struct dwc3 *dwc);
+void dwc3_remove(struct dwc3 *dwc);
 
 #ifdef CONFIG_USB_DWC3_HOST
 int dwc3_host_init(struct dwc3 *dwc);
drivers/usb/dwc3/dwc3-omap.c +165 -1

208 lines not on this page · raw message

include/configs/am43xx_evm.h +1 -0
index 1428aa9..7d2a93e 100644
@@ -102,6 +102,7 @@
 
 #define CONFIG_SPL_LDSCRIPT		"$(CPUDIR)/omap-common/u-boot-spl.lds"
 
+#define CONFIG_ARCH_MISC_INIT
 /* SPL USB Support */
 #ifdef CONFIG_SPL_USB_HOST_SUPPORT
 #define CONFIG_SPL_USB_SUPPORT
Signature · 1 line
2.7.2.333.g70bd996
#18 lore raw

PATCH 7/10 drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model support

Quoted 5 lines · Mugunthan V N

Add a TI DWC3 peripheral driver with driver model support and the driver will be bound by the DWC3 wrapper driver based on the dr_mode device tree entry.

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160315/584e3a48/attachment.sig>
#19 lore raw

PATCH 8/10 am43xx: Add USB device boot support to SPL

In reply to Mugunthan V N

From: Tom Rini <[email protected]>

Add in code to initialize the DWC3 gadget controller so that we can do RNDIS in SPL on these platforms.

---
 board/ti/am43xx/board.c           | 39 ++++++++++++++++++++++++++++++++++++---
 drivers/Makefile                  |  2 ++
 drivers/usb/gadget/gadget_chips.h |  2 ++
 include/configs/am43xx_evm.h      | 12 ++++++++++++
 4 files changed, 52 insertions(+), 3 deletions(-)
board/ti/am43xx/board.c +36 -3
index c75ef53..e71d86e 100644
@@ -766,8 +766,8 @@ int board_usb_cleanup(int index, enum usb_init_type init)
 }
 #endif
 
-#ifdef CONFIG_DRIVER_TI_CPSW
-
+#if (defined(CONFIG_DRIVER_TI_CPSW) && !defined(CONFIG_SPL_BUILD)) || \
+	(defined(CONFIG_SPL_ETH_SUPPORT) && defined(CONFIG_SPL_BUILD))
 static void cpsw_control(int enabled)
 {
 	/* Additional controls can be added here */
@@ -805,7 +805,24 @@ static struct cpsw_platform_data cpsw_data = {
 	.host_port_num		= 0,
 	.version		= CPSW_CTRL_VERSION_2,
 };
+#endif
 
+/*
+ * This function will:
+ * Read the eFuse for MAC addresses, and set ethaddr/eth1addr/usbnet_devaddr
+ * in the environment
+ * Perform fixups to the PHY present on certain boards.  We only need this
+ * function in:
+ * - SPL with either CPSW or USB ethernet support
+ * - Full U-Boot, with either CPSW or USB ethernet
+ * Build in only these cases to avoid warnings about unused variables
+ * when we build an SPL that has neither option but full U-Boot will.
+ */
+#if ((defined(CONFIG_SPL_ETH_SUPPORT) || \
+	defined(CONFIG_SPL_USBETH_SUPPORT)) && \
+	defined(CONFIG_SPL_BUILD)) || \
+	((defined(CONFIG_DRIVER_TI_CPSW) || \
+	  defined(CONFIG_USB_ETHER)) && !defined(CONFIG_SPL_BUILD))
 int board_eth_init(bd_t *bis)
 {
 	int rv;
@@ -822,12 +839,15 @@ int board_eth_init(bd_t *bis)
 	mac_addr[4] = mac_lo & 0xFF;
 	mac_addr[5] = (mac_lo & 0xFF00) >> 8;
 
+#if (defined(CONFIG_DRIVER_TI_CPSW) && !defined(CONFIG_SPL_BUILD)) || \
+	(defined(CONFIG_SPL_ETH_SUPPORT) && defined(CONFIG_SPL_BUILD))
 	if (!getenv("ethaddr")) {
 		puts("<ethaddr> not set. Validating first E-fuse MAC\n");
 		if (is_valid_ethaddr(mac_addr))
 			eth_setenv_enetaddr("ethaddr", mac_addr);
 	}
 
+#ifndef CONFIG_SPL_BUILD
 	mac_lo = readl(&cdev->macid1l);
 	mac_hi = readl(&cdev->macid1h);
 	mac_addr[0] = mac_hi & 0xFF;
@@ -841,6 +861,7 @@ int board_eth_init(bd_t *bis)
 		if (is_valid_ethaddr(mac_addr))
 			eth_setenv_enetaddr("eth1addr", mac_addr);
 	}
+#endif
 
 	if (board_is_eposevm()) {
 		writel(RMII_MODE_ENABLE | RMII_CHIPCKL_ENABLE, &cdev->miisel);
@@ -862,8 +883,20 @@ int board_eth_init(bd_t *bis)
 	}
 
 	rv = cpsw_register(&cpsw_data);
-	if (rv < 0)
+	if (rv < 0) {
 		printf("Error %d registering CPSW switch\n", rv);
+		return rv;
+	}
+#endif
+#if defined(CONFIG_USB_ETHER) && \
+	(!defined(CONFIG_SPL_BUILD) || defined(CONFIG_SPL_USBETH_SUPPORT))
+	if (is_valid_ethaddr(mac_addr))
+		eth_setenv_enetaddr("usbnet_devaddr", mac_addr);
+
+	rv = usb_eth_initialize(bis);
+	if (rv < 0)
+		printf("Error %d registering USB_ETHER\n", rv);
+#endif
 
 	return rv;
 }
drivers/Makefile +2 -0
index e7eab66..35319b5 100644
@@ -31,6 +31,8 @@ obj-$(CONFIG_SPL_ETH_SUPPORT) += net/
 obj-$(CONFIG_SPL_ETH_SUPPORT) += net/phy/
 obj-$(CONFIG_SPL_USBETH_SUPPORT) += net/phy/
 obj-$(CONFIG_SPL_MUSB_NEW_SUPPORT) += usb/musb-new/
+obj-$(CONFIG_USB_DWC3_GADGET) += usb/dwc3/
+obj-$(CONFIG_USB_DWC3_GADGET) += usb/gadget/udc/
 obj-$(CONFIG_SPL_USBETH_SUPPORT) += usb/gadget/
 obj-$(CONFIG_SPL_WATCHDOG_SUPPORT) += watchdog/
 obj-$(CONFIG_SPL_USB_HOST_SUPPORT) += usb/host/
drivers/usb/gadget/gadget_chips.h +2 -0
index 973cd97..c09d30e 100644
@@ -231,5 +231,7 @@ static inline int usb_gadget_controller_number(struct usb_gadget *gadget)
 		return 0x21;
 	else if (gadget_is_fotg210(gadget))
 		return 0x22;
+	else if (gadget_is_dwc3(gadget))
+		return 0x23;
 	return -ENOENT;
 }
include/configs/am43xx_evm.h +12 -0
index 7d2a93e..546cc09 100644
@@ -129,6 +129,9 @@
 #define CONFIG_USB_DWC3_GADGET
 
 #define CONFIG_USB_GADGET
+#define CONFIG_USB_ETHER
+#define CONFIG_USB_ETH_RNDIS
+#define CONFIG_USBNET_HOST_ADDR "de:ad:be:af:00:00"
 #define CONFIG_USB_GADGET_DOWNLOAD
 #define CONFIG_USB_GADGET_VBUS_DRAW 2
 #define CONFIG_G_DNL_MANUFACTURER "Texas Instruments"
@@ -148,6 +151,15 @@
 #undef CONFIG_TIMER
 #endif
 
+#if (defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_USBETH_SUPPORT))
+#undef CONFIG_ENV_IS_IN_FAT
+#define CONFIG_ENV_IS_NOWHERE
+#endif
+
+#if defined(CONFIG_SPL_USBETH_SUPPORT) || defined(CONFIG_SPL_ETH_SUPPORT)
+#define CONFIG_SPL_NET_SUPPORT
+#endif
+
 #ifndef CONFIG_SPL_BUILD
 /* USB Device Firmware Update support */
 #define CONFIG_USB_FUNCTION_DFU
Signature · 1 line
2.7.2.333.g70bd996
#20 lore raw

PATCH 8/10 am43xx: Add USB device boot support to SPL

Quoted 8 lines · Mugunthan V N

From: Tom Rini <[email protected]>

Add in code to initialize the DWC3 gadget controller so that we can do RNDIS in SPL on these platforms.

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160315/6d2036c7/attachment.sig>
#21 lore raw

PATCH 9/10 configs: am43xx: Add am43xx_evm_usbspl_defconfig

In reply to Mugunthan V N

From: Kishon Vijay Abraham I <[email protected]>

Add a new config to support usb rndis boot for am43xx.

---
 board/ti/am43xx/MAINTAINERS         | 1 +
 configs/am43xx_evm_usbspl_defconfig | 9 +++++++++
 2 files changed, 10 insertions(+)
 create mode 100644 configs/am43xx_evm_usbspl_defconfig
board/ti/am43xx/MAINTAINERS +1 -0
index 96ef85b..ed3add7 100644
@@ -9,3 +9,4 @@ F:	configs/am43xx_evm_ethboot_defconfig
 F:	configs/am43xx_evm_usbhost_boot_defconfig
 F:	configs/am437x_gp_evm_defconfig
 F:	configs/am437x_sk_evm_defconfig
+F:	configs/am43xx_evm_usbspl_defconfig
configs/am43xx_evm_usbspl_defconfig new file +9 -0
new file mode 100644
index 0000000..d83a4da
@@ -0,0 +1,9 @@
+CONFIG_ARM=y
+CONFIG_TARGET_AM43XX_EVM=y
+CONFIG_SPL=y
+CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND,SPL_USBETH_SUPPORT"
+# CONFIG_CMD_IMLS is not set
+# CONFIG_CMD_FLASH is not set
+# CONFIG_CMD_SETEXPR is not set
+CONFIG_SPI_FLASH_BAR=y
+CONFIG_SPI_FLASH=y
Signature · 1 line
2.7.2.333.g70bd996
#22 lore raw

PATCH 9/10 configs: am43xx: Add am43xx_evm_usbspl_defconfig

Quoted 6 lines · Mugunthan V N

From: Kishon Vijay Abraham I <[email protected]>

Add a new config to support usb rndis boot for am43xx.

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160315/c2b74423/attachment.sig>
#23 lore raw

PATCH 10/10 defconfig: am437x_sk_evm: enable usb driver model

In reply to Mugunthan V N

enable usb driver model for am437x sk evm as dwc3 supports driver model

---
 configs/am437x_sk_evm_defconfig | 4 ++++
 1 file changed, 4 insertions(+)
configs/am437x_sk_evm_defconfig +4 -0
index 3e916db..f643c40 100644
@@ -24,3 +24,7 @@ CONFIG_SPI_FLASH_BAR=y
 CONFIG_TIMER=y
 CONFIG_OMAP_TIMER=y
 CONFIG_DMA=y
+CONFIG_MISC=y
+CONFIG_USB=y
+CONFIG_DM_USB=y
+CONFIG_CMD_USB=y
Signature · 1 line
2.7.2.333.g70bd996
#24 lore raw

PATCH 10/10 defconfig: am437x_sk_evm: enable usb driver model

Quoted 4 lines · Mugunthan V N

enable usb driver model for am437x sk evm as dwc3 supports driver model

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160315/20753dca/attachment.sig>
#25 lore raw

cover driver model bring-up of dwc3 usb peripheral

In reply to Mugunthan V N

Hi Tom,

Quoted 40 lines · Mugunthan V N

This patch series enables dwc3 usb driver to adopt driver model. This has been tested on AM437x evm sk (logs [1]) by loading kernel through usb ether

Also pushed a branch for testing [2]

[1] - http://pastebin.ubuntu.com/15391169/
[2] - git://git.ti.com/~mugunthanvnm/ti-u-boot/mugunth-ti-u-boot.git dm-dwc3

Kishon Vijay Abraham I (1):
configs: am43xx: Add am43xx_evm_usbspl_defconfig

Mugunthan V N (8):
drivers: usb: dwc3: remove devm_zalloc from linux_compact
drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board
files to drivers
am437x: board: do not register usb devices when CONFIG_DM_USB is
defined
dra7xx: board: do not register usb devices when CONFIG_DM_USB is
defined
drivers: usb: dwc3: add ti dwc3 misc driver for wrapper
drivers: usb: common: add support to get maximum speed from dt
drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model
support
defconfig: am437x_sk_evm: enable usb driver model

Tom Rini (1):
am43xx: Add USB device boot support to SPL

 board/ti/am43xx/MAINTAINERS         |   1 +
 board/ti/am43xx/board.c             |  52 +++++---
 board/ti/am57xx/board.c             |  11 --
 board/ti/dra7xx/evm.c               |  13 +-
 configs/am437x_sk_evm_defconfig     |   4 +
 configs/am43xx_evm_usbspl_defconfig |   9 ++
 drivers/Makefile                    |   2 +
 drivers/usb/common/common.c         |  29 +++++
 drivers/usb/dwc3/core.c             |  64 +++++++++-
 drivers/usb/dwc3/core.h             |   6 +
 drivers/usb/dwc3/dwc3-omap.c        | 230 +++++++++++++++++++++++++++++++++++-
Quoted 9 lines
 drivers/usb/dwc3/gadget.c           |   2 +-
 drivers/usb/dwc3/linux-compat.h     |   5 -
 drivers/usb/dwc3/ti_usb_phy.c       |   1 +
 drivers/usb/gadget/gadget_chips.h   |   2 +
 include/configs/am43xx_evm.h        |  13 ++
 include/linux/usb/otg.h             |   9 ++
 17 files changed, 406 insertions(+), 47 deletions(-)
 create mode 100644 configs/am43xx_evm_usbspl_defconfig

Are you going to take this directly or this should go via USB tree?

Thanks,
Michal

Signature · 14 lines
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Microblaze cpu - http://www.monstr.eu/fdt/
Maintainer of Linux kernel - Xilinx Zynq ARM architecture
Microblaze U-BOOT custodian and responsible for u-boot arm zynq platform


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: OpenPGP digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160331/9a29a808/attachment.sig>
#26 lore raw

cover driver model bring-up of dwc3 usb peripheral

Quoted 53 lines · Michal Simek

Hi Tom,

Quoted 40 lines · Mugunthan V N

This patch series enables dwc3 usb driver to adopt driver model. This has been tested on AM437x evm sk (logs [1]) by loading kernel through usb ether

Also pushed a branch for testing [2]

[1] - http://pastebin.ubuntu.com/15391169/
[2] - git://git.ti.com/~mugunthanvnm/ti-u-boot/mugunth-ti-u-boot.git dm-dwc3

Kishon Vijay Abraham I (1):
configs: am43xx: Add am43xx_evm_usbspl_defconfig

Mugunthan V N (8):
drivers: usb: dwc3: remove devm_zalloc from linux_compact
drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board
files to drivers
am437x: board: do not register usb devices when CONFIG_DM_USB is
defined
dra7xx: board: do not register usb devices when CONFIG_DM_USB is
defined
drivers: usb: dwc3: add ti dwc3 misc driver for wrapper
drivers: usb: common: add support to get maximum speed from dt
drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model
support
defconfig: am437x_sk_evm: enable usb driver model

Tom Rini (1):
am43xx: Add USB device boot support to SPL

 board/ti/am43xx/MAINTAINERS         |   1 +
 board/ti/am43xx/board.c             |  52 +++++---
 board/ti/am57xx/board.c             |  11 --
 board/ti/dra7xx/evm.c               |  13 +-
 configs/am437x_sk_evm_defconfig     |   4 +
 configs/am43xx_evm_usbspl_defconfig |   9 ++
 drivers/Makefile                    |   2 +
 drivers/usb/common/common.c         |  29 +++++
 drivers/usb/dwc3/core.c             |  64 +++++++++-
 drivers/usb/dwc3/core.h             |   6 +
 drivers/usb/dwc3/dwc3-omap.c        | 230 +++++++++++++++++++++++++++++++++++-
Quoted 9 lines
 drivers/usb/dwc3/gadget.c           |   2 +-
 drivers/usb/dwc3/linux-compat.h     |   5 -
 drivers/usb/dwc3/ti_usb_phy.c       |   1 +
 drivers/usb/gadget/gadget_chips.h   |   2 +
 include/configs/am43xx_evm.h        |  13 ++
 include/linux/usb/otg.h             |   9 ++
 17 files changed, 406 insertions(+), 47 deletions(-)
 create mode 100644 configs/am43xx_evm_usbspl_defconfig
Quoted 1 line

Are you going to take this directly or this should go via USB tree?

Marek, do you want this? Or want me to?

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160331/1c03d4f2/attachment.sig>
#27 lore raw

cover driver model bring-up of dwc3 usb peripheral

Quoted 54 lines · Tom Rini
Quoted 53 lines · Michal Simek

Hi Tom,

Quoted 49 lines · Mugunthan V N

This patch series enables dwc3 usb driver to adopt driver model. This has been tested on AM437x evm sk (logs [1]) by loading kernel through usb ether

Also pushed a branch for testing [2]

[1] - http://pastebin.ubuntu.com/15391169/
[2] - git://git.ti.com/~mugunthanvnm/ti-u-boot/mugunth-ti-u-boot.git dm-dwc3

Kishon Vijay Abraham I (1):
configs: am43xx: Add am43xx_evm_usbspl_defconfig

Mugunthan V N (8):
drivers: usb: dwc3: remove devm_zalloc from linux_compact
drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board
files to drivers
am437x: board: do not register usb devices when CONFIG_DM_USB is
defined
dra7xx: board: do not register usb devices when CONFIG_DM_USB is
defined
drivers: usb: dwc3: add ti dwc3 misc driver for wrapper
drivers: usb: common: add support to get maximum speed from dt
drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model
support
defconfig: am437x_sk_evm: enable usb driver model

Tom Rini (1):
am43xx: Add USB device boot support to SPL

 board/ti/am43xx/MAINTAINERS         |   1 +
 board/ti/am43xx/board.c             |  52 +++++---
 board/ti/am57xx/board.c             |  11 --
 board/ti/dra7xx/evm.c               |  13 +-
 configs/am437x_sk_evm_defconfig     |   4 +
 configs/am43xx_evm_usbspl_defconfig |   9 ++
 drivers/Makefile                    |   2 +
 drivers/usb/common/common.c         |  29 +++++
 drivers/usb/dwc3/core.c             |  64 +++++++++-
 drivers/usb/dwc3/core.h             |   6 +
 drivers/usb/dwc3/dwc3-omap.c        | 230 +++++++++++++++++++++++++++++++++++-
 drivers/usb/dwc3/gadget.c           |   2 +-
 drivers/usb/dwc3/linux-compat.h     |   5 -
 drivers/usb/dwc3/ti_usb_phy.c       |   1 +
 drivers/usb/gadget/gadget_chips.h   |   2 +
 include/configs/am43xx_evm.h        |  13 ++
 include/linux/usb/otg.h             |   9 ++
 17 files changed, 406 insertions(+), 47 deletions(-)
 create mode 100644 configs/am43xx_evm_usbspl_defconfig
Quoted 4 lines
Quoted 1 line

Are you going to take this directly or this should go via USB tree?

Marek, do you want this? Or want me to?

That is Lukasz.

Signature · 2 lines
Best regards,
Marek Vasut
#28 lore raw

cover driver model bring-up of dwc3 usb peripheral

Hi,

Quoted 55 lines · Marek Vasut
Quoted 54 lines · Tom Rini
Quoted 53 lines · Michal Simek

Hi Tom,

Quoted 49 lines · Mugunthan V N

This patch series enables dwc3 usb driver to adopt driver model. This has been tested on AM437x evm sk (logs [1]) by loading kernel through usb ether

Also pushed a branch for testing [2]

[1] - http://pastebin.ubuntu.com/15391169/
[2] - git://git.ti.com/~mugunthanvnm/ti-u-boot/mugunth-ti-u-boot.git dm-dwc3

Kishon Vijay Abraham I (1):
configs: am43xx: Add am43xx_evm_usbspl_defconfig

Mugunthan V N (8):
drivers: usb: dwc3: remove devm_zalloc from linux_compact
drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board
files to drivers
am437x: board: do not register usb devices when CONFIG_DM_USB is
defined
dra7xx: board: do not register usb devices when CONFIG_DM_USB is
defined
drivers: usb: dwc3: add ti dwc3 misc driver for wrapper
drivers: usb: common: add support to get maximum speed from dt
drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model
support
defconfig: am437x_sk_evm: enable usb driver model

Tom Rini (1):
am43xx: Add USB device boot support to SPL

 board/ti/am43xx/MAINTAINERS         |   1 +
 board/ti/am43xx/board.c             |  52 +++++---
 board/ti/am57xx/board.c             |  11 --
 board/ti/dra7xx/evm.c               |  13 +-
 configs/am437x_sk_evm_defconfig     |   4 +
 configs/am43xx_evm_usbspl_defconfig |   9 ++
 drivers/Makefile                    |   2 +
 drivers/usb/common/common.c         |  29 +++++
 drivers/usb/dwc3/core.c             |  64 +++++++++-
 drivers/usb/dwc3/core.h             |   6 +
 drivers/usb/dwc3/dwc3-omap.c        | 230 +++++++++++++++++++++++++++++++++++-
 drivers/usb/dwc3/gadget.c           |   2 +-
 drivers/usb/dwc3/linux-compat.h     |   5 -
 drivers/usb/dwc3/ti_usb_phy.c       |   1 +
 drivers/usb/gadget/gadget_chips.h   |   2 +
 include/configs/am43xx_evm.h        |  13 ++
 include/linux/usb/otg.h             |   9 ++
 17 files changed, 406 insertions(+), 47 deletions(-)
 create mode 100644 configs/am43xx_evm_usbspl_defconfig
Quoted 5 lines
Quoted 4 lines
Quoted 1 line

Are you going to take this directly or this should go via USB tree?

Marek, do you want this? Or want me to?

That is Lukasz.

This series has ended up in my patchwork queue, but there seem to be quite a few unapplied, dependent patches. Tom please let me know what you'd like me to do here.

Regards,
Simon

#29 lore raw

cover driver model bring-up of dwc3 usb peripheral

Quoted 60 lines · Simon Glass

Hi,

Quoted 57 lines · Marek Vasut
Quoted 56 lines · Tom Rini
Quoted 54 lines · Michal Simek

Hi Tom,

Quoted 40 lines · Mugunthan V N

This patch series enables dwc3 usb driver to adopt driver model. This has been tested on AM437x evm sk (logs [1]) by loading kernel through usb ether

Also pushed a branch for testing [2]

[1] - http://pastebin.ubuntu.com/15391169/
[2] - git://git.ti.com/~mugunthanvnm/ti-u-boot/mugunth-ti-u-boot.git dm-dwc3

Kishon Vijay Abraham I (1):
configs: am43xx: Add am43xx_evm_usbspl_defconfig

Mugunthan V N (8):
drivers: usb: dwc3: remove devm_zalloc from linux_compact
drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board
files to drivers
am437x: board: do not register usb devices when CONFIG_DM_USB is
defined
dra7xx: board: do not register usb devices when CONFIG_DM_USB is
defined
drivers: usb: dwc3: add ti dwc3 misc driver for wrapper
drivers: usb: common: add support to get maximum speed from dt
drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model
support
defconfig: am437x_sk_evm: enable usb driver model

Tom Rini (1):
am43xx: Add USB device boot support to SPL

 board/ti/am43xx/MAINTAINERS         |   1 +
 board/ti/am43xx/board.c             |  52 +++++---
 board/ti/am57xx/board.c             |  11 --
 board/ti/dra7xx/evm.c               |  13 +-
 configs/am437x_sk_evm_defconfig     |   4 +
 configs/am43xx_evm_usbspl_defconfig |   9 ++
 drivers/Makefile                    |   2 +
 drivers/usb/common/common.c         |  29 +++++
 drivers/usb/dwc3/core.c             |  64 +++++++++-
 drivers/usb/dwc3/core.h             |   6 +
 drivers/usb/dwc3/dwc3-omap.c        | 230 +++++++++++++++++++++++++++++++++++-
Quoted 9 lines
 drivers/usb/dwc3/gadget.c           |   2 +-
 drivers/usb/dwc3/linux-compat.h     |   5 -
 drivers/usb/dwc3/ti_usb_phy.c       |   1 +
 drivers/usb/gadget/gadget_chips.h   |   2 +
 include/configs/am43xx_evm.h        |  13 ++
 include/linux/usb/otg.h             |   9 ++
 17 files changed, 406 insertions(+), 47 deletions(-)
 create mode 100644 configs/am43xx_evm_usbspl_defconfig

Are you going to take this directly or this should go via USB tree?

Quoted 7 lines
Quoted 3 lines
Quoted 2 lines

Marek, do you want this? Or want me to?

That is Lukasz.

This series has ended up in my patchwork queue, but there seem to be quite a few unapplied, dependent patches. Tom please let me know what you'd like me to do here.

... I didn't think it depended on stuff but I do need to do another go-round from the queue and apply stuff.

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160408/5b3fbc7f/attachment.sig>
#30 lore raw

cover driver model bring-up of dwc3 usb peripheral

+Mugunthan, who seems to have been dropped from this thread

Quoted 63 lines · Tom Rini
Quoted 62 lines · Simon Glass

Hi,

Quoted 59 lines · Marek Vasut
Quoted 58 lines · Tom Rini
Quoted 53 lines · Michal Simek

Hi Tom,

Quoted 40 lines · Mugunthan V N

This patch series enables dwc3 usb driver to adopt driver model. This has been tested on AM437x evm sk (logs [1]) by loading kernel through usb ether

Also pushed a branch for testing [2]

[1] - http://pastebin.ubuntu.com/15391169/
[2] - git://git.ti.com/~mugunthanvnm/ti-u-boot/mugunth-ti-u-boot.git dm-dwc3

Kishon Vijay Abraham I (1):
configs: am43xx: Add am43xx_evm_usbspl_defconfig

Mugunthan V N (8):
drivers: usb: dwc3: remove devm_zalloc from linux_compact
drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board
files to drivers
am437x: board: do not register usb devices when CONFIG_DM_USB is
defined
dra7xx: board: do not register usb devices when CONFIG_DM_USB is
defined
drivers: usb: dwc3: add ti dwc3 misc driver for wrapper
drivers: usb: common: add support to get maximum speed from dt
drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model
support
defconfig: am437x_sk_evm: enable usb driver model

Tom Rini (1):
am43xx: Add USB device boot support to SPL

 board/ti/am43xx/MAINTAINERS         |   1 +
 board/ti/am43xx/board.c             |  52 +++++---
 board/ti/am57xx/board.c             |  11 --
 board/ti/dra7xx/evm.c               |  13 +-
 configs/am437x_sk_evm_defconfig     |   4 +
 configs/am43xx_evm_usbspl_defconfig |   9 ++
 drivers/Makefile                    |   2 +
 drivers/usb/common/common.c         |  29 +++++
 drivers/usb/dwc3/core.c             |  64 +++++++++-
 drivers/usb/dwc3/core.h             |   6 +
 drivers/usb/dwc3/dwc3-omap.c        | 230 +++++++++++++++++++++++++++++++++++-
Quoted 9 lines
 drivers/usb/dwc3/gadget.c           |   2 +-
 drivers/usb/dwc3/linux-compat.h     |   5 -
 drivers/usb/dwc3/ti_usb_phy.c       |   1 +
 drivers/usb/gadget/gadget_chips.h   |   2 +
 include/configs/am43xx_evm.h        |  13 ++
 include/linux/usb/otg.h             |   9 ++
 17 files changed, 406 insertions(+), 47 deletions(-)
 create mode 100644 configs/am43xx_evm_usbspl_defconfig
Quoted 1 line

Are you going to take this directly or this should go via USB tree?

Marek, do you want this? Or want me to?

Quoted 8 lines
Quoted 5 lines
Quoted 1 line

That is Lukasz.

This series has ended up in my patchwork queue, but there seem to be quite a few unapplied, dependent patches. Tom please let me know what you'd like me to do here.

... I didn't think it depended on stuff but I do need to do another go-round from the queue and apply stuff.

Specifically it seems to be missing the patch below, from:

git://git.ti.com/~dmurphy/ti-u-boot/mugunth-ti-u-boot.git

commit 67802cd52d1c45a789ac377106267cee9d6ac2d9

Author: Mugunthan V N <[email protected]>
Date:   Tue Mar 1 16:59:22 2016 +0530

drivers: usb: common: add common code for usb drivers to use

Add common usb code which usb drivers makes use of it.

 Makefile                    |  1 +
 drivers/usb/common/Makefile |  8 ++++++++
 drivers/usb/common/common.c | 40 ++++++++++++++++++++++++++++++++++++++++
 include/linux/usb/otg.h     |  9 +++++++++
 4 files changed, 58 insertions(+)

Regards,
Simon

#31 lore raw

cover driver model bring-up of dwc3 usb peripheral

Quoted 88 lines · Simon Glass

+Mugunthan, who seems to have been dropped from this thread

Quoted 63 lines · Tom Rini
Quoted 62 lines · Simon Glass

Hi,

Quoted 59 lines · Marek Vasut
Quoted 58 lines · Tom Rini
Quoted 53 lines · Michal Simek

Hi Tom,

Quoted 40 lines · Mugunthan V N

This patch series enables dwc3 usb driver to adopt driver model. This has been tested on AM437x evm sk (logs [1]) by loading kernel through usb ether

Also pushed a branch for testing [2]

[1] - http://pastebin.ubuntu.com/15391169/
[2] - git://git.ti.com/~mugunthanvnm/ti-u-boot/mugunth-ti-u-boot.git dm-dwc3

Kishon Vijay Abraham I (1):
configs: am43xx: Add am43xx_evm_usbspl_defconfig

Mugunthan V N (8):
drivers: usb: dwc3: remove devm_zalloc from linux_compact
drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board
files to drivers
am437x: board: do not register usb devices when CONFIG_DM_USB is
defined
dra7xx: board: do not register usb devices when CONFIG_DM_USB is
defined
drivers: usb: dwc3: add ti dwc3 misc driver for wrapper
drivers: usb: common: add support to get maximum speed from dt
drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model
support
defconfig: am437x_sk_evm: enable usb driver model

Tom Rini (1):
am43xx: Add USB device boot support to SPL

 board/ti/am43xx/MAINTAINERS         |   1 +
 board/ti/am43xx/board.c             |  52 +++++---
 board/ti/am57xx/board.c             |  11 --
 board/ti/dra7xx/evm.c               |  13 +-
 configs/am437x_sk_evm_defconfig     |   4 +
 configs/am43xx_evm_usbspl_defconfig |   9 ++
 drivers/Makefile                    |   2 +
 drivers/usb/common/common.c         |  29 +++++
 drivers/usb/dwc3/core.c             |  64 +++++++++-
 drivers/usb/dwc3/core.h             |   6 +
 drivers/usb/dwc3/dwc3-omap.c        | 230 +++++++++++++++++++++++++++++++++++-
Quoted 9 lines
 drivers/usb/dwc3/gadget.c           |   2 +-
 drivers/usb/dwc3/linux-compat.h     |   5 -
 drivers/usb/dwc3/ti_usb_phy.c       |   1 +
 drivers/usb/gadget/gadget_chips.h   |   2 +
 include/configs/am43xx_evm.h        |  13 ++
 include/linux/usb/otg.h             |   9 ++
 17 files changed, 406 insertions(+), 47 deletions(-)
 create mode 100644 configs/am43xx_evm_usbspl_defconfig
Quoted 1 line

Are you going to take this directly or this should go via USB tree?

Marek, do you want this? Or want me to?

Quoted 8 lines
Quoted 5 lines
Quoted 1 line

That is Lukasz.

This series has ended up in my patchwork queue, but there seem to be quite a few unapplied, dependent patches. Tom please let me know what you'd like me to do here.

... I didn't think it depended on stuff but I do need to do another go-round from the queue and apply stuff.

Specifically it seems to be missing the patch below, from:

git://git.ti.com/~dmurphy/ti-u-boot/mugunth-ti-u-boot.git

commit 67802cd52d1c45a789ac377106267cee9d6ac2d9

Author: Mugunthan V N <[email protected]>
Date:   Tue Mar 1 16:59:22 2016 +0530

drivers: usb: common: add common code for usb drivers to use

Add common usb code which usb drivers makes use of it.

Quoted 8 lines
 Makefile                    |  1 +
 drivers/usb/common/Makefile |  8 ++++++++
 drivers/usb/common/common.c | 40 ++++++++++++++++++++++++++++++++++++++++
 include/linux/usb/otg.h     |  9 +++++++++
 4 files changed, 58 insertions(+)

This was part of my musb v2 patch series, due to other priorities I didn't submitted this yet.

Simon, are you applying the series, can I send the above patch separately?

Regards
Mugunthan V N

#32 lore raw

cover driver model bring-up of dwc3 usb peripheral

Hi Mugunthan,

Quoted 98 lines · Mugunthan V N
Quoted 88 lines · Simon Glass

+Mugunthan, who seems to have been dropped from this thread

Quoted 63 lines · Tom Rini
Quoted 62 lines · Simon Glass

Hi,

Quoted 59 lines · Marek Vasut
Quoted 58 lines · Tom Rini
Quoted 53 lines · Michal Simek

Hi Tom,

Quoted 40 lines · Mugunthan V N

This patch series enables dwc3 usb driver to adopt driver model. This has been tested on AM437x evm sk (logs [1]) by loading kernel through usb ether

Also pushed a branch for testing [2]

[1] - http://pastebin.ubuntu.com/15391169/
[2] - git://git.ti.com/~mugunthanvnm/ti-u-boot/mugunth-ti-u-boot.git dm-dwc3

Kishon Vijay Abraham I (1):
configs: am43xx: Add am43xx_evm_usbspl_defconfig

Mugunthan V N (8):
drivers: usb: dwc3: remove devm_zalloc from linux_compact
drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board
files to drivers
am437x: board: do not register usb devices when CONFIG_DM_USB is
defined
dra7xx: board: do not register usb devices when CONFIG_DM_USB is
defined
drivers: usb: dwc3: add ti dwc3 misc driver for wrapper
drivers: usb: common: add support to get maximum speed from dt
drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model
support
defconfig: am437x_sk_evm: enable usb driver model

Tom Rini (1):
am43xx: Add USB device boot support to SPL

 board/ti/am43xx/MAINTAINERS         |   1 +
 board/ti/am43xx/board.c             |  52 +++++---
 board/ti/am57xx/board.c             |  11 --
 board/ti/dra7xx/evm.c               |  13 +-
 configs/am437x_sk_evm_defconfig     |   4 +
 configs/am43xx_evm_usbspl_defconfig |   9 ++
 drivers/Makefile                    |   2 +
 drivers/usb/common/common.c         |  29 +++++
 drivers/usb/dwc3/core.c             |  64 +++++++++-
 drivers/usb/dwc3/core.h             |   6 +
 drivers/usb/dwc3/dwc3-omap.c        | 230 +++++++++++++++++++++++++++++++++++-
Quoted 9 lines
 drivers/usb/dwc3/gadget.c           |   2 +-
 drivers/usb/dwc3/linux-compat.h     |   5 -
 drivers/usb/dwc3/ti_usb_phy.c       |   1 +
 drivers/usb/gadget/gadget_chips.h   |   2 +
 include/configs/am43xx_evm.h        |  13 ++
 include/linux/usb/otg.h             |   9 ++
 17 files changed, 406 insertions(+), 47 deletions(-)
 create mode 100644 configs/am43xx_evm_usbspl_defconfig
Quoted 1 line

Are you going to take this directly or this should go via USB tree?

Marek, do you want this? Or want me to?

Quoted 8 lines
Quoted 5 lines
Quoted 1 line

That is Lukasz.

This series has ended up in my patchwork queue, but there seem to be quite a few unapplied, dependent patches. Tom please let me know what you'd like me to do here.

... I didn't think it depended on stuff but I do need to do another go-round from the queue and apply stuff.

Specifically it seems to be missing the patch below, from:

git://git.ti.com/~dmurphy/ti-u-boot/mugunth-ti-u-boot.git

commit 67802cd52d1c45a789ac377106267cee9d6ac2d9

Author: Mugunthan V N <[email protected]>
Date:   Tue Mar 1 16:59:22 2016 +0530

drivers: usb: common: add common code for usb drivers to use

Add common usb code which usb drivers makes use of it.

Quoted 8 lines
 Makefile                    |  1 +
 drivers/usb/common/Makefile |  8 ++++++++
 drivers/usb/common/common.c | 40 ++++++++++++++++++++++++++++++++++++++++
 include/linux/usb/otg.h     |  9 +++++++++
 4 files changed, 58 insertions(+)
Quoted 4 lines

This was part of my musb v2 patch series, due to other priorities I didn't submitted this yet.

Simon, are you applying the series, can I send the above patch separately?

If you like, yes.

Regards,
Simon

#33 lore raw

cover driver model bring-up of dwc3 usb peripheral

Hi Simon

Quoted 101 lines · Simon Glass

Hi Mugunthan,

Quoted 98 lines · Mugunthan V N
Quoted 96 lines · Simon Glass

+Mugunthan, who seems to have been dropped from this thread

Quoted 63 lines · Tom Rini
Quoted 62 lines · Simon Glass

Hi,

Quoted 59 lines · Marek Vasut
Quoted 58 lines · Tom Rini
Quoted 53 lines · Michal Simek

Hi Tom,

Quoted 40 lines · Mugunthan V N

This patch series enables dwc3 usb driver to adopt driver model. This has been tested on AM437x evm sk (logs [1]) by loading kernel through usb ether

Also pushed a branch for testing [2]

[1] - http://pastebin.ubuntu.com/15391169/
[2] - git://git.ti.com/~mugunthanvnm/ti-u-boot/mugunth-ti-u-boot.git dm-dwc3

Kishon Vijay Abraham I (1):
configs: am43xx: Add am43xx_evm_usbspl_defconfig

Mugunthan V N (8):
drivers: usb: dwc3: remove devm_zalloc from linux_compact
drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts from board
files to drivers
am437x: board: do not register usb devices when CONFIG_DM_USB is
defined
dra7xx: board: do not register usb devices when CONFIG_DM_USB is
defined
drivers: usb: dwc3: add ti dwc3 misc driver for wrapper
drivers: usb: common: add support to get maximum speed from dt
drivers: usb: dwc3: add ti dwc3 peripheral driver with driver model
support
defconfig: am437x_sk_evm: enable usb driver model

Tom Rini (1):
am43xx: Add USB device boot support to SPL

 board/ti/am43xx/MAINTAINERS         |   1 +
 board/ti/am43xx/board.c             |  52 +++++---
 board/ti/am57xx/board.c             |  11 --
 board/ti/dra7xx/evm.c               |  13 +-
 configs/am437x_sk_evm_defconfig     |   4 +
 configs/am43xx_evm_usbspl_defconfig |   9 ++
 drivers/Makefile                    |   2 +
 drivers/usb/common/common.c         |  29 +++++
 drivers/usb/dwc3/core.c             |  64 +++++++++-
 drivers/usb/dwc3/core.h             |   6 +
 drivers/usb/dwc3/dwc3-omap.c        | 230 +++++++++++++++++++++++++++++++++++-
Quoted 9 lines
 drivers/usb/dwc3/gadget.c           |   2 +-
 drivers/usb/dwc3/linux-compat.h     |   5 -
 drivers/usb/dwc3/ti_usb_phy.c       |   1 +
 drivers/usb/gadget/gadget_chips.h   |   2 +
 include/configs/am43xx_evm.h        |  13 ++
 include/linux/usb/otg.h             |   9 ++
 17 files changed, 406 insertions(+), 47 deletions(-)
 create mode 100644 configs/am43xx_evm_usbspl_defconfig
Quoted 1 line

Are you going to take this directly or this should go via USB tree?

Marek, do you want this? Or want me to?

Quoted 8 lines
Quoted 5 lines
Quoted 1 line

That is Lukasz.

This series has ended up in my patchwork queue, but there seem to be quite a few unapplied, dependent patches. Tom please let me know what you'd like me to do here.

... I didn't think it depended on stuff but I do need to do another go-round from the queue and apply stuff.

Specifically it seems to be missing the patch below, from:

git://git.ti.com/~dmurphy/ti-u-boot/mugunth-ti-u-boot.git

commit 67802cd52d1c45a789ac377106267cee9d6ac2d9

Author: Mugunthan V N <[email protected]>
Date:   Tue Mar 1 16:59:22 2016 +0530

drivers: usb: common: add common code for usb drivers to use

Add common usb code which usb drivers makes use of it.

 Makefile                    |  1 +
 drivers/usb/common/Makefile |  8 ++++++++
 drivers/usb/common/common.c | 40 ++++++++++++++++++++++++++++++++++++++++
 include/linux/usb/otg.h     |  9 +++++++++
 4 files changed, 58 insertions(+)
Quoted 7 lines
Quoted 4 lines

This was part of my musb v2 patch series, due to other priorities I didn't submitted this yet.

Simon, are you applying the series, can I send the above patch separately?

If you like, yes.

I have posted the patch [1], can you apply it before applying this series to meet the dependency.

[1]: http://patchwork.ozlabs.org/patch/609333/

Regards
Mugunthan V N

#34 lore raw

cover driver model bring-up of dwc3 usb peripheral

Hi Mugunthan,

2016-04-12 12:34 GMT+02:00 Mugunthan V N <[email protected]>:

Quoted 118 lines

Hi Simon

Quoted 24 lines · Simon Glass

Hi Mugunthan,

Quoted 21 lines · Mugunthan V N
Quoted 20 lines · Simon Glass

+Mugunthan, who seems to have been dropped from this thread

Quoted 17 lines · Tom Rini
Quoted 16 lines · Simon Glass

Hi,

Quoted 13 lines · Marek Vasut
Quoted 12 lines · Tom Rini
Quoted 11 lines · Michal Simek

Hi Tom,

Quoted 8 lines · Mugunthan V N

This patch series enables dwc3 usb driver to adopt driver model. This has been tested on AM437x evm sk (logs [1]) by loading kernel through usb ether

Also pushed a branch for testing [2]

[1] - http://pastebin.ubuntu.com/15391169/
[2] - git://git.ti.com/~mugunthanvnm/ti-u-boot/

mugunth-ti-u-boot.git dm-dwc3

Quoted 7 lines
Quoted 7 lines
Quoted 7 lines
Quoted 7 lines
Quoted 7 lines
Quoted 7 lines
Quoted 7 lines
Quoted 7 lines
Quoted 7 lines

Kishon Vijay Abraham I (1):
configs: am43xx: Add am43xx_evm_usbspl_defconfig

Mugunthan V N (8):
drivers: usb: dwc3: remove devm_zalloc from linux_compact
drivers: usb: dwc3-omap: move usb_gadget_handle_interrupts

from board

Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines

files to drivers
am437x: board: do not register usb devices when CONFIG_DM_USB

is

Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines

defined
dra7xx: board: do not register usb devices when CONFIG_DM_USB

is

Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines

defined
drivers: usb: dwc3: add ti dwc3 misc driver for wrapper
drivers: usb: common: add support to get maximum speed from dt
drivers: usb: dwc3: add ti dwc3 peripheral driver with driver

model

Quoted 6 lines
Quoted 6 lines
Quoted 6 lines
Quoted 6 lines
Quoted 6 lines
Quoted 6 lines
Quoted 6 lines
Quoted 6 lines
Quoted 6 lines

support
defconfig: am437x_sk_evm: enable usb driver model

Tom Rini (1):
am43xx: Add USB device boot support to SPL

Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
 board/ti/am43xx/MAINTAINERS         |   1 +
 board/ti/am43xx/board.c             |  52 +++++---
 board/ti/am57xx/board.c             |  11 --
 board/ti/dra7xx/evm.c               |  13 +-
 configs/am437x_sk_evm_defconfig     |   4 +
 configs/am43xx_evm_usbspl_defconfig |   9 ++
 drivers/Makefile                    |   2 +
 drivers/usb/common/common.c         |  29 +++++
 drivers/usb/dwc3/core.c             |  64 +++++++++-
 drivers/usb/dwc3/core.h             |   6 +
 drivers/usb/dwc3/dwc3-omap.c        | 230

+++++++++++++++++++++++++++++++++++-

Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
Quoted 9 lines
 drivers/usb/dwc3/gadget.c           |   2 +-
 drivers/usb/dwc3/linux-compat.h     |   5 -
 drivers/usb/dwc3/ti_usb_phy.c       |   1 +
 drivers/usb/gadget/gadget_chips.h   |   2 +
 include/configs/am43xx_evm.h        |  13 ++
 include/linux/usb/otg.h             |   9 ++
 17 files changed, 406 insertions(+), 47 deletions(-)
 create mode 100644 configs/am43xx_evm_usbspl_defconfig

Are you going to take this directly or this should go via USB

tree?

Quoted 23 lines
Quoted 23 lines
Quoted 23 lines
Quoted 11 lines
Quoted 8 lines
Quoted 4 lines
Quoted 3 lines

Marek, do you want this? Or want me to?

That is Lukasz.

This series has ended up in my patchwork queue, but there seem to be quite a few unapplied, dependent patches. Tom please let me know what you'd like me to do here.

... I didn't think it depended on stuff but I do need to do another go-round from the queue and apply stuff.

Specifically it seems to be missing the patch below, from:

git://git.ti.com/~dmurphy/ti-u-boot/mugunth-ti-u-boot.git

commit 67802cd52d1c45a789ac377106267cee9d6ac2d9

Author: Mugunthan V N <[email protected]>
Date:   Tue Mar 1 16:59:22 2016 +0530

drivers: usb: common: add common code for usb drivers to use

Quoted 7 lines
Quoted 7 lines
Quoted 7 lines

Add common usb code which usb drivers makes use of it.

 Makefile                    |  1 +
 drivers/usb/common/Makefile |  8 ++++++++
 drivers/usb/common/common.c | 40 ++++++++++++++++++++++++++++++

++++++++++

Quoted 8 lines
Quoted 8 lines
Quoted 3 lines
 include/linux/usb/otg.h     |  9 +++++++++
 4 files changed, 58 insertions(+)

This was part of my musb v2 patch series, due to other priorities I didn't submitted this yet.

Simon, are you applying the series, can I send the above patch

separately?

Quoted 1 line
Quoted 9 lines
Quoted 2 lines

If you like, yes.

I have posted the patch [1], can you apply it before applying this series to meet the dependency.

[1]: http://patchwork.ozlabs.org/patch/609333/

Please correct me if I am wrong. But this hasn't been applied. Did you add support for DM_USB differently?

Thanks,
MIchal

Signature · 5 lines
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Microblaze cpu - http://www.monstr.eu/fdt/
Maintainer of Linux kernel - Xilinx Zynq ARM architecture
Microblaze U-BOOT custodian and responsible for u-boot arm zynq platform