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

Commit 5456796b authored by Alexander Usyskin's avatar Alexander Usyskin Committed by Greg Kroah-Hartman
Browse files

mei: amthif: use service function to flush amthif queue



Replace open coded loop with an existing service function:
mei_io_list_flush

Signed-off-by: default avatarAlexander Usyskin <alexander.usyskin@intel.com>
Signed-off-by: default avatarTomas Winkler <tomas.winkler@intel.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 2c2b93ec
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -117,7 +117,7 @@ static void __mei_io_list_flush(struct mei_cl_cb *list,
 * @list:  An instance of our list structure
 * @cl: host client
 */
static inline void mei_io_list_flush(struct mei_cl_cb *list, struct mei_cl *cl)
void mei_io_list_flush(struct mei_cl_cb *list, struct mei_cl *cl)
{
	__mei_io_list_flush(list, cl, false);
}
+2 −0
Original line number Diff line number Diff line
@@ -45,6 +45,8 @@ static inline void mei_io_list_init(struct mei_cl_cb *list)
{
	INIT_LIST_HEAD(&list->list);
}
void mei_io_list_flush(struct mei_cl_cb *list, struct mei_cl *cl);

/*
 * MEI Host Client Functions
 */
+2 −11
Original line number Diff line number Diff line
@@ -556,8 +556,6 @@ void mei_timer(struct work_struct *work)
{
	unsigned long timeout;
	struct mei_cl *cl;
	struct mei_cl_cb  *cb_pos = NULL;
	struct mei_cl_cb  *cb_next = NULL;

	struct mei_device *dev = container_of(work,
					struct mei_device, timer_work.work);
@@ -632,15 +630,8 @@ void mei_timer(struct work_struct *work)

			dev_dbg(&dev->pdev->dev, "freeing AMTHI for other requests\n");

			list_for_each_entry_safe(cb_pos, cb_next,
				&dev->amthif_rd_complete_list.list, list) {

				cl = cb_pos->file_object->private_data;

				/* Finding the AMTHI entry. */
				if (cl == &dev->iamthif_cl)
					list_del(&cb_pos->list);
			}
			mei_io_list_flush(&dev->amthif_rd_complete_list,
				&dev->iamthif_cl);
			mei_io_cb_free(dev->iamthif_current_cb);
			dev->iamthif_current_cb = NULL;