Re: [PATCH v4 00/13] PHY: Update Cadence Torrent PHY driver with reconfiguration
From: Kishon Vijay Abraham I <hidden>
Date: 2020-03-04 12:01:36
Also in:
lkml
On 06/02/20 11:40 am, Yuti Amonkar wrote:
This patch series applies to the Cadence SD0801 PHY driver. Cadence SD0801 PHY is also known as Torrent PHY. Torrent PHY is a multiprotocol PHY supporting PHY configurations including Display Port, USB and PCIe. This patch series converts SD0801 PHY driver for DisplayPort into a generic Torrent PHY driver, updates DisplayPort functionality with reconfiguration support and finally adds platform dependent initialization for TI J7 SoCs.
merged now, Thanks! -Kishon
The patch series has following patches which applies the changes in the below sequence 1. 001-dt-bindings-phy-Remove-Cadence-MHDP-PHY-dt-binding This patch removes the MHDP PHY binding. 2. 002-dt-bindings-phy-Add-Cadence-MHDP-PHY-bindings-in-YAML-format. This patch converts the MHDP PHY device tree bindings to yaml schemas 3. 003-phy-cadence-dp-Rename-to-phy-Cadence-Torrent Rename Cadence DP PHY driver from phy-cadence-dp to phy-cadence-torrent 4. 004-phy-cadence-torrent-Adopt-Torrent-nomenclature Update private data structures, module descriptions and functions prefix to Torrent 5. 005-phy-cadence-torrent-Add-wrapper-for-PHY-register-access Add a wrapper function to write Torrent PHY registers to improve code readability. 6. 006-phy-cadence-torrent-Add-wrapper-for-DPTX-register-access Add wrapper functions to read, write DisplayPort specific PHY registers to improve code readability. 7. 007-phy-cadence-torrent-Refactor-code-for-reusability Add separate function to set different power state values. Use of uniform polling timeout value. Check return values of functions for error handling. 8. 008-phy-cadence-torrent-Add-19.2-MHz-reference-clock-support Add configuration functions for 19.2 MHz reference clock support. Add register configurations for SSC support. 9. 009-phy-cadence-torrent-Implement-phy-configure-APIs Add PHY configuration APIs for link rate, number of lanes, voltage swing and pre-emphasis values. 10. 010-phy-cadence-torrent-Use-regmap-to-read-and-write-Torrent-PHY-registers Use regmap for accessing Torrent PHY registers. Update register offsets. Abstract address calculation using regmap APIs. 11. 011-phy: cadence-torrent-Use-regmap-to-read-and-write-DPTX-PHY-registers Use regmap to read and write DPTX specific PHY registers. 12. 012-phy-cadence-torrent-Add-platform-dependent-initialization-structure Add platform dependent initialization data for Torrent PHY used in TI's J721E SoC. 13. 013-phy: cadence-torrent-Add-support-for-subnode-bindings Implement single link subnode support to the phy driver. Version History: v4: - Add separate patch to remove old binding. - Add new patch to add new binding in YAML format. - Squashed "dt-bindings: phy: phy-cadence-torrent: Add platform dependent compatible string" with "dt-bindings: phy: Add Cadence MHDP PHY bindings in YAML format". - Added SPDX dual license tag to YAML bindings. - Updated resets property description and removed reset-names property. - Added enum to cdns,phy-type property adding all the currently known phy-type values. - Updated the child node resets property to support one reset per lane. - Added default values for cdns,num-lanes and cdns,max-bit-rate properties. v3: - Removed "Add clock binding" patch from the series and merged it with "Convert-Cadence-MHDP-PHY-bindings-to-YAML" patch. - Added reset and reset-names properties to YAML file. - Updated dptx_phy reg entry as optional in YAML. - Renamed reg-names from sd0801_phy to torrent_phy. - Added subnode property for each group of PHY lanes based on PHY type to the YAML. Renamed num_lanes and max_bit_rate to cdns,num-lanes and cdns,max-bit-rate and moved it to subnode properties. - Added cdns,phy-type property in subnode. Currently cdns,phy-type supports only PHY_TYPE_DP. - Added subnode instance structure to the driver in reference to the dts change. - Updated functions to read properties from child node instead of parent node. - Added num_lanes as argument to the cdns_torrent_dp_run function. v2: - Remove patch [1] from this series and send for a separate review. - Use enum in compatible property of YAML file. - Remove quotes in clock-names property "refclk" -> refclk in YAML file. - Add reg-names property to YAML file - Add additionalProperties:false to YAML file. - No change in the driver code. This patch series is dependent on PHY DisplayPort configuration patch [1]. [1] https://lkml.org/lkml/2020/1/6/279 Swapnil Jakhade (10): phy: cadence-torrent: Adopt Torrent nomenclature phy: cadence-torrent: Add wrapper for PHY register access phy: cadence-torrent: Add wrapper for DPTX register access phy: cadence-torrent: Refactor code for reusability phy: cadence-torrent: Add 19.2 MHz reference clock support phy: cadence-torrent: Implement PHY configure APIs phy: cadence-torrent: Use regmap to read and write Torrent PHY registers phy: cadence-torrent: Use regmap to read and write DPTX PHY registers phy: cadence-torrent: Add platform dependent initialization structure phy: cadence-torrent: Add support for subnode bindings Yuti Amonkar (3): dt-bindings: phy: Remove Cadence MHDP PHY dt binding dt-bindings: phy: Add Cadence MHDP PHY bindings in YAML format. phy: cadence-dp: Rename to phy-cadence-torrent .../bindings/phy/phy-cadence-dp.txt | 30 - .../bindings/phy/phy-cadence-torrent.yaml | 143 ++ drivers/phy/cadence/Kconfig | 6 +- drivers/phy/cadence/Makefile | 2 +- drivers/phy/cadence/phy-cadence-dp.c | 541 ----- drivers/phy/cadence/phy-cadence-torrent.c | 1944 +++++++++++++++++ 6 files changed, 2091 insertions(+), 575 deletions(-) delete mode 100644 Documentation/devicetree/bindings/phy/phy-cadence-dp.txt create mode 100644 Documentation/devicetree/bindings/phy/phy-cadence-torrent.yaml delete mode 100644 drivers/phy/cadence/phy-cadence-dp.c create mode 100644 drivers/phy/cadence/phy-cadence-torrent.c