[PATCH RFC v3 0/5] phy: hisi-inno-phy: add support for hi3798mv200-usb2-phy

From: Yang Xiwen via B4 Relay
Date: Mon Feb 19 2024 - 16:28:22 EST


This should be considered a dirty hack. The proper solution would be
extracting write_reg logic to a separate regmap driver. Leaving only
"write BIT(2) to address 0x6" to the PHY driver.

The initial commit is already doing things wrong. The following patches
adding hi3798mv100 support is also very confusing. The name of the
enumeration "PHY_TYPE_x" is very misleading as if it's the phy which is
different across SoCs. But actually it's the bus (i.e. how to write to a
given address) which is different, not the PHY.

Signed-off-by: Yang Xiwen <forbidden405@xxxxxxxxxxx>
---
Changes in v3:
- address a few binding issue mistakenly missing in v2 (Krzysztof Kozlowski)
- add msg about hi3798mv100 being added to compatible list
- remove minItems for compatible
- remove | for reg:
- fix existing dts (hi3798cv200.dtsi) due to binding change.
- Link to v2: https://lore.kernel.org/r/20240217-inno-phy-v2-0-3bf7e87b0e9e@xxxxxxxxxxx

Changes in v2:
- rewrite commit msg to show why hisilicon,hi3798mv100-usb2-phy is added during YAML convertion.
- split required: to multiple line
- add allOf to wrap if:
- remove perictrl wrapper and the second phy in the example
- tested the binding both for mv200 and cv200 dts. fix some silly errors.
- remove Pengcheng Li from To:
Above all are suggested by Krzysztof
- use reset_control_array_* APIs to ensure all resets are controlled
- Link to v1: https://lore.kernel.org/r/20240216-inno-phy-v1-0-1ab912f0533f@xxxxxxxxxxx

---
Yang Xiwen (5):
dt-bindings: phy: hisi-inno-usb2: convert to YAML
arm64: dts: hi3798cv200: add hisilicon,inno-usb2-phy to compatible list
phy: hisilicon: hisi-inno-phy: enable clocks for every ports
phy: hisilicon: hisi-inno-phy: add support for Hi3798MV200 INNO PHY
dt-bindings: phy: hisi-inno-usb2: add compatible of hisilicon,hi3798mv200-usb2-phy

.../bindings/phy/hisilicon,inno-usb2-phy.yaml | 123 +++++++++++++++++++++
.../devicetree/bindings/phy/phy-hisi-inno-usb2.txt | 71 ------------
arch/arm64/boot/dts/hisilicon/hi3798cv200.dtsi | 6 +-
drivers/phy/hisilicon/phy-hisi-inno-usb2.c | 69 +++++++-----
4 files changed, 169 insertions(+), 100 deletions(-)
---
base-commit: 8d3dea210042f54b952b481838c1e7dfc4ec751d
change-id: 20240216-inno-phy-a2d872f6b74b

Best regards,
--
Yang Xiwen <forbidden405@xxxxxxxxxxx>