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

Commit 8929fa4b authored by Shi Zhongbo's avatar Shi Zhongbo
Browse files

msm: vidc: limit max and min auto frame rate



Limit auto frame rate to [1,platform frame rate capability]
before sending to firmware.

Change-Id: I96dc4b8d76b7752a76f6c15dcb6b20817857372f
Signed-off-by: default avatarShi Zhongbo <zhongbos@codeaurora.org>
parent 08a5f090
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -7768,6 +7768,8 @@ u32 msm_comm_calc_framerate(struct msm_vidc_inst *inst,
{
	u32 framerate = inst->clk_data.frame_rate;
	u32 interval;
	struct msm_vidc_capability *capability;
	capability = &inst->capability;

	if (timestamp_us <= prev_ts) {
		s_vpr_e(inst->sid, "%s: invalid ts %lld, prev ts %lld\n",
@@ -7775,8 +7777,12 @@ u32 msm_comm_calc_framerate(struct msm_vidc_inst *inst,
		return framerate;
	}
	interval = (u32)(timestamp_us - prev_ts);
	framerate = ((1000000 + interval / 2) / interval) << 16;
	return framerate;
	framerate = (1000000 + interval / 2) / interval;
	if (framerate > capability->cap[CAP_FRAMERATE].max)
		framerate = capability->cap[CAP_FRAMERATE].max;
	if (framerate < 1)
		framerate = 1;
	return framerate << 16;
}

u32 msm_comm_get_max_framerate(struct msm_vidc_inst *inst)