mei: simplify write complete loop in irq handler
authorTomas Winkler <tomas.winkler@intel.com>
Sun, 18 Nov 2012 13:13:19 +0000 (15:13 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 21 Nov 2012 20:43:58 +0000 (12:43 -0800)
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>
drivers/misc/mei/interrupt.c

index cccb63a8c007ff1bf53765fd7a1e5b3b4aea4721..e5aa0ed3b8eb849cd9d03cc7bc8f68a2d9b0ed65 100644 (file)
@@ -1027,34 +1027,21 @@ static int mei_irq_thread_write_handler(struct mei_device *dev,
                cl = pos->cl;
                if (cl == NULL)
                        continue;
+               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;
+               }
 
-               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);
-                       if (ret)
-                               return ret;
-
-               }
+               else
+                       ret = mei_irq_thread_write_complete(dev, &slots, pos,
+                                               cmpl_list);
+               if (ret)
+                       return ret;
 
        }
        return 0;