summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/msm/dsi/dsi_cfg.h
diff options
context:
space:
mode:
authorSibi Sankar <sibis@codeaurora.org>2018-05-29 17:20:31 +0300
committerRob Clark <robdclark@gmail.com>2018-07-25 14:51:04 +0300
commite18177cc572939ad9526bae141fc4c8f5f006de4 (patch)
tree425e1821bc38b9e2b68aeb27597b0c4c769b97ff /drivers/gpu/drm/msm/dsi/dsi_cfg.h
parent6e8bed6a3e2fd6f1e82ea9b1f705bbc82060a2b7 (diff)
downloadlinux-e18177cc572939ad9526bae141fc4c8f5f006de4.tar.xz
drm/msm/dsi: add dsi host helper functions support
Add dsi host helper functions support for DSI v2 and DSI 6G 1.x controllers that are under version checks Signed-off-by: Sibi Sankar <sibis@codeaurora.org> Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to 'drivers/gpu/drm/msm/dsi/dsi_cfg.h')
-rw-r--r--drivers/gpu/drm/msm/dsi/dsi_cfg.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/gpu/drm/msm/dsi/dsi_cfg.h b/drivers/gpu/drm/msm/dsi/dsi_cfg.h
index 9cfdcf1c95d5..a795a062b779 100644
--- a/drivers/gpu/drm/msm/dsi/dsi_cfg.h
+++ b/drivers/gpu/drm/msm/dsi/dsi_cfg.h
@@ -40,10 +40,22 @@ struct msm_dsi_config {
const int num_dsi;
};
+struct msm_dsi_host_cfg_ops {
+ int (*link_clk_enable)(struct msm_dsi_host *msm_host);
+ void (*link_clk_disable)(struct msm_dsi_host *msm_host);
+ int (*clk_init_ver)(struct msm_dsi_host *msm_host);
+ int (*tx_buf_alloc)(struct msm_dsi_host *msm_host, int size);
+ void* (*tx_buf_get)(struct msm_dsi_host *msm_host);
+ void (*tx_buf_put)(struct msm_dsi_host *msm_host);
+ int (*dma_base_get)(struct msm_dsi_host *msm_host, uint64_t *iova);
+ int (*calc_clk_rate)(struct msm_dsi_host *msm_host);
+};
+
struct msm_dsi_cfg_handler {
u32 major;
u32 minor;
const struct msm_dsi_config *cfg;
+ const struct msm_dsi_host_cfg_ops *ops;
};
const struct msm_dsi_cfg_handler *msm_dsi_cfg_get(u32 major, u32 minor);