disp: msm: dsi: add ctrl and phy version support for Kalama
Add dsi ctrl version 2.7 and dsi phy version 5.2 support for Kalama hardware. Change-Id: Ia7b4c8a2e1579458f114e466de8b24855e9251ce Signed-off-by: Jeykumar Sankaran <jsanka@codeaurora.org>
This commit is contained in:
@@ -72,6 +72,7 @@ static void dsi_catalog_cmn_init(struct dsi_ctrl_hw *ctrl,
|
||||
case DSI_CTRL_VERSION_2_4:
|
||||
case DSI_CTRL_VERSION_2_5:
|
||||
case DSI_CTRL_VERSION_2_6:
|
||||
case DSI_CTRL_VERSION_2_7:
|
||||
ctrl->ops.phy_reset_config = dsi_ctrl_hw_22_phy_reset_config;
|
||||
ctrl->ops.config_clk_gating = dsi_ctrl_hw_22_config_clk_gating;
|
||||
ctrl->ops.setup_lane_map = dsi_ctrl_hw_22_setup_lane_map;
|
||||
@@ -142,6 +143,7 @@ int dsi_catalog_ctrl_setup(struct dsi_ctrl_hw *ctrl,
|
||||
break;
|
||||
case DSI_CTRL_VERSION_2_5:
|
||||
case DSI_CTRL_VERSION_2_6:
|
||||
case DSI_CTRL_VERSION_2_7:
|
||||
ctrl->widebus_support = true;
|
||||
ctrl->phy_isolation_enabled = phy_isolation_enabled;
|
||||
dsi_catalog_cmn_init(ctrl, version);
|
||||
@@ -265,6 +267,7 @@ int dsi_catalog_phy_setup(struct dsi_phy_hw *phy,
|
||||
case DSI_PHY_VERSION_4_1:
|
||||
case DSI_PHY_VERSION_4_2:
|
||||
case DSI_PHY_VERSION_4_3:
|
||||
case DSI_PHY_VERSION_5_2:
|
||||
dsi_catalog_phy_4_0_init(phy);
|
||||
break;
|
||||
default:
|
||||
|
@@ -54,6 +54,7 @@ static const enum dsi_ctrl_version dsi_ctrl_v2_3 = DSI_CTRL_VERSION_2_3;
|
||||
static const enum dsi_ctrl_version dsi_ctrl_v2_4 = DSI_CTRL_VERSION_2_4;
|
||||
static const enum dsi_ctrl_version dsi_ctrl_v2_5 = DSI_CTRL_VERSION_2_5;
|
||||
static const enum dsi_ctrl_version dsi_ctrl_v2_6 = DSI_CTRL_VERSION_2_6;
|
||||
static const enum dsi_ctrl_version dsi_ctrl_v2_7 = DSI_CTRL_VERSION_2_7;
|
||||
|
||||
static const struct of_device_id msm_dsi_of_match[] = {
|
||||
{
|
||||
@@ -76,6 +77,10 @@ static const struct of_device_id msm_dsi_of_match[] = {
|
||||
.compatible = "qcom,dsi-ctrl-hw-v2.6",
|
||||
.data = &dsi_ctrl_v2_6,
|
||||
},
|
||||
{
|
||||
.compatible = "qcom,dsi-ctrl-hw-v2.7",
|
||||
.data = &dsi_ctrl_v2_7,
|
||||
},
|
||||
{}
|
||||
};
|
||||
|
||||
@@ -693,6 +698,7 @@ static int dsi_ctrl_init_regmap(struct platform_device *pdev,
|
||||
case DSI_CTRL_VERSION_2_4:
|
||||
case DSI_CTRL_VERSION_2_5:
|
||||
case DSI_CTRL_VERSION_2_6:
|
||||
case DSI_CTRL_VERSION_2_7:
|
||||
ptr = msm_ioremap(pdev, "disp_cc_base", ctrl->name);
|
||||
if (IS_ERR(ptr)) {
|
||||
DSI_CTRL_ERR(ctrl, "disp_cc base address not found for\n");
|
||||
|
@@ -49,6 +49,7 @@
|
||||
* @DSI_CTRL_VERSION_2_4: DSI host v2.4 controller
|
||||
* @DSI_CTRL_VERSION_2_5: DSI host v2.5 controller
|
||||
* @DSI_CTRL_VERSION_2_6: DSI host v2.6 controller
|
||||
* @DSI_CTRL_VERSION_2_7: DSI host v2.7 controller
|
||||
* @DSI_CTRL_VERSION_MAX: max version
|
||||
*/
|
||||
enum dsi_ctrl_version {
|
||||
@@ -58,6 +59,7 @@ enum dsi_ctrl_version {
|
||||
DSI_CTRL_VERSION_2_4,
|
||||
DSI_CTRL_VERSION_2_5,
|
||||
DSI_CTRL_VERSION_2_6,
|
||||
DSI_CTRL_VERSION_2_7,
|
||||
DSI_CTRL_VERSION_MAX
|
||||
};
|
||||
|
||||
|
@@ -71,6 +71,14 @@ static const struct dsi_ver_spec_info dsi_phy_v4_3 = {
|
||||
.timing_cfg_count = 14,
|
||||
};
|
||||
|
||||
static const struct dsi_ver_spec_info dsi_phy_v5_2 = {
|
||||
.version = DSI_PHY_VERSION_5_2,
|
||||
.lane_cfg_count = 4,
|
||||
.strength_cfg_count = 2,
|
||||
.regulator_cfg_count = 0,
|
||||
.timing_cfg_count = 14,
|
||||
};
|
||||
|
||||
static const struct of_device_id msm_dsi_phy_of_match[] = {
|
||||
{ .compatible = "qcom,dsi-phy-v3.0",
|
||||
.data = &dsi_phy_v3_0,},
|
||||
@@ -82,6 +90,8 @@ static const struct of_device_id msm_dsi_phy_of_match[] = {
|
||||
.data = &dsi_phy_v4_2,},
|
||||
{ .compatible = "qcom,dsi-phy-v4.3",
|
||||
.data = &dsi_phy_v4_3,},
|
||||
{ .compatible = "qcom,dsi-phy-v5.2",
|
||||
.data = &dsi_phy_v5_2,},
|
||||
{}
|
||||
};
|
||||
|
||||
|
@@ -34,6 +34,7 @@
|
||||
* @DSI_PHY_VERSION_4_1: 7nm
|
||||
* @DSI_PHY_VERSION_4_2: 5nm
|
||||
* @DSI_PHY_VERSION_4_3: 5nm
|
||||
* @DSI_PHY_VERSION_5_2: 4nm
|
||||
* @DSI_PHY_VERSION_MAX:
|
||||
*/
|
||||
enum dsi_phy_version {
|
||||
@@ -43,6 +44,7 @@ enum dsi_phy_version {
|
||||
DSI_PHY_VERSION_4_1, /* 7nm */
|
||||
DSI_PHY_VERSION_4_2, /* 5nm */
|
||||
DSI_PHY_VERSION_4_3, /* 5nm */
|
||||
DSI_PHY_VERSION_5_2, /* 4nm */
|
||||
DSI_PHY_VERSION_MAX
|
||||
};
|
||||
|
||||
|
@@ -994,6 +994,7 @@ int dsi_phy_timing_calc_init(struct dsi_phy_hw *phy,
|
||||
case DSI_PHY_VERSION_4_1:
|
||||
case DSI_PHY_VERSION_4_2:
|
||||
case DSI_PHY_VERSION_4_3:
|
||||
case DSI_PHY_VERSION_5_2:
|
||||
ops->get_default_phy_params =
|
||||
dsi_phy_hw_v4_0_get_default_phy_params;
|
||||
ops->calc_clk_zero =
|
||||
|
Reference in New Issue
Block a user