[Freedreno] [PATCH 1/2] drm/msm/dsi: untangle cphy setting from the src pll setting

abhinavk at codeaurora.org abhinavk at codeaurora.org
Tue Oct 19 23:34:01 UTC 2021


On 2021-10-06 13:48, Dmitry Baryshkov wrote:
> Move DPHY/CPHY setting from msm_dsi_host_set_src_pll() to new function
> msm_dsi_host_set_phy_mode().
> 
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>

Just a minor comment, can you also include the part which removes
msm_host->cphy_mode = src_phy->cphy_mode; from msm_dsi_host_set_src_pll
in this change itself so that its clear that you are removing from there
and moving it into a new API?

You can still keep my
Reviewed-by: Abhinav Kumar <abhinavk at codeaurora.org>

once you address this.

> ---
>  drivers/gpu/drm/msm/dsi/dsi.h         | 2 ++
>  drivers/gpu/drm/msm/dsi/dsi_host.c    | 8 ++++++++
>  drivers/gpu/drm/msm/dsi/dsi_manager.c | 3 +++
>  3 files changed, 13 insertions(+)
> 
> diff --git a/drivers/gpu/drm/msm/dsi/dsi.h 
> b/drivers/gpu/drm/msm/dsi/dsi.h
> index b50db91cb8a7..7dfb6d198ca9 100644
> --- a/drivers/gpu/drm/msm/dsi/dsi.h
> +++ b/drivers/gpu/drm/msm/dsi/dsi.h
> @@ -118,6 +118,8 @@ unsigned long msm_dsi_host_get_mode_flags(struct
> mipi_dsi_host *host);
>  struct drm_bridge *msm_dsi_host_get_bridge(struct mipi_dsi_host 
> *host);
>  int msm_dsi_host_register(struct mipi_dsi_host *host, bool 
> check_defer);
>  void msm_dsi_host_unregister(struct mipi_dsi_host *host);
> +void msm_dsi_host_set_phy_mode(struct mipi_dsi_host *host,
> +			struct msm_dsi_phy *src_phy);
>  int msm_dsi_host_set_src_pll(struct mipi_dsi_host *host,
>  			struct msm_dsi_phy *src_phy);
>  void msm_dsi_host_reset_phy(struct mipi_dsi_host *host);
> diff --git a/drivers/gpu/drm/msm/dsi/dsi_host.c
> b/drivers/gpu/drm/msm/dsi/dsi_host.c
> index e269df285136..1ffcd0577e99 100644
> --- a/drivers/gpu/drm/msm/dsi/dsi_host.c
> +++ b/drivers/gpu/drm/msm/dsi/dsi_host.c
> @@ -2224,6 +2224,14 @@ void msm_dsi_host_cmd_xfer_commit(struct
> mipi_dsi_host *host, u32 dma_base,
>  	wmb();
>  }
> 
> +void msm_dsi_host_set_phy_mode(struct mipi_dsi_host *host,
> +	struct msm_dsi_phy *src_phy)
> +{
> +	struct msm_dsi_host *msm_host = to_msm_dsi_host(host);
> +
> +	msm_host->cphy_mode = src_phy->cphy_mode;
> +}
> +
>  int msm_dsi_host_set_src_pll(struct mipi_dsi_host *host,
>  	struct msm_dsi_phy *src_phy)
>  {
> diff --git a/drivers/gpu/drm/msm/dsi/dsi_manager.c
> b/drivers/gpu/drm/msm/dsi/dsi_manager.c
> index c41d39f5b7cf..49a0a0841487 100644
> --- a/drivers/gpu/drm/msm/dsi/dsi_manager.c
> +++ b/drivers/gpu/drm/msm/dsi/dsi_manager.c
> @@ -77,6 +77,7 @@ static int dsi_mgr_setup_components(int id)
>  			return ret;
> 
>  		msm_dsi_phy_set_usecase(msm_dsi->phy, MSM_DSI_PHY_STANDALONE);
> +		msm_dsi_host_set_phy_mode(msm_dsi->host, msm_dsi->phy);
>  		ret = msm_dsi_host_set_src_pll(msm_dsi->host, msm_dsi->phy);
>  	} else if (!other_dsi) {
>  		ret = 0;
> @@ -104,6 +105,8 @@ static int dsi_mgr_setup_components(int id)
>  					MSM_DSI_PHY_MASTER);
>  		msm_dsi_phy_set_usecase(clk_slave_dsi->phy,
>  					MSM_DSI_PHY_SLAVE);
> +		msm_dsi_host_set_phy_mode(msm_dsi->host, msm_dsi->phy);
> +		msm_dsi_host_set_phy_mode(other_dsi->host, other_dsi->phy);
>  		ret = msm_dsi_host_set_src_pll(msm_dsi->host, clk_master_dsi->phy);
>  		if (ret)
>  			return ret;


More information about the Freedreno mailing list