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

Commit 816e7ed1 authored by Even Xu's avatar Even Xu Committed by Jiri Kosina
Browse files

HID: intel-ish-hid: use helper function to access client buffer



ishtp bus driver exposed helper functions for client buffer accessing,
so change to use these functions in ishtp-hid-client driver to avoid
access client buffer directly.

Signed-off-by: default avatarEven Xu <even.xu@intel.com>
Reviewed-by: default avatarAndriy Shevchenko <andriy.shevchenko@intel.com>
Acked-by: default avatarSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
parent a1c40ce6
Loading
Loading
Loading
Loading
+1 −12
Original line number Diff line number Diff line
@@ -323,20 +323,11 @@ static void ish_cl_event_cb(struct ishtp_cl_device *device)
	struct ishtp_cl	*hid_ishtp_cl = ishtp_get_drvdata(device);
	struct ishtp_cl_rb *rb_in_proc;
	size_t r_length;
	unsigned long flags;

	if (!hid_ishtp_cl)
		return;

	spin_lock_irqsave(&hid_ishtp_cl->in_process_spinlock, flags);
	while (!list_empty(&hid_ishtp_cl->in_process_list.list)) {
		rb_in_proc = list_entry(
			hid_ishtp_cl->in_process_list.list.next,
			struct ishtp_cl_rb, list);
		list_del_init(&rb_in_proc->list);
		spin_unlock_irqrestore(&hid_ishtp_cl->in_process_spinlock,
			flags);

	while ((rb_in_proc = ishtp_cl_rx_get_rb(hid_ishtp_cl)) != NULL) {
		if (!rb_in_proc->buffer.data)
			return;

@@ -346,9 +337,7 @@ static void ish_cl_event_cb(struct ishtp_cl_device *device)
		process_recv(hid_ishtp_cl, rb_in_proc->buffer.data, r_length);

		ishtp_cl_io_rb_recycle(rb_in_proc);
		spin_lock_irqsave(&hid_ishtp_cl->in_process_spinlock, flags);
	}
	spin_unlock_irqrestore(&hid_ishtp_cl->in_process_spinlock, flags);
}

/**