usb: gadget: f_mass_storage: simplify start_transfer slightly
authorMichal Nazarewicz <mina86@mina86.com>
Wed, 27 Aug 2014 20:58:48 +0000 (22:58 +0200)
committerFelipe Balbi <balbi@ti.com>
Tue, 2 Sep 2014 14:16:47 +0000 (09:16 -0500)
Flatten the start_transfer function by reversing the if condition and
returning early out of the function if everything went fine.  It makes
the function look less complicated, at least to me, and easier to
understand.

Signed-off-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/gadget/function/f_mass_storage.c

index b963939088606e7e9252ec1f55d42ff9fdd1dcd3..811929cd4c9e21b7c59061375e4ad9de335e0c03 100644 (file)
@@ -566,22 +566,22 @@ static void start_transfer(struct fsg_dev *fsg, struct usb_ep *ep,
        *pbusy = 1;
        *state = BUF_STATE_BUSY;
        spin_unlock_irq(&fsg->common->lock);
+
        rc = usb_ep_queue(ep, req, GFP_KERNEL);
-       if (rc != 0) {
-               *pbusy = 0;
-               *state = BUF_STATE_EMPTY;
+       if (rc == 0)
+               return;  /* All good, we're done */
 
-               /* We can't do much more than wait for a reset */
+       *pbusy = 0;
+       *state = BUF_STATE_EMPTY;
 
-               /*
-                * Note: currently the net2280 driver fails zero-length
-                * submissions if DMA is enabled.
-                */
-               if (rc != -ESHUTDOWN &&
-                   !(rc == -EOPNOTSUPP && req->length == 0))
-                       WARNING(fsg, "error in submission: %s --> %d\n",
-                               ep->name, rc);
-       }
+       /* We can't do much more than wait for a reset */
+
+       /*
+        * Note: currently the net2280 driver fails zero-length
+        * submissions if DMA is enabled.
+        */
+       if (rc != -ESHUTDOWN && !(rc == -EOPNOTSUPP && req->length == 0))
+               WARNING(fsg, "error in submission: %s --> %d\n", ep->name, rc);
 }
 
 static bool start_in_transfer(struct fsg_common *common, struct fsg_buffhd *bh)
@@ -3665,4 +3665,3 @@ void fsg_config_from_params(struct fsg_config *cfg,
        cfg->fsg_num_buffers = fsg_num_buffers;
 }
 EXPORT_SYMBOL_GPL(fsg_config_from_params);
-