[v5,0/6] A3700 USB UTMI PHY support
mbox series

Message ID 20190129093635.4321-1-miquel.raynal@bootlin.com
Headers show
Series
  • A3700 USB UTMI PHY support
Related show

Message

Miquel Raynal Jan. 29, 2019, 9:36 a.m. UTC
USB2 on A3700 only works because U-Boot initializes the UTMI PHYs (one
wired to each USB controller). While there is no issue with regular
use, this architecture does not allow suspend to RAM to work as the
PHYs must be re-initialized at resume. In order to support this
feature, this series adds a UTMI PHY driver for the A3700 SoC.

The A3700 device tree is updated to reference the PHYs.

Thanks,
Miquèl

Changes since v4:
=================
* Drop USB patches as they have been sent in a separate series. No
  real functional changes since the v4 though, kind of a resend of the
  PHY patches from the "A3700 USB S2RAM support" series.

Changes since v3:
=================
* Bindings: as suggested by Gregory and Rob, used the "-misc" suffix
  instead of "-miscellaneous" and prefixed the compatible with
  "armada-3700" to follow what has been used for the other IPs of the
  same SoC (and added Rob's ack).

Changes since v2:
=================
* Typos
* UTMI PHY bindings:
  > New name for the USB2 host/PHY syscons (+ changes in the DT).
  > Clearly state that the PHYs are different between OTG and
    host-only controllers.
* UTMI PHY driver:
  > Use GENMASK macro.
  > Removed useless checks on driver data retrieval.
  > Dropped the empty ->remove() hook.
  > Updated the licence macro to match the SPDX tag.
  > Used the of_device_get_match_data() helper.
  > Removed the use of a local variable in the ->probe() for the
    driver's operations.
  > Fixed the driver co-author: Igal, not Evan.

Changes since v1:
=================
* Add UTMI PHY driver/bindings/DT changes to bring S2RAM support to
  both USB ports available on the A3700 SoC.
* Rebased on top of v5.0-rc1.


Miquel Raynal (6):
  phy: add A3700 UTMI PHY driver
  dt-bindings: phy: mvebu-utmi: add UTMI PHY bindings
  MAINTAINERS: phy: fill Armada 3700 PHY drivers entry
  ARM64: dts: marvell: armada-37xx: fix USB2 memory region
  ARM64: dts: marvell: armada-37xx: declare USB2 UTMI PHYs
  ARM64: dts: marvell: armada-37xx: link USB hosts with their PHYs

 .../bindings/phy/phy-mvebu-utmi.txt           |  38 +++
 MAINTAINERS                                   |   4 +-
 arch/arm64/boot/dts/marvell/armada-37xx.dtsi  |  34 ++-
 drivers/phy/marvell/Kconfig                   |   9 +
 drivers/phy/marvell/Makefile                  |   1 +
 drivers/phy/marvell/phy-mvebu-a3700-utmi.c    | 278 ++++++++++++++++++
 6 files changed, 362 insertions(+), 2 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/phy/phy-mvebu-utmi.txt
 create mode 100644 drivers/phy/marvell/phy-mvebu-a3700-utmi.c

Comments

Kishon Vijay Abraham I Feb. 6, 2019, 11:34 a.m. UTC | #1
On 29/01/19 3:06 PM, Miquel Raynal wrote:
> USB2 on A3700 only works because U-Boot initializes the UTMI PHYs (one
> wired to each USB controller). While there is no issue with regular
> use, this architecture does not allow suspend to RAM to work as the
> PHYs must be re-initialized at resume. In order to support this
> feature, this series adds a UTMI PHY driver for the A3700 SoC.
> 
> The A3700 device tree is updated to reference the PHYs.

merged the PHY patches.

Thanks
Kishon
> 
> Thanks,
> Miquèl
> 
> Changes since v4:
> =================
> * Drop USB patches as they have been sent in a separate series. No
>   real functional changes since the v4 though, kind of a resend of the
>   PHY patches from the "A3700 USB S2RAM support" series.
> 
> Changes since v3:
> =================
> * Bindings: as suggested by Gregory and Rob, used the "-misc" suffix
>   instead of "-miscellaneous" and prefixed the compatible with
>   "armada-3700" to follow what has been used for the other IPs of the
>   same SoC (and added Rob's ack).
> 
> Changes since v2:
> =================
> * Typos
> * UTMI PHY bindings:
>   > New name for the USB2 host/PHY syscons (+ changes in the DT).
>   > Clearly state that the PHYs are different between OTG and
>     host-only controllers.
> * UTMI PHY driver:
>   > Use GENMASK macro.
>   > Removed useless checks on driver data retrieval.
>   > Dropped the empty ->remove() hook.
>   > Updated the licence macro to match the SPDX tag.
>   > Used the of_device_get_match_data() helper.
>   > Removed the use of a local variable in the ->probe() for the
>     driver's operations.
>   > Fixed the driver co-author: Igal, not Evan.
> 
> Changes since v1:
> =================
> * Add UTMI PHY driver/bindings/DT changes to bring S2RAM support to
>   both USB ports available on the A3700 SoC.
> * Rebased on top of v5.0-rc1.
> 
> 
> Miquel Raynal (6):
>   phy: add A3700 UTMI PHY driver
>   dt-bindings: phy: mvebu-utmi: add UTMI PHY bindings
>   MAINTAINERS: phy: fill Armada 3700 PHY drivers entry
>   ARM64: dts: marvell: armada-37xx: fix USB2 memory region
>   ARM64: dts: marvell: armada-37xx: declare USB2 UTMI PHYs
>   ARM64: dts: marvell: armada-37xx: link USB hosts with their PHYs
> 
>  .../bindings/phy/phy-mvebu-utmi.txt           |  38 +++
>  MAINTAINERS                                   |   4 +-
>  arch/arm64/boot/dts/marvell/armada-37xx.dtsi  |  34 ++-
>  drivers/phy/marvell/Kconfig                   |   9 +
>  drivers/phy/marvell/Makefile                  |   1 +
>  drivers/phy/marvell/phy-mvebu-a3700-utmi.c    | 278 ++++++++++++++++++
>  6 files changed, 362 insertions(+), 2 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/phy/phy-mvebu-utmi.txt
>  create mode 100644 drivers/phy/marvell/phy-mvebu-a3700-utmi.c
>