[PATCH v3 0/3] phy: freescale: Add i.MX8qm Mixel LVDS PHY support

Liu Ying
2022-06-20T12:38:45Z

Hi,

This series aims to add Freescale i.MX8qm LVDS PHY driver and dt-binding
support.

The PHY IP is from Mixel, Inc.
The PHY IP supports two LVDS PHYs, thus two LVDS channels.

Each LVDS PHY may work by itself to support a LVDS display device.

When two LVDS PHYs are enabled simultaneously, PHY configurations and reference
clock rate have to be the same since there is only one set of PHY registers.
In this case, the two LVDS PHYs are usually used to support a dual LVDS link
display device, one as master PHY and the other as slave PHY.

Patch 1/3 adds vendor prefix for the PHY IP vendor 'Mixel, Inc.'.
Patch 2/3 adds dt-binding for the PHY IP.
Patch 3/3 adds PHY driver support.

v2->v3:
* Add Krzysztof's A-b tag on patch 1/3.
* Change compatible string from 'mixel,lvds-phy' to
'mixel,28fdsoi-lvds-1250-8ch-tx-pll' in patch 1/3. (Krzysztof)
* Rename dt-binding file to 'fsl,imx8qm-lvds-phy.yaml'. (Krzysztof)

v1->v2:
* Document vendor prefix for the PHY IP vendor 'Mixel, Inc.'. (Krzysztof)
* Set fsl,imx8qm-lvds-phy' and 'mixel,lvds-phy' as compatible's enum. (Krzysztof)
* Skip 'clock-names' property. (Krzysztof)
* Drop 'This patch' from commit messages. (Krzysztof)
* Make dev_err_probe() function calls as one-liners. (Krzysztof)
* Drop unnecessary debug messages. (Krzysztof)

Liu Ying (3):
dt-bindings: vendor-prefixes: Add prefix for Mixel, Inc.
dt-bindings: phy: Add Freescale i.MX8qm Mixel LVDS PHY binding
phy: freescale: Add i.MX8qm Mixel LVDS PHY support

.../bindings/phy/fsl,imx8qm-lvds-phy.yaml | 61 +++
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
drivers/phy/freescale/Kconfig | 9 +
drivers/phy/freescale/Makefile | 1 +
.../phy/freescale/phy-fsl-imx8qm-lvds-phy.c | 440 ++++++++++++++++++
5 files changed, 513 insertions(+)
create mode 100644 Documentation/devicetree/bindings/phy/fsl,imx8qm-lvds-phy.yaml
create mode 100644 drivers/phy/freescale/phy-fsl-imx8qm-lvds-phy.c