Re: [PATCH v2 0/6] ARM: davinci: ohci-da8xx: model the vbus GPIO as a fixed regulator

From: Alan Stern
Date: Fri Mar 29 2019 - 10:02:44 EST


On Fri, 29 Mar 2019, Bartosz Golaszewski wrote:

> From: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx>
>
> Historically the power supply management in this driver has been handled
> in two separate places in parallel. Device-tree users simply defined an
> appropriate regulator, while two boards with no DT support (da830-evm and
> omapl138-hawk) passed functions defined in their respective board files
> over platform data. These functions simply used legacy GPIO calls to
> watch the oc GPIO for interrupts and disable the vbus GPIO when the irq
> fires.
>
> Commit d193abf1c913 ("usb: ohci-da8xx: add vbus and overcurrent gpios")
> updated these GPIO calls to the modern API and moved them inside the
> driver.
>
> This however is not the optimal solution for the vbus GPIO as it
> duplicates code. Instead we should model the GPIO as a fixed regulator
> that can be controlled with a GPIO.
>
> This series adds fixed regulators for all users of vbus GPIO, adds
> overcurrent protection using the existing vbus regulator in the USB
> driver and removes the vbus GPIO calls once they're no longer used.
>
> v1 -> v2:
> - add patch 1/6 that fixes an existing problem with missing array
> sentinels in GPIO lookups
> - add patch 2/6 that removes an unnecessary use count variable from the
> driver
> - reorder the changes: add support for overcurrent protection using the
> existing vbus regulator first, then setup fixed regulators in board
> files and finally remove the vbus GPIO from the ohci driver
>
> Bartosz Golaszewski (6):
> ARM: davinci: add missing sentinels to GPIO lookup tables
> usb: ohci-da8xx: let the regulator framework keep track of use count
> usb: ohci-da8xx: disable the regulator if the overcurrent irq fired
> ARM: davinci: omapl138-hawk: add a fixed regulator for ohci-da8xx
> ARM: davinci: da830-evm: add a fixed regulator for ohci-da8xx
> usb: ohci-da8xx: drop the vbus GPIO
>
> arch/arm/mach-davinci/board-da830-evm.c | 51 ++++++++++++++++++--
> arch/arm/mach-davinci/board-da850-evm.c | 1 +
> arch/arm/mach-davinci/board-dm355-evm.c | 1 +
> arch/arm/mach-davinci/board-dm644x-evm.c | 1 +
> arch/arm/mach-davinci/board-omapl138-hawk.c | 50 ++++++++++++++++++--
> drivers/usb/host/ohci-da8xx.c | 52 ++++++++++-----------
> 6 files changed, 122 insertions(+), 34 deletions(-)

For patches 2, 3, and 6:

Acked-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>

Alan Stern