Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1c5c784d authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "drm/msm/dsi-staging: add force_clk_lane_hs support" into dev/msm-4.14-display

parents 15c45912 ca9b6f1b
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -127,6 +127,7 @@ Optional properties:
					turns off PHY pmic power supply, phy ldo and DSI Lane ldo during
					idle screen (footswitch control off) when this property is enabled.
- qcom,dsi-phy-regulator-min-datarate-bps:  Minimum per lane data rate (bps) to turn on PHY regulator.
- qcom,panel-force-clock-lane-hs:	A boolean property indicates that panel needs clock lanes in HS mode only

[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
[2] Documentation/devicetree/bindings/graph.txt
@@ -237,4 +238,5 @@ Example:
		qcom,dsi-phy-regulator-ldo-mode;
		qcom,panel-allow-phy-poweroff;
		qcom,dsi-phy-regulator-min-datarate-bps = <1200000000>;
		qcom,panel-force-clock-lane-hs;
	};
+5 −0
Original line number Diff line number Diff line
@@ -455,6 +455,11 @@ void dsi_ctrl_hw_cmn_video_engine_setup(struct dsi_ctrl_hw *ctrl,
	/* Disable Timing double buffering */
	DSI_W32(ctrl, DSI_DSI_TIMING_DB_MODE, 0x0);

	if (cfg->force_clk_lane_hs) {
		reg = DSI_R32(ctrl, DSI_LANE_CTRL);
		reg |= BIT(28);
		DSI_W32(ctrl, DSI_LANE_CTRL, reg);
	}

	pr_debug("[DSI_%d] Video engine setup done\n", ctrl->index);
}
+1 −0
Original line number Diff line number Diff line
@@ -451,6 +451,7 @@ struct dsi_video_engine_cfg {
	bool hsa_lp11_en;
	bool eof_bllp_lp11_en;
	bool bllp_lp11_en;
	bool force_clk_lane_hs;
	enum dsi_video_traffic_mode traffic_mode;
	u32 vc_id;
};
+3 −0
Original line number Diff line number Diff line
@@ -1193,6 +1193,9 @@ static int dsi_panel_parse_video_host_config(struct dsi_video_engine_cfg *cfg,
	cfg->bllp_lp11_en = utils->read_bool(utils->data,
					"qcom,mdss-dsi-bllp-power-mode");

	cfg->force_clk_lane_hs = of_property_read_bool(utils->data,
					"qcom,mdss-dsi-force-clock-lane-hs");

	traffic_mode = utils->get_property(utils->data,
				       "qcom,mdss-dsi-traffic-mode",
				       NULL);
+3 −0
Original line number Diff line number Diff line
@@ -311,6 +311,9 @@ static int dsi_phy_settings_init(struct platform_device *pdev,
			"qcom,dsi-phy-regulator-min-datarate-bps",
			&phy->regulator_min_datarate_bps);

	phy->cfg.force_clk_lane_hs = of_property_read_bool(pdev->dev.of_node,
			"qcom,panel-force-clock-lane-hs");

	return 0;
err:
	lane->count_per_lane = 0;
Loading