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

Commit be9d87a7 authored by Tomas Winkler's avatar Tomas Winkler Committed by Greg Kroah-Hartman
Browse files

mei: simplify write complete loop in irq handler



extract the common, hence non conditional code
from the if-else statment

Signed-off-by: default avatarTomas Winkler <tomas.winkler@intel.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 9a84d616
Loading
Loading
Loading
Loading
+12 −25
Original line number Diff line number Diff line
@@ -1027,36 +1027,23 @@ static int mei_irq_thread_write_handler(struct mei_device *dev,
		cl = pos->cl;
		if (cl == NULL)
			continue;

		if (cl != &dev->iamthif_cl) {
		if (mei_flow_ctrl_creds(dev, cl) <= 0) {
			dev_dbg(&dev->pdev->dev,
				"No flow control credentials for client %d, not sending.\n",
				cl->host_client_id);
			continue;
		}
			ret = mei_irq_thread_write_complete(dev, &slots, pos,
						cmpl_list);
			if (ret)
				return ret;

		} else if (cl == &dev->iamthif_cl) {
			/* IAMTHIF IOCTL */
			dev_dbg(&dev->pdev->dev, "complete amthi write cb.\n");
			if (mei_flow_ctrl_creds(dev, cl) <= 0) {
				dev_dbg(&dev->pdev->dev,
					"No flow control credentials for amthi client %d.\n",
					cl->host_client_id);
				continue;
			}
		if (cl == &dev->iamthif_cl)
			ret = mei_amthif_irq_write_complete(dev, &slots,
							pos, cmpl_list);
		else
			ret = mei_irq_thread_write_complete(dev, &slots, pos,
						cmpl_list);
		if (ret)
			return ret;

	}

	}
	return 0;
}