OSDN Git Service

drm/msm/dp: add support for DP PLL driver
authorChandan Uddaraju <chandanu@codeaurora.org>
Thu, 27 Aug 2020 21:16:56 +0000 (14:16 -0700)
committerRob Clark <robdclark@chromium.org>
Tue, 15 Sep 2020 17:54:34 +0000 (10:54 -0700)
commit14975cff5b1d076d067ccebf1046be7d2e4fcfbc
tree1d7d1fd5bc27960d2b0cdfcf8e55dcb05bf50f5e
parentc943b4948b5848fc0e07f875edbd35a973879e22
drm/msm/dp: add support for DP PLL driver

Add the needed DP PLL specific files to support
display port interface on msm targets.

The DP driver calls the DP PLL driver registration.
The DP driver sets the link and pixel clock sources.

Changes in v2:
-- Update copyright markings on all relevant files.
-- Use DRM_DEBUG_DP for debug msgs.

Changes in v4:
-- Update the DP link clock provider names

Changes in V5:
-- Addressed comments from Stephen Boyd, Rob clark.

Changes in V6:
-- Remove PLL as separate driver and include PLL as DP module
-- Remove redundant clock parsing from PLL module and make DP as
   clock provider
-- Map USB3 DPCOM and PHY IO using hardcoded register address and
   move mapping form parser to PLL module
-- Access DP PHY modules from same base address using offsets instead of
   deriving base address of individual module from device tree.
-- Remove dp_pll_10nm_util.c and include its functionality in
   dp_pll_10nm.c
-- Introduce new data structures private to PLL module

Changes in v7:

-- Remove DRM_MSM_DP_PLL config from Makefile and Kconfig
-- Remove set_parent from determin_rate API
-- Remove phy_pll_vco_div_clk from parent list
-- Remove flag CLK_DIVIDER_ONE_BASED
-- Remove redundant cell-index property parsing

Changes in v8:

-- Unregister hardware clocks during driver cleanup

Changes in v9:

-- Remove redundant Kconfig option DRM_MSM_DP_10NM_PLL

Changes in v10:

-- Limit 10nm PLL function scope

Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
Signed-off-by: Vara Reddy <varar@codeaurora.org>
Signed-off-by: Tanmay Shah <tanmay@codeaurora.org>
Signed-off-by: Rob Clark <robdclark@chromium.org>
14 files changed:
drivers/gpu/drm/msm/Kconfig
drivers/gpu/drm/msm/Makefile
drivers/gpu/drm/msm/dp/dp_catalog.c
drivers/gpu/drm/msm/dp/dp_display.c
drivers/gpu/drm/msm/dp/dp_display.h
drivers/gpu/drm/msm/dp/dp_parser.c
drivers/gpu/drm/msm/dp/dp_parser.h
drivers/gpu/drm/msm/dp/dp_pll.c [new file with mode: 0644]
drivers/gpu/drm/msm/dp/dp_pll.h [new file with mode: 0644]
drivers/gpu/drm/msm/dp/dp_pll_10nm.c [new file with mode: 0644]
drivers/gpu/drm/msm/dp/dp_pll_private.h [new file with mode: 0644]
drivers/gpu/drm/msm/dp/dp_power.c
drivers/gpu/drm/msm/dp/dp_power.h
drivers/gpu/drm/msm/dp/dp_reg.h