[RFC 0/8] usb: phy: msm: various cleanups

From: Arnd Bergmann
Date: Wed May 18 2016 - 17:24:41 EST


I stumbled over this warning last week, which showed up after I had
removed an incorrect patch from my randconfig build setup:

drivers/usb/phy/phy-msm-usb.c: In function 'msm_otg_probe':
drivers/usb/phy/phy-msm-usb.c:1735:14: error: 'regs[0].consumer' may be used uninitialized in this function [-Werror=maybe-uninitialized]
motg->vddcx = regs[0].consumer;
~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
drivers/usb/phy/phy-msm-usb.c:1736:14: error: 'regs[1].consumer' may be used uninitialized in this function [-Werror=maybe-uninitialized]
motg->v3p3 = regs[1].consumer;
~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
drivers/usb/phy/phy-msm-usb.c:1737:14: error: 'regs[2].consumer' may be used uninitialized in this function [-Werror=maybe-uninitialized]
motg->v1p8 = regs[2].consumer;
~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~

Having already fixed the same problem in the phy-qcom-8x16-usb.c
driver before, I tried to do the same thing here, but it turned
out to be somewhat different, and I ended up running into several
unrelated issues in the driver that I now try to fix up.

The series is not tested beyond verifying that it no longer causes
randconfig warnings, and some patches are not entirely obvious.
In particular the ehci-msm and chipidea changes are probably a
good idea, but they actually change the behavior of the drivers
in a way that I cannot verify through inspection alone. The
last patch in the series probably requires some changes to the
devicetree files to go along with it.

Please have a look and test this, provided the patches make sense
conceptually.

Arnd

Arnd Bergmann (8):
usb: phy: move msm_hsusb.h into driver
usb: ehci-msm: call usb_phy_init instead of open-coding it
usb: chipidea: msm: remove open-coded phy init
usb: phy: move TCSR driver into new file
usb: phy: msm: move register definitions into driver
usb: phy: qcom: use bulk regulator interfaces
usb: phy: msm: remove v1p8/v3p3 voltage setting
usb: phy: msm: disable regulator for remove()

drivers/soc/qcom/Kconfig | 6 +
drivers/soc/qcom/Makefile | 1 +
drivers/soc/qcom/qcom-tcsr.c | 57 +++++
drivers/usb/chipidea/ci_hdrc_msm.c | 6 -
drivers/usb/host/ehci-msm.c | 17 +-
drivers/usb/phy/Kconfig | 1 +
drivers/usb/phy/phy-msm-usb.c | 432 ++++++++++++++++++++++++-------------
include/linux/soc/qcom/tcsr.h | 13 ++
include/linux/usb/msm_hsusb.h | 200 -----------------
include/linux/usb/msm_hsusb_hw.h | 77 -------
10 files changed, 367 insertions(+), 443 deletions(-)
create mode 100644 drivers/soc/qcom/qcom-tcsr.c
create mode 100644 include/linux/soc/qcom/tcsr.h
delete mode 100644 include/linux/usb/msm_hsusb.h
delete mode 100644 include/linux/usb/msm_hsusb_hw.h

--
2.7.0
Cc: Andy Gross <andy.gross@xxxxxxxxxx>
Cc: David Brown <david.brown@xxxxxxxxxx>
Cc: Peter Chen <Peter.Chen@xxxxxxx>
Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
Cc: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
Cc: Felipe Balbi <balbi@xxxxxxxxxx>
Cc: Arnd Bergmann <arnd@xxxxxxxx>
Cc: Mark Brown <broonie@xxxxxxxxxx>
Cc: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>
Cc: linux-kernel@xxxxxxxxxxxxxxx
Cc: linux-arm-msm@xxxxxxxxxxxxxxx
Cc: linux-soc@xxxxxxxxxxxxxxx
Cc: linux-usb@xxxxxxxxxxxxxxx