devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH/RFT v2 00/17] Add DT support for ohci-da8xx
@ 2016-10-24 16:46 ahaslam
  2016-10-24 16:46 ` [PATCH/RFT v2 01/17] ARM: davinci: da8xx: add usb phy clocks ahaslam
                   ` (6 more replies)
  0 siblings, 7 replies; 64+ messages in thread
From: ahaslam @ 2016-10-24 16:46 UTC (permalink / raw)
  To: gregkh, johan, robh+dt, nsekhar, stern, khilman, sshtylyov, david,
	manjunath.goudar, broonie, abailon
  Cc: linux-usb, devicetree, linux-kernel, linux-arm-kernel,
	Axel Haslam

From: Axel Haslam <ahaslam@baylibre.com>

The purpose of this patch series is to add DT support and modernize
the ohci-da8xx glue driver without breaking the non-DT boot,
which is still used in unconverted davinci devices.

The first couple of patches, are the recent and ongoing efforts from
David Lechner to clean up davinci-mach code and the ochi-da8xx driver,
Im including these patches on this series for completeness sake.

Then I re-based an old patch by Manjunath Goudar[4] to be able to build
the driver as a module. We can now add this patch because we removed
references to sysconf registers by using David's patches.

Then I prepare the stage for a DT boot which does not depend on any
mach-arch/* callbacks by using a regulator to handle the vbus and
over current gpios. For this, i extended the fixed regulator driver to
register for an irq and send a regulator notification if an over curent
pin is specified.

The only dependency left for this series is the recently re-posted patch
by David to remove references to mach-code[1], which is approved and
should be picked up soon.

Note 1: Testing was done on a omap138-lcdk board, using DT, and non-DT boot,
and checking that in both cases the hub, usb mass storage and an input
device are correctly enumerated and working. The omap138-lcdk does not
have gpios to control vbus and get over current interrupt notifications.
If anyone has a da830-evm based board and could confirm that ohci is
correctly working, i would appreciate it.
(the OHCI option needs to be enabled in menuconfig)

Note 2: It seems that the davinci-gpio driver is broken for DT based boot
and any gpio > 32. (luckly none of the DT based boards use gpios yet)
The issue is discussed here [2]

Note 3: A git branch based on tag: next-20161021 with the dependencies
is available in my github here [3].

[1] usb: ohci-da8xx: Remove code that references mach
http://marc.info/?l=linux-kernel&m=147632744323084&w=4

[2] thread about invalid gpio in davinci
http://www.gossamer-threads.com/lists/linux/kernel/2550178

[3] Git branch:
https://github.com/axelhaslamx/linux-axel/commits/ohci-da8xx-dt-v2.1

[4] Separate ohci-da8xx driver patch
https://patches.linaro.org/patch/18234/

Changes from v1->v2
* Rebased and added patch to make ohci a separate driver
* Use a regulator instead of handling Gpios (David Lechner)
* Add an overcurrent mode to regulator framework
* Fixed regulator is able to register for and overcurrent irq
* Added patch by Alexandre to remove build warnings
* Moved global variables into private hcd structure.

Alexandre Bailon (1):
  ARM: davinci: da8xx: Fix some redefined symbol warnings

Axel Haslam (10):
  ARM: davinci: da8xx: Enable the usb20 "per" clk on phy_clk_enable
  ARM: davinci: hawk: add full constraints for ohci plat boot
  regulator: fixed: Add over current event
  USB: da8xx: use flag instead of bitmask for over current change
  USB: ochi-da8xx: Use a regulator for vbus/overcurrent
  USB: da8xx: use ohci priv data instead of globals
  ARM: davinci: register the usb20_phy clock on the DT file
  usb: host: ohci-da8xx: Add devicetree bindings documentation
  USB: ohci-da8xx: Allow probing from DT
  ARM: dts: da850: add usb device node

David Lechner (5):
  ARM: davinci: da8xx: add usb phy clocks
  ARM: davinci: da8xx: Add CFGCHIP syscon platform declaration.
  ARM: davinci: da8xx: Add USB PHY platform declaration
  ARM: DTS: da850: Add cfgchip syscon node
  ARM: DTS: da850: Add usb phy node

Manjunath Goudar (1):
  USB: OHCI: make ohci-da8xx a separate driver

 .../bindings/regulator/fixed-regulator.txt         |   4 +
 .../devicetree/bindings/usb/ohci-da8xx.txt         |  39 +++
 arch/arm/boot/dts/da850-lcdk.dts                   |   8 +
 arch/arm/boot/dts/da850.dtsi                       |  17 +
 arch/arm/mach-davinci/board-da830-evm.c            | 152 +++-----
 arch/arm/mach-davinci/board-da850-evm.c            |   4 +
 arch/arm/mach-davinci/board-mityomapl138.c         |   4 +
 arch/arm/mach-davinci/board-omapl138-hawk.c        | 122 ++-----
 arch/arm/mach-davinci/da8xx-dt.c                   |   2 +
 arch/arm/mach-davinci/devices-da8xx.c              |  28 ++
 arch/arm/mach-davinci/include/mach/da8xx.h         |   8 +-
 arch/arm/mach-davinci/usb-da8xx.c                  | 244 ++++++++++++-
 drivers/regulator/fixed.c                          |  64 ++++
 drivers/usb/host/Kconfig                           |   2 +-
 drivers/usb/host/Makefile                          |   1 +
 drivers/usb/host/ohci-da8xx.c                      | 382 +++++++++++----------
 drivers/usb/host/ohci-hcd.c                        |  18 -
 include/linux/platform_data/usb-davinci.h          |  43 ---
 include/linux/regulator/consumer.h                 |   5 +
 include/linux/regulator/fixed.h                    |   3 +
 20 files changed, 703 insertions(+), 447 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/usb/ohci-da8xx.txt

-- 
1.9.1

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

end of thread, other threads:[~2016-10-30 20:42 UTC | newest]

Thread overview: 64+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-10-24 16:46 [PATCH/RFT v2 00/17] Add DT support for ohci-da8xx ahaslam
2016-10-24 16:46 ` [PATCH/RFT v2 01/17] ARM: davinci: da8xx: add usb phy clocks ahaslam
     [not found] ` <20161024164634.4330-1-ahaslam-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>
2016-10-24 16:46   ` [PATCH/RFT v2 02/17] ARM: davinci: da8xx: Add CFGCHIP syscon platform declaration ahaslam-rdvid1DuHRBWk0Htik3J/w
2016-10-25  8:10     ` Sekhar Nori
     [not found]       ` <7f9efe9d-0912-e10a-3e45-24c5d2b455ab-l0cyMroinI0@public.gmane.org>
2016-10-25  9:37         ` Axel Haslam
     [not found]           ` <CAKXjFTOVuWRL+yuk6sARa2PAd6j-V4Ej5AmPGz7F7JXKidvJrg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-25 10:17             ` Sekhar Nori
     [not found]               ` <758f206c-d0bd-6f70-da1e-42c88d6dd1f0-l0cyMroinI0@public.gmane.org>
2016-10-25 15:53                 ` David Lechner
2016-10-26  8:56                   ` Sekhar Nori
2016-10-24 16:46   ` [PATCH/RFT v2 03/17] ARM: davinci: da8xx: Add USB PHY " ahaslam-rdvid1DuHRBWk0Htik3J/w
2016-10-25  9:18     ` Sekhar Nori
     [not found]       ` <4129f1be-42f6-f182-c8a2-84befe01d298-l0cyMroinI0@public.gmane.org>
2016-10-25  9:37         ` Axel Haslam
2016-10-24 16:46   ` [PATCH/RFT v2 06/17] ARM: davinci: da8xx: Fix some redefined symbol warnings ahaslam-rdvid1DuHRBWk0Htik3J/w
2016-10-25 10:03     ` Sekhar Nori
     [not found]       ` <9fa01842-cf8e-87e9-75ce-5d4b2841fdfe-l0cyMroinI0@public.gmane.org>
2016-10-25 12:14         ` Alexandre Bailon
2016-10-24 16:46   ` [PATCH/RFT v2 09/17] regulator: fixed: Add over current event ahaslam-rdvid1DuHRBWk0Htik3J/w
     [not found]     ` <20161024164634.4330-10-ahaslam-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>
2016-10-24 17:43       ` Mark Brown
2016-10-24 17:53         ` Axel Haslam
2016-10-24 17:53       ` Mark Brown
     [not found]         ` <20161024175320.GO17252-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2016-10-24 18:11           ` Axel Haslam
2016-10-24 18:19             ` Mark Brown
2016-10-25 12:55               ` Axel Haslam
2016-10-25 14:33                 ` Mark Brown
2016-10-25 14:57                   ` Axel Haslam
2016-10-25 15:07                     ` Axel Haslam
2016-10-30 20:42     ` Rob Herring
2016-10-24 16:46   ` [PATCH/RFT v2 10/17] USB: da8xx: use flag instead of bitmask for over current change ahaslam-rdvid1DuHRBWk0Htik3J/w
2016-10-24 16:46   ` [PATCH/RFT v2 11/17] USB: OHCI: make ohci-da8xx a separate driver ahaslam-rdvid1DuHRBWk0Htik3J/w
     [not found]     ` <20161024164634.4330-12-ahaslam-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>
2016-10-25  0:38       ` David Lechner
     [not found]         ` <403743d8-dff2-3389-105b-1082b674b0b8-nq/r/kbU++upp/zk7JDF2g@public.gmane.org>
2016-10-25  7:39           ` Axel Haslam
     [not found]             ` <CAKXjFTPvEXPRyq0HZiF7mcHWFaFoH7MjFqEKnTyuSCUOB=U7Aw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-25 16:12               ` David Lechner
     [not found]                 ` <21019d11-3b01-3e0e-60bc-c4873cf20237-nq/r/kbU++upp/zk7JDF2g@public.gmane.org>
2016-10-25 16:21                   ` Axel Haslam
     [not found]                     ` <CAKXjFTM8RwsAut8cD0n0foxueSjR4VB4k4WJizXo9SyaW3viOA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-25 16:24                       ` David Lechner
2016-10-24 16:46   ` [PATCH/RFT v2 12/17] USB: ochi-da8xx: Use a regulator for vbus/overcurrent ahaslam-rdvid1DuHRBWk0Htik3J/w
     [not found]     ` <20161024164634.4330-13-ahaslam-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>
2016-10-25  1:39       ` David Lechner
     [not found]         ` <672c1f1a-58b7-6947-7fb2-acd38fab8597-nq/r/kbU++upp/zk7JDF2g@public.gmane.org>
2016-10-25  8:24           ` Axel Haslam
     [not found]             ` <CAKXjFTOxQ58rThpPw9t73k-BBZ8YKGvMhWfAG1r+3kC=GJVxWg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-25 16:53               ` David Lechner
2016-10-25 17:32                 ` Axel Haslam
2016-10-25 10:43       ` Sekhar Nori
     [not found]         ` <d7e2b356-4874-fdc1-c505-70e57e3908de-l0cyMroinI0@public.gmane.org>
2016-10-25 10:52           ` Axel Haslam
2016-10-24 16:46   ` [PATCH/RFT v2 13/17] USB: da8xx: use ohci priv data instead of globals ahaslam-rdvid1DuHRBWk0Htik3J/w
     [not found]     ` <20161024164634.4330-14-ahaslam-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>
2016-10-25  1:12       ` David Lechner
2016-10-25  9:56         ` Axel Haslam
2016-10-24 16:46   ` [PATCH/RFT v2 14/17] ARM: davinci: register the usb20_phy clock on the DT file ahaslam-rdvid1DuHRBWk0Htik3J/w
2016-10-24 16:46   ` [PATCH/RFT v2 15/17] usb: host: ohci-da8xx: Add devicetree bindings documentation ahaslam-rdvid1DuHRBWk0Htik3J/w
     [not found]     ` <20161024164634.4330-16-ahaslam-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>
2016-10-25  1:02       ` David Lechner
     [not found]         ` <523928a1-a321-abb6-504f-a1053c88ce53-nq/r/kbU++upp/zk7JDF2g@public.gmane.org>
2016-10-25  9:56           ` Axel Haslam
2016-10-24 16:46   ` [PATCH/RFT v2 16/17] USB: ohci-da8xx: Allow probing from DT ahaslam-rdvid1DuHRBWk0Htik3J/w
     [not found]     ` <20161024164634.4330-17-ahaslam-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>
2016-10-25  0:53       ` David Lechner
2016-10-25  8:10         ` Axel Haslam
2016-10-25 10:55   ` [PATCH/RFT v2 00/17] Add DT support for ohci-da8xx Sekhar Nori
2016-10-24 16:46 ` [PATCH/RFT v2 04/17] ARM: DTS: da850: Add cfgchip syscon node ahaslam
2016-10-24 16:46 ` [PATCH/RFT v2 05/17] ARM: DTS: da850: Add usb phy node ahaslam
2016-10-24 16:46 ` [PATCH/RFT v2 07/17] ARM: davinci: da8xx: Enable the usb20 "per" clk on phy_clk_enable ahaslam
2016-10-25  2:53   ` David Lechner
2016-10-25 10:01     ` Axel Haslam
2016-10-25 10:12   ` Sekhar Nori
     [not found]     ` <833b6b60-4504-dac7-ccbb-bc08c985ad01-l0cyMroinI0@public.gmane.org>
2016-10-25 16:05       ` David Lechner
2016-10-26  9:30         ` Sekhar Nori
2016-10-24 16:46 ` [PATCH/RFT v2 08/17] ARM: davinci: hawk: add full constraints for ohci plat boot ahaslam
     [not found]   ` <20161024164634.4330-9-ahaslam-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>
2016-10-25 10:28     ` Sekhar Nori
     [not found]       ` <522eeb9a-6fb1-88eb-5c58-7ee209a50fc3-l0cyMroinI0@public.gmane.org>
2016-10-25 10:31         ` Axel Haslam
2016-10-24 16:46 ` [PATCH/RFT v2 17/17] ARM: dts: da850: add usb device node ahaslam
     [not found]   ` <20161024164634.4330-18-ahaslam-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>
2016-10-25  0:48     ` David Lechner
     [not found]       ` <59ca6a1f-6db9-eed2-8e8a-77657c7febac-nq/r/kbU++upp/zk7JDF2g@public.gmane.org>
2016-10-25  8:03         ` Axel Haslam

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).