Re: [GIT PULL] DWC3 changes for v3.4 merge window

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi, Greg,

On Thu, Mar 01, 2012 at 08:30:59AM -0800, Greg KH wrote:
> On Wed, Feb 29, 2012 at 11:55:00AM +0200, Felipe Balbi wrote:
> > Hi Greg,
> > 
> > Here's an updated pull request. Please consider pulling. Let me know if
> > there are still any concerns.
> > 
> > The following changes since commit 62aa2b537c6f5957afd98e29f96897419ed5ebab:
> > 
> >   Linux 3.3-rc2 (2012-01-31 13:31:54 -0800)
> > 
> > are available in the git repository at:
> > 
> >   git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git tags/dwc3-for-v3.4
> > 
> > for you to fetch changes up to 87e3782faa9c5777f4054833f71f9203d2cde2a2:
> > 
> >   usb: dwc3: clear 'res_trans_idx' as soon as it becomes invalid (2012-02-27 16:30:52 +0200)
> > 
> > ----------------------------------------------------------------
> > Here are the changes for v3.4 merge window.
> > 
> > It includes a new glue layer for Samsung's Exynos platform, a simplification of
> > memory management on DWC3 driver by using dev_xxx functions, a few
> > optimizations to IRQ handling by dropping memcpy() and using bitshifts, a fix
> > for TI's OMAP5430 TX Fifo Allocation, two fixes to test mode implementation
> > (one on debugfs and one on ep0), and several minor changes such as whitespace
> > cleanups, simplification of a few parts of the code, decreasing a long delay to
> > something a bit saner, dropping a header which was included twice and so on.
> > 
> > The highlight on this merge is the support for Samsung's Exynos platform,
> > increasing the number of different users for this driver to three.
> 
> That would be wonderful to have support for that, if it would build
> properly:
> 
> ERROR: "clk_enable" [drivers/usb/dwc3/dwc3-exynos.ko] undefined!
> ERROR: "clk_get" [drivers/usb/dwc3/dwc3-exynos.ko] undefined!
> ERROR: "clk_put" [drivers/usb/dwc3/dwc3-exynos.ko] undefined!
> ERROR: "clk_disable" [drivers/usb/dwc3/dwc3-exynos.ko] undefined!
> 
> So I can't take this merge right now, as it really wouldn't be good to
> break the build...

I fix this one up myself otherwise I would have to drop Exynos' glue
layer and the fix was simple:

diff --git a/drivers/usb/dwc3/Makefile b/drivers/usb/dwc3/Makefile
index 4502648..d441fe4 100644
--- a/drivers/usb/dwc3/Makefile
+++ b/drivers/usb/dwc3/Makefile
@@ -27,7 +27,19 @@ endif
 ##
 
 obj-$(CONFIG_USB_DWC3)		+= dwc3-omap.o
-obj-$(CONFIG_USB_DWC3)		+= dwc3-exynos.o
+
+##
+# REVISIT Samsung Exynos platform needs the clk API which isn't
+# defined on all architectures. If we allow dwc3-exynos.c compile
+# always we will fail the linking phase on those architectures
+# which don't provide clk api implementation and that's unnaceptable.
+#
+# When Samsung's platform start supporting pm_runtime, this check
+# for HAVE_CLK should be removed.
+##
+ifneq ($(CONFIG_HAVE_CLK),)
+	obj-$(CONFIG_USB_DWC3)		+= dwc3-exynos.o
+endif
 
 ifneq ($(CONFIG_PCI),)
 	obj-$(CONFIG_USB_DWC3)		+= dwc3-pci.o

Anton, you guys need to start supporting pm_runtime soon as I want to
remove that HAVE_CLK dependency. Please start working on that. If all
you need is to enable/disable clocks, it should be very straight forward
to use pm_runtime.

Anyway, Greg Here's an updated pull request, the same tag has been used,
let me know if that causes problems for you:

The following changes since commit 62aa2b537c6f5957afd98e29f96897419ed5ebab:

  Linux 3.3-rc2 (2012-01-31 13:31:54 -0800)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git tags/dwc3-for-v3.4

for you to fetch changes up to c2df85ca31645ed3c68c56bd30a3673e034224f1:

  usb: dwc3: clear 'res_trans_idx' as soon as it becomes invalid (2012-03-02 12:12:11 +0200)

----------------------------------------------------------------
usb: dwc3: changes for v3.4 merge window

Here are the changes for v3.4 merge window.

It includes a new glue layer for Samsung's Exynos platform, a simplification of
memory management on DWC3 driver by using dev_xxx functions, a few
optimizations to IRQ handling by dropping memcpy() and using bitshifts, a fix
for TI's OMAP5430 TX Fifo Allocation, two fixes on USB2 test mode
implementation (one on debugfs and one on ep0), and several minor changes such
as whitespace cleanups, simplification of a few parts of the code, decreasing a
long delay to something a bit saner, dropping a header which was included twice
and so on.

The highlight on this merge is the support for Samsung's Exynos platform,
increasing the number of different users for this driver to three.

Note that Samsung Exynos glue layer will only compile on platforms which
provide implementation for the clk API for now. Once Samsung supports
pm_runtime, that limitation can be dropped from the Makefile.

----------------------------------------------------------------
Anton Tikhomirov (2):
      usb: dwc3: Add Exynos Specific Glue layer
      usb: dwc3: use proper function for setting endpoint name

Chanho Park (1):
      usb: dwc3: use devm_xxx functions

Dan Carpenter (1):
      usb: dwc3: make dwc3_get_device_id() return the id

Danny Kukawka (1):
      usb: dwc3: linux/module.h included twice

Felipe Balbi (15):
      usb: dwc3: gadget: re-factor USB2 test mode to a function
      usb: dwc3: gadget: allow testmodes changes via debugfs
      usb: dwc3: gadget: re-factor Link state change to a function
      usb: dwc3: gadget: allow Link state changes via debugfs
      usb: dwc3: gadget: fix XferNotReady debug print
      usb: dwc3: gadget: use the descriptor pointer we hold
      usb: dwc3: ep0: move to CONFIGURED also on delayed status
      usb: dwc3: gadget: dynamically re-size TxFifos
      usb: dwc3: gadget: start core on Rx.Detect
      usb: dwc3: omap: convert pdata to of property
      usb: dwc3: debugfs: fix error check
      usb: dwc3: host: align on host device name
      usb: dwc3: gadget: avoid memcpy()ing event buffer
      usb: dwc3: gadget: allocate 3 packets for bulk and isoc endpoints
      usb: dwc3: convert TRBs into bitshifts

Gerard Cauvy (2):
      usb: dwc3: debugfs: fix off by one when entering testmode
      usb: dwc3: ep0: fix SetFeature(TEST)

Paul Zimmerman (8):
      usb: dwc3: clean up whitespace damage, typos, missing parens, etc.
      usb: dwc3: gadget: don't wrap around the TRB poll on non-ISOC
      usb: dwc3: fix bogus test in dwc3_gadget_start_isoc
      usb: dwc3: replace hard-coded constant in DWC3_GCTL_SCALEDOWN(3)
      usb: dwc3: pci: fix failure path in dwc3_pci_probe()
      usb: dwc3: shorten long delay in dwc3_gadget_set_link_state()
      usb: dwc3: take lock while modifying flags
      usb: dwc3: clear 'res_trans_idx' as soon as it becomes invalid

 drivers/usb/dwc3/Makefile                 |   13 +
 drivers/usb/dwc3/core.c                   |  108 ++++-----
 drivers/usb/dwc3/core.h                   |  198 +++++++--------
 drivers/usb/dwc3/debugfs.c                |  214 ++++++++++++++++-
 drivers/usb/dwc3/dwc3-exynos.c            |  151 ++++++++++++
 drivers/usb/dwc3/dwc3-omap.c              |  116 +++++----
 drivers/usb/dwc3/dwc3-pci.c               |   52 ++--
 drivers/usb/dwc3/ep0.c                    |   82 +++----
 drivers/usb/dwc3/gadget.c                 |  371 +++++++++++++++++++++--------
 drivers/usb/dwc3/gadget.h                 |    3 +
 drivers/usb/dwc3/host.c                   |    2 +-
 include/linux/platform_data/dwc3-exynos.h |   24 ++
 12 files changed, 921 insertions(+), 413 deletions(-)
 create mode 100644 drivers/usb/dwc3/dwc3-exynos.c
 create mode 100644 include/linux/platform_data/dwc3-exynos.h

-- 
balbi

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux