[PATCH v8 0/3] phy: intel: Add Keem Bay eMMC PHY support

From: Wan Ahmad Zainie
Date: Tue Sep 01 2020 - 00:43:57 EST


Hi.

The first patch is added to rename rename
phy-intel-{combo,emmc}.c to phy-intel-lgm-{combo,emmc}.c..

The second patch is to document DT bindings for Keem Bay eMMC PHY.

The the third is the driver file, loosely based on phy-rockchip-emmc.c
and phy-intel-emmc.c. The latter is not being reused as there are
quite a number of differences i.e. registers offset, supported clock
rates, bitfield to set.

The patch was tested with Keem Bay evaluation module board.

Thank you.

Best regards,
Zainie

Changes since v7:
- Add Reviewed-by tag to 1st (Vadivel) and 3rd patch (Andy).
- In 3rd patch,
- remove maskval and use FIELD_PREP instead,
- add <linux/bitfield.h> header,
- use return dev_err_probe(...) for devm_phy_create(...),
- rearrange depends on in Kconfig file,

Changes since v6:
- Add new patch to rename phy-intel-{combo,emmc}.c to
phy-intel-lgm-{combo,emmc}.c.
- Add Reviewed-by: Rob Herring <robh@xxxxxxxxxx> tag to 2nd patch.
- In 3rd patch,
- add and use generic helper to update register bits,
- end module name with .ko in Kconfig help.

Changes since resend v5:
- In keembay_emmc_phy_power(), remove redundant return ret;.

Resend v5:
- Include missing changes done for phy-keembay-emmc.c (See Changes since
v3)

Changes since v4:
- In Kconfig file, add depends on ARM64 || COMPILE_TEST and
depends on OF && HAS_IOMEM.
- In Kconfig file, reword the help section to be more verbose.

Changes since v3:
- Exit keembay_emmc_phy_power() with return ret;.
- In keembay_emmc_phy_init(), use PTR_ERR_OR_ZERO(...).
- In keembay_emmc_phy_probe(), devm_regmap_init_mmio(...) in single
line.

Changes since v2:
- Modify DT example to use single cell for address and size.

Changes since v1:
- Rework phy-keembay-emmc.c to make it similar to phy-intel-emmc.c.
- Use regmap_mmio, and remove reference to intel,syscon.
- Use node name phy@....
- Update license i.e. use dual license.


Wan Ahmad Zainie (3):
phy: intel: Rename phy-intel to phy-intel-lgm
dt-bindings: phy: intel: Add Keem Bay eMMC PHY bindings
phy: intel: Add Keem Bay eMMC PHY support

.../bindings/phy/intel,keembay-emmc-phy.yaml | 44 +++
drivers/phy/intel/Kconfig | 22 +-
drivers/phy/intel/Makefile | 5 +-
drivers/phy/intel/phy-intel-keembay-emmc.c | 307 ++++++++++++++++++
...hy-intel-combo.c => phy-intel-lgm-combo.c} | 0
...{phy-intel-emmc.c => phy-intel-lgm-emmc.c} | 0
6 files changed, 371 insertions(+), 7 deletions(-)
create mode 100644 Documentation/devicetree/bindings/phy/intel,keembay-emmc-phy.yaml
create mode 100644 drivers/phy/intel/phy-intel-keembay-emmc.c
rename drivers/phy/intel/{phy-intel-combo.c => phy-intel-lgm-combo.c} (100%)
rename drivers/phy/intel/{phy-intel-emmc.c => phy-intel-lgm-emmc.c} (100%)

--
2.17.1