All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/6] Add MediaTek MUSB Controller Driver
@ 2019-02-19  7:36 ` min.guo
  0 siblings, 0 replies; 52+ messages in thread
From: min.guo @ 2019-02-19  7:36 UTC (permalink / raw)
  To: Bin Liu, Rob Herring
  Cc: Greg Kroah-Hartman, Mark Rutland, Matthias Brugger, Alan Stern,
	chunfeng.yun, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel, linux-mediatek, tony, hdegoede, Min Guo

From: Min Guo <min.guo@mediatek.com>

These patches introduce the MediaTek MUSB controller driver.

The driver can be configured as Dual-Role Device (DRD),
Peripheral Only and Host Only modes. This has beed tested on
MT2701 with a variety of devices in host mode and with the 
f_mass gadget driver in peripheral mode, plugging otg cables
in/out a lot of times in all possible imaginable plug orders.

changes in v5:
changes of dt-bindings suggested by Rob:
1. Modify compatible as 
- compatible : should be one of:
               "mediatek,mt-2701"
               ...
               followed by "mediatek,mtk-musb"
2. Add usb connector child node
changes of DTS:
1. Add usb connector child node
changes of driver suggested by Bin:
1. Replace musb_readb() with musb_clearb() to clear dma pending interrupts
2. Replace musb_readb() with musb_clearb() to clear common/tx/rx pending interrupts
3. Make musb_clearb/w() return the value of musb_readb/w()

changes in v4:
changes of dt-bindings suggested by Sergei:
1. String alignment
changes of driver suggested by Tony and Bin:
1. Add a new patch for set/get_toggle()
2. Add a new patch for noirq type of dma
3. Add a new patch musb_clearb/w()
4. Abondon patch "usb: musb: Delete the const attribute of addr parameter in readb/w/l hooks"

changes in v3:
changes of driver suggested by Bin:
1. Add a new patch for musb_readb/w/l() to remove const attribute 
2. Use is_out as function parameter in set_toggle/get_toggle() hooks
3. Remove 'u8/u16 data' parameter in clearb/w() hooks
4. Remove musb_default_clearb/w()
5. Replace musb_readb/w() with musb_clearb/w() to clear pending interrupts 
6. Add comments to clearb/w() hooks
7. Replace musb_save_toggle() with musb->io.get_toggle()
8. Replace musb_set_toggle() with musb->io.set_toggle()

changes in v2:
changes of dt-bindings suggested by Rob and Bin:
1. Modify DRC to DRD
2. Drop the "<soc-model>-musb" in compatible
3. Remove phy-names
4. Add space after comma in clock-names
dtsi:
1. Remove phy-names
changes of driver suggested by Bin:
1. Add a new patch for musb_set_toggle
2. Add summarize of MediaTek musb controller differences in the commit log
3. Abondon patch "usb: musb: Move musbhsdma macro definition to musb_dma.h"
4. Add "|| COMPILE_TEST" in Kconfig
5. Add musb_clearb() and musb_clearw() hooks
6. Add get_toggle() and set_toggle() hooks
7. Replace musb_readl() with musb_readw() to read 16bit toggle register
8. Move MediaTek's private toggle registers from musb_regs.h to mediatek.c
9. Create musbhs_dma_controller_create_noirq()

Min Guo (6):
  dt-bindings: usb: musb: Add support for MediaTek musb controller
  arm: dts: mt2701: Add usb2 device nodes
  usb: musb: Add get/set toggle hooks
  usb: musb: Add noirq type of dma create interface
  usb: musb: Add musb_clearb/w() interface
  usb: musb: Add support for MediaTek musb controller

 .../devicetree/bindings/usb/mediatek,musb.txt      |  54 ++
 arch/arm/boot/dts/mt2701-evb.dts                   |  26 +
 arch/arm/boot/dts/mt2701.dtsi                      |  33 ++
 drivers/usb/musb/Kconfig                           |   8 +-
 drivers/usb/musb/Makefile                          |   1 +
 drivers/usb/musb/mediatek.c                        | 629 +++++++++++++++++++++
 drivers/usb/musb/musb_core.c                       |  74 ++-
 drivers/usb/musb/musb_core.h                       |  13 +-
 drivers/usb/musb/musb_dma.h                        |   9 +
 drivers/usb/musb/musb_host.c                       |  46 +-
 drivers/usb/musb/musb_io.h                         |  12 +-
 drivers/usb/musb/musbhsdma.c                       |  56 +-
 drivers/usb/musb/sunxi.c                           |   4 +-
 drivers/usb/musb/tusb6010.c                        |   2 +-
 14 files changed, 895 insertions(+), 72 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/usb/mediatek,musb.txt
 create mode 100644 drivers/usb/musb/mediatek.c

-- 
1.9.1


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

end of thread, other threads:[~2019-04-01  5:35 UTC | newest]

Thread overview: 52+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-19  7:36 [PATCH v5 0/6] Add MediaTek MUSB Controller Driver min.guo
2019-02-19  7:36 ` min.guo
2019-02-19  7:36 ` min.guo
2019-02-19  7:36 ` [PATCH v5 1/6] dt-bindings: usb: musb: Add support for MediaTek musb controller min.guo
2019-02-19  7:36   ` min.guo
2019-02-19  7:36   ` [v5,1/6] " min.guo
2019-02-19  7:36   ` [PATCH v5 1/6] " min.guo
2019-02-22 16:49   ` Rob Herring
2019-02-22 16:49     ` Rob Herring
2019-02-22 16:49     ` [v5,1/6] " Rob Herring
2019-02-22 16:49     ` [PATCH v5 1/6] " Rob Herring
2019-02-23  3:04     ` Min Guo
2019-02-23  3:04       ` Min Guo
2019-02-25  1:36     ` Min Guo
2019-02-25  1:36       ` Min Guo
2019-02-25  1:36       ` [v5,1/6] " min.guo
2019-02-25  1:36       ` [PATCH v5 1/6] " Min Guo
2019-03-04 17:42       ` Rob Herring
2019-03-04 17:42         ` Rob Herring
2019-03-04 17:42         ` [v5,1/6] " Rob Herring
2019-03-04 17:42         ` [PATCH v5 1/6] " Rob Herring
2019-03-05  1:19         ` Min Guo
2019-03-05  1:19           ` Min Guo
2019-03-05  1:19           ` [v5,1/6] " min.guo
2019-03-05  1:19           ` [PATCH v5 1/6] " Min Guo
2019-02-19  7:36 ` [PATCH v5 2/6] arm: dts: mt2701: Add usb2 device nodes min.guo
2019-02-19  7:36   ` min.guo
2019-02-19  7:36   ` [v5,2/6] " min.guo
2019-02-19  7:36   ` [PATCH v5 2/6] " min.guo
2019-02-19  7:36 ` [PATCH v5 3/6] usb: musb: Add get/set toggle hooks min.guo
2019-02-19  7:36   ` min.guo
2019-02-19  7:36   ` [v5,3/6] " min.guo
2019-02-19  7:36   ` [PATCH v5 3/6] " min.guo
2019-02-19  7:36 ` [PATCH v5 4/6] usb: musb: Add noirq type of dma create interface min.guo
2019-02-19  7:36   ` min.guo
2019-02-19  7:36   ` [v5,4/6] " min.guo
2019-02-19  7:36   ` [PATCH v5 4/6] " min.guo
2019-02-19  7:36 ` [PATCH v5 5/6] usb: musb: Add musb_clearb/w() interface min.guo
2019-02-19  7:36   ` min.guo
2019-02-19  7:36   ` [v5,5/6] " min.guo
2019-02-19  7:36   ` [PATCH v5 5/6] " min.guo
2019-02-19  7:36 ` [PATCH v5 6/6] usb: musb: Add support for MediaTek musb controller min.guo
2019-02-19  7:36   ` min.guo
2019-02-19  7:36   ` [v5,6/6] " min.guo
2019-02-19  7:36   ` [PATCH v5 6/6] " min.guo
2019-03-30  8:52   ` Fabien Parent
2019-03-30  8:52     ` Fabien Parent
2019-03-30  8:52     ` [v5,6/6] " Fabien Parent
2019-04-01  5:35     ` [PATCH v5 6/6] " Min Guo
2019-04-01  5:35       ` Min Guo
2019-04-01  5:35       ` [v5,6/6] " min.guo
2019-04-01  5:35       ` [PATCH v5 6/6] " Min Guo

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.