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

Commit 595756c9 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: camera: initialize qos_request object"

parents 0d2bba96 209f71b0
Loading
Loading
Loading
Loading
+7 −8
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@ static struct list_head ordered_sd_list;
static struct mutex        ordered_sd_mtx;
static struct mutex        v4l2_event_mtx;

static atomic_t qos_add_request_done = ATOMIC_INIT(0);
static struct pm_qos_request msm_v4l2_pm_qos_request;

static struct msm_queue_head *msm_session_q;
@@ -223,9 +224,11 @@ static inline int __msm_queue_find_command_ack_q(void *d1, void *d2)
	return (ack->stream_id == *(unsigned int *)d2) ? 1 : 0;
}

static void msm_pm_qos_add_request(void)
static inline void msm_pm_qos_add_request(void)
{
	pr_info("%s: add request", __func__);
	if (atomic_cmpxchg(&qos_add_request_done, 0, 1))
		return;
	pm_qos_add_request(&msm_v4l2_pm_qos_request, PM_QOS_CPU_DMA_LATENCY,
	PM_QOS_DEFAULT_VALUE);
}
@@ -238,14 +241,10 @@ static void msm_pm_qos_remove_request(void)

void msm_pm_qos_update_request(int val)
{
	/* update just before creating the first session,
	 * or after destroying the last session.
	 */
	if (msm_session_q && msm_session_q->len == 0) {
	pr_info("%s: update request %d", __func__, val);
	msm_pm_qos_add_request();
	pm_qos_update_request(&msm_v4l2_pm_qos_request, val);
}
}

struct msm_session *msm_session_find(unsigned int session_id)
{