[PATCH v6 00/14] phy: rockchip: samsung-hdptx: Support high color depth management

From: Cristian Ciocaltea
Date: Tue Mar 18 2025 - 08:37:06 EST


This series relies on the new HDMI PHY configuration options [1] (patch
included here for convenience) to provide high color depth management
for rockchip-samsung-hdptx, and to introduce a proper solution to setup
the TMDS character rate on this PHY.

[1] https://lore.kernel.org/lkml/d1cff6c03ec3732d2244022029245ab2d954d997.1734340233.git.Sandor.yu@xxxxxxx/

Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@xxxxxxxxxxxxx>
---
Changes in v6:
- Collected R-b tags from Dmitry
- Updated commit description for "phy: rockchip: samsung-hdptx: Fix
clock ratio setup"
- Added new patch "phy: rockchip: samsung-hdptx: Do no set
rk_hdptx_phy->rate in case of errors"
- Replaced some "unsigned long" and "u32" types with "unsigned long
long" in "phy: rockchip: samsung-hdptx: Avoid Hz<->hHz unit conversion
overhead" to match the tmds_char_rate type (Dmitry)
- Added new patch "phy: rockchip: samsung-hdptx: Rename ambiguous
rk_hdptx_phy->rate", originally part of "phy: rockchip: samsung-hdptx:
Optimize internal rate handling" (Dmitry)
- Rebased series onto next-20250317
- Link to v5: https://lore.kernel.org/r/20250308-phy-sam-hdptx-bpc-v5-0-35087287f9d1@xxxxxxxxxxxxx

Changes in v5:
- Moved the patch eliminating the unnecessary and rather confusing
Hz<->hHz unit conversion before all the others adding new content
- Moved the patch adding high color depth management to the last
position, so that it follows the internal rate handling optimization
- Amended description for a few patches to improve clarity
- Performed some trivial refactoring in some cases while dealing with
rebase conflicts
- Link to v4: https://lore.kernel.org/r/20250304-phy-sam-hdptx-bpc-v4-0-8657847c13f7@xxxxxxxxxxxxx

Changes in v4:
- Added patches to drop unnecessary phy_cfg & cfgs driver data
- Embedded struct phy_configure_opts_hdmi in driver data (Dmitry)
- Added new patch to provide config params validation support
- Provided a patch to restrict altering TMDS char rate via CCF (Dmitry)
- Made a bunch of small tweaks here and there
- Link to v3: https://lore.kernel.org/r/20250223-phy-sam-hdptx-bpc-v3-0-66a5c8e68327@xxxxxxxxxxxxx

Changes in v3:
- Rebased series onto next-20250221 and fixed several conflicts due to
the recently introduced eDP support
- Link to v2: https://lore.kernel.org/r/20241212-phy-sam-hdptx-bpc-v2-0-57e672c7c7c4@xxxxxxxxxxxxx

Changes in v2:
- Added new patches providing a bug fix and several driver cleanups and
improvements
- Link to v1: https://lore.kernel.org/r/20241207-phy-sam-hdptx-bpc-v1-0-03c2e4d6d797@xxxxxxxxxxxxx

---
Cristian Ciocaltea (13):
phy: hdmi: Add color depth configuration
phy: rockchip: samsung-hdptx: Fix clock ratio setup
phy: rockchip: samsung-hdptx: Do no set rk_hdptx_phy->rate in case of errors
phy: rockchip: samsung-hdptx: Drop unused struct lcpll_config
phy: rockchip: samsung-hdptx: Drop unused phy_cfg driver data
phy: rockchip: samsung-hdptx: Drop superfluous cfgs driver data
phy: rockchip: samsung-hdptx: Avoid Hz<->hHz unit conversion overhead
phy: rockchip: samsung-hdptx: Setup TMDS char rate via phy_configure_opts_hdmi
phy: rockchip: samsung-hdptx: Provide config params validation support
phy: rockchip: samsung-hdptx: Restrict altering TMDS char rate via CCF
phy: rockchip: samsung-hdptx: Rename ambiguous rk_hdptx_phy->rate
phy: rockchip: samsung-hdptx: Optimize internal rate handling
phy: rockchip: samsung-hdptx: Add high color depth management

Sandor Yu (1):
phy: Add HDMI configuration options

drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c | 292 +++++++++++++---------
include/linux/phy/phy-hdmi.h | 21 ++
include/linux/phy/phy.h | 7 +-
3 files changed, 202 insertions(+), 118 deletions(-)
---
base-commit: e94bd4ec45ac156616da285a0bf03056cd7430fc
change-id: 20241206-phy-sam-hdptx-bpc-3b05c6276fd7