Эх сурвалжийг харах

video: driver: reset video_cc_mvs0_clk_src clock_rate

Reset video_cc_mvs0_clk_src value to resolve MMRM high video
clock projection issue.

Change-Id: I0c549d7537a82792e9de708c96c265f0dce5908d
Signed-off-by: Vikash Garodia <[email protected]>
Vikash Garodia 3 жил өмнө
parent
commit
f3ff48e82f

+ 8 - 0
driver/variant/iris2/src/msm_vidc_iris2.c

@@ -616,6 +616,14 @@ static int __power_off_iris2(struct msm_vidc_core *core)
 	if (!core->power_enabled)
 		return 0;
 
+	/**
+	 * Reset video_cc_mvs0_clk_src value to resolve MMRM high video
+	 * clock projection issue.
+	 */
+	rc = __set_clocks(core, 0);
+	if (rc)
+		d_vpr_e("%s: resetting clocks failed\n", __func__);
+
 	if (__power_off_iris2_hardware(core))
 		d_vpr_e("%s: failed to power off hardware\n", __func__);
 

+ 1 - 0
driver/vidc/inc/venus_hfi.h

@@ -73,6 +73,7 @@ int __iface_cmdq_write(struct msm_vidc_core *core,
 	void *pkt);
 int __iface_msgq_read(struct msm_vidc_core *core, void *pkt);
 int __iface_dbgq_read(struct msm_vidc_core *core, void *pkt);
+int __set_clocks(struct msm_vidc_core *core, u32 freq);
 int __scale_clocks(struct msm_vidc_core *core);
 int __set_clk_rate(struct msm_vidc_core *core,
 	struct clock_info *cl, u64 rate);

+ 1 - 1
driver/vidc/src/venus_hfi.c

@@ -709,7 +709,7 @@ int __set_clk_rate(struct msm_vidc_core *core,
 	return rc;
 }
 
-static int __set_clocks(struct msm_vidc_core *core, u32 freq)
+int __set_clocks(struct msm_vidc_core *core, u32 freq)
 {
 	int rc = 0;
 	struct clock_info *cl;