aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/misc
diff options
context:
space:
mode:
authorTomas Winkler <tomas.winkler@intel.com>2012-11-18 08:13:19 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-11-21 15:43:58 -0500
commitbe9d87a790765bcc85d8bdab8a9be31cf7457b28 (patch)
tree61d378f2d19f9536b03405b4fafacd61cfe10ab1 /drivers/misc
parent9a84d616980215d1d9222173c60329b57680483b (diff)
mei: simplify write complete loop in irq handler
extract the common, hence non conditional code from the if-else statment Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/misc')
-rw-r--r--drivers/misc/mei/interrupt.c37
1 files changed, 12 insertions, 25 deletions
diff --git a/drivers/misc/mei/interrupt.c b/drivers/misc/mei/interrupt.c
index cccb63a8c007..e5aa0ed3b8eb 100644
--- a/drivers/misc/mei/interrupt.c
+++ b/drivers/misc/mei/interrupt.c
@@ -1027,34 +1027,21 @@ static int mei_irq_thread_write_handler(struct mei_device *dev,
1027 cl = pos->cl; 1027 cl = pos->cl;
1028 if (cl == NULL) 1028 if (cl == NULL)
1029 continue; 1029 continue;
1030 if (mei_flow_ctrl_creds(dev, cl) <= 0) {
1031 dev_dbg(&dev->pdev->dev,
1032 "No flow control credentials for client %d, not sending.\n",
1033 cl->host_client_id);
1034 continue;
1035 }
1030 1036
1031 if (cl != &dev->iamthif_cl) { 1037 if (cl == &dev->iamthif_cl)
1032 if (mei_flow_ctrl_creds(dev, cl) <= 0) {
1033 dev_dbg(&dev->pdev->dev,
1034 "No flow control credentials for client %d, not sending.\n",
1035 cl->host_client_id);
1036 continue;
1037 }
1038 ret = mei_irq_thread_write_complete(dev, &slots, pos,
1039 cmpl_list);
1040 if (ret)
1041 return ret;
1042
1043 } else if (cl == &dev->iamthif_cl) {
1044 /* IAMTHIF IOCTL */
1045 dev_dbg(&dev->pdev->dev, "complete amthi write cb.\n");
1046 if (mei_flow_ctrl_creds(dev, cl) <= 0) {
1047 dev_dbg(&dev->pdev->dev,
1048 "No flow control credentials for amthi client %d.\n",
1049 cl->host_client_id);
1050 continue;
1051 }
1052 ret = mei_amthif_irq_write_complete(dev, &slots, 1038 ret = mei_amthif_irq_write_complete(dev, &slots,
1053 pos, cmpl_list); 1039 pos, cmpl_list);
1054 if (ret) 1040 else
1055 return ret; 1041 ret = mei_irq_thread_write_complete(dev, &slots, pos,
1056 1042 cmpl_list);
1057 } 1043 if (ret)
1044 return ret;
1058 1045
1059 } 1046 }
1060 return 0; 1047 return 0;