All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 00/23] usb gadget update for OTG 2.0
@ 2015-06-17 11:40 Li Jun
       [not found] ` <1434541230-15090-1-git-send-email-jun.li-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
  0 siblings, 1 reply; 36+ messages in thread
From: Li Jun @ 2015-06-17 11:40 UTC (permalink / raw)
  To: gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, balbi-l0cyMroinI0,
	peter.chen-KZfg59tc24xl57MIdRCFDg,
	robh+dt-DgEjT+Ai2ygdnm+yROfE0A
  Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA,
	devicetree-u79uwXL29TY76Z2rM5mHXA, pawel.moll-5wv7dgnIgG8,
	mark.rutland-5wv7dgnIgG8, macpaul-Re5JQEeQqe8AvxtiuMwx3w,
	rogerq-l0cyMroinI0, Li Jun

Changes for v5:
- By default otg feature are enabled if usb controller can support it.
  use of_usb_set_otg_caps to set otg_rev and disable features by DT.
- Update legacy drivers, allocate and init otg descriptor in bind
  function, free it in unbind, to make alloation and free are symmetric.
- Add Roger's reviewed-by.

Changes for v4:
- Add usb_otg_caps structure for all otg related capability attributes.
- Use one interface: of_usb_get_otg_caps to get all otg capabilities
  from DT, including otg_rev, hnp/srp/adp support.
- Add usb_otg_descriptor_alloc interface to allocate otg descriptor
  for better code sharing.
- Improve description of dt-binding doc. 

This is a follow-up of Macpaul Lin's previous patchset to resolve usb
gadget driver working with OTG 2.0, and set otg features by not only
usb driver config but also usb hardware property in DT, main changes:
1. Add usb_otg20_descriptor definition for OTG 2.0 which introduces bcdOTG
   field for otg revision, bcdOTG can be passed via device tree.
2. OTG features(SRP/HNP/ADP) can be decided by combination of usb HW
   properties and usb driver config.
3. Change the chipidea usb driver to use the updated mechanism.
4. Remove static usb otg descriptor definition, but allocate and init it
   according to otg capabilities in each gadget driver, if otg capabilities
   is not defined for legacy platforms, the usb otg descriptor content is
   kept the same as current static definition.

Li Jun (19):
  usb: otg: add usb_otg_caps structure for otg capabilities
  doc: dt-binding: usb: add otg related properties
  usb: common: add API to set usb otg capabilities by device tree
  usb: chipidea: set usb gadeget's otg capabilities
  usb: chipidea: update ci_otg_is_fsm_mode conditions
  usb: gadget: add usb otg descriptor allocate and init interface
  usb: gadget: configfs: allocate and init otg descriptor by otg
    capabilities
  usb: gadget: ether: allocate and init otg descriptor by otg
    capabilities
  usb: gadget: acm_ms: allocate and init otg descriptor by otg
    capabilities
  usb: gadget: audio: allocate and init otg descriptor by otg
    capabilities
  usb: gadget: cdc2: allocate and init otg descriptor by otg
    capabilities
  usb: gadget: g_ffs: allocate and init otg descriptor by otg
    capabilities
  usb: gadget: hid: allocate and init otg descriptor by otg capabilities
  usb: gadget: mass_storage: allocate and init otg descriptor by otg
    capabilities
  usb: gadget: multi: allocate and init otg descriptor by otg
    capabilities
  usb: gadget: ncm: allocate and init otg descriptor by otg capabilities
  usb: gadget: printer: allocate and init otg descriptor by otg
    capabilities
  usb: gadget: serial: allocate and init otg descriptor by otg
    capabilities
  usb: gadget: zero: allocate and init otg descriptor by otg
    capabilities

Macpaul Lin (4):
  usb: add usb_otg20_descriptor for OTG 2.0 and above
  usb: add USB_OTG_ADP definition
  usb: add usb_otg_caps to usb_gadget structure.
  usb: gadget: composite: add USB_DT_OTG request handling

 Documentation/devicetree/bindings/usb/generic.txt | 15 ++++++
 drivers/usb/chipidea/ci.h                         |  5 +-
 drivers/usb/chipidea/core.c                       |  8 ++++
 drivers/usb/chipidea/debug.c                      |  1 +
 drivers/usb/chipidea/udc.c                        |  7 ++-
 drivers/usb/common/common.c                       | 28 ++++++++++++
 drivers/usb/gadget/composite.c                    | 27 +++++++++++
 drivers/usb/gadget/config.c                       | 56 +++++++++++++++++++++++
 drivers/usb/gadget/configfs.c                     | 29 ++++++++----
 drivers/usb/gadget/legacy/acm_ms.c                | 44 +++++++++---------
 drivers/usb/gadget/legacy/audio.c                 | 43 +++++++++--------
 drivers/usb/gadget/legacy/cdc2.c                  | 44 +++++++++---------
 drivers/usb/gadget/legacy/ether.c                 | 52 ++++++++++-----------
 drivers/usb/gadget/legacy/g_ffs.c                 | 42 +++++++++--------
 drivers/usb/gadget/legacy/hid.c                   | 45 +++++++++---------
 drivers/usb/gadget/legacy/mass_storage.c          | 44 +++++++++---------
 drivers/usb/gadget/legacy/multi.c                 | 39 ++++++++++------
 drivers/usb/gadget/legacy/ncm.c                   | 43 +++++++++--------
 drivers/usb/gadget/legacy/printer.c               | 35 +++++++-------
 drivers/usb/gadget/legacy/serial.c                | 29 ++++++------
 drivers/usb/gadget/legacy/zero.c                  | 32 ++++++-------
 include/linux/usb/chipidea.h                      |  1 +
 include/linux/usb/gadget.h                        |  6 +++
 include/linux/usb/of.h                            |  7 +++
 include/linux/usb/otg.h                           | 15 ++++++
 include/uapi/linux/usb/ch9.h                      | 12 +++++
 26 files changed, 465 insertions(+), 244 deletions(-)

-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 36+ messages in thread

end of thread, other threads:[~2015-06-24  7:44 UTC | newest]

Thread overview: 36+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-06-17 11:40 [PATCH v5 00/23] usb gadget update for OTG 2.0 Li Jun
     [not found] ` <1434541230-15090-1-git-send-email-jun.li-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2015-06-17 11:40   ` [PATCH v5 01/23] usb: add usb_otg20_descriptor for OTG 2.0 and above Li Jun
2015-06-17 11:40   ` [PATCH v5 02/23] usb: add USB_OTG_ADP definition Li Jun
2015-06-17 11:40   ` [PATCH v5 03/23] usb: otg: add usb_otg_caps structure for otg capabilities Li Jun
2015-06-17 11:40   ` [PATCH v5 04/23] usb: add usb_otg_caps to usb_gadget structure Li Jun
2015-06-17 11:40   ` [PATCH v5 05/23] usb: gadget: composite: add USB_DT_OTG request handling Li Jun
2015-06-17 11:40   ` [PATCH v5 06/23] doc: dt-binding: usb: add otg related properties Li Jun
2015-06-17 11:40   ` [PATCH v5 07/23] usb: common: add API to set usb otg capabilities by device tree Li Jun
2015-06-17 11:40   ` [PATCH v5 08/23] usb: chipidea: set usb gadeget's otg capabilities Li Jun
     [not found]     ` <1434541230-15090-9-git-send-email-jun.li-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2015-06-18  7:39       ` Roger Quadros
     [not found]         ` <20150618103935.cfbd94c8c37c5c3298c55272-l0cyMroinI0@public.gmane.org>
2015-06-18  8:20           ` Li Jun
2015-06-18 12:06             ` Roger Quadros
     [not found]               ` <20150618150627.d7e81ca1d6bdf7dba94c4eff-l0cyMroinI0@public.gmane.org>
2015-06-18 13:10                 ` Li Jun
2015-06-24  3:04       ` Peter Chen
2015-06-24  3:34         ` Li Jun
2015-06-24  3:49           ` Peter Chen
2015-06-24  7:22             ` Li Jun
2015-06-24  7:44               ` Peter Chen
2015-06-17 11:40   ` [PATCH v5 09/23] usb: chipidea: update ci_otg_is_fsm_mode conditions Li Jun
2015-06-17 11:40   ` [PATCH v5 10/23] usb: gadget: add usb otg descriptor allocate and init interface Li Jun
2015-06-17 11:40   ` [PATCH v5 11/23] usb: gadget: configfs: allocate and init otg descriptor by otg capabilities Li Jun
2015-06-17 11:40   ` [PATCH v5 12/23] usb: gadget: ether: " Li Jun
     [not found]     ` <1434541230-15090-13-git-send-email-jun.li-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2015-06-18  7:43       ` Roger Quadros
     [not found]         ` <20150618104302.3da49bc854834b0257e3f703-l0cyMroinI0@public.gmane.org>
2015-06-18  7:51           ` Roger Quadros
     [not found]             ` <20150618105148.cbf486831982d0244d499461-l0cyMroinI0@public.gmane.org>
2015-06-18  8:30               ` Li Jun
2015-06-17 11:40   ` [PATCH v5 13/23] usb: gadget: acm_ms: " Li Jun
2015-06-17 11:40   ` [PATCH v5 14/23] usb: gadget: audio: " Li Jun
2015-06-17 11:40   ` [PATCH v5 15/23] usb: gadget: cdc2: " Li Jun
2015-06-17 11:40   ` [PATCH v5 16/23] usb: gadget: g_ffs: " Li Jun
2015-06-17 11:40   ` [PATCH v5 17/23] usb: gadget: hid: " Li Jun
2015-06-17 11:40   ` [PATCH v5 18/23] usb: gadget: mass_storage: " Li Jun
2015-06-17 11:40   ` [PATCH v5 19/23] usb: gadget: multi: " Li Jun
2015-06-17 11:40   ` [PATCH v5 20/23] usb: gadget: ncm: " Li Jun
2015-06-17 11:40   ` [PATCH v5 21/23] usb: gadget: printer: " Li Jun
2015-06-17 11:40   ` [PATCH v5 22/23] usb: gadget: serial: " Li Jun
2015-06-17 11:40   ` [PATCH v5 23/23] usb: gadget: zero: " Li Jun

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.