atp870u: Remove ugly gotos #3
authorOndrej Zary <linux@rainbow-software.org>
Tue, 17 Nov 2015 18:23:51 +0000 (19:23 +0100)
committerMartin K. Petersen <martin.petersen@oracle.com>
Thu, 26 Nov 2015 03:08:34 +0000 (22:08 -0500)
Signed-off-by: Ondrej Zary <linux@rainbow-software.org>
Reviewed-by: Hannes Reinicke <hare@suse.de>
Acked-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/atp870u.c

index 999bf74..b3d4e9d 100644 (file)
@@ -880,34 +880,28 @@ static unsigned char fun_scam(struct atp_unit *dev, unsigned short int *val)
        unsigned char j;
 
        outw(*val, dev->ioport[0] + 0x1c);
-FUN_D7:
        for (i = 0; i < 10; i++) {      /* stable >= bus settle delay(400 ns)  */
                k = inw(dev->ioport[0] + 0x1c);
                j = (unsigned char) (k >> 8);
-               if ((k & 0x8000) != 0) {        /* DB7 all release?    */
-                       goto FUN_D7;
-               }
+               if ((k & 0x8000) != 0)  /* DB7 all release?    */
+                       i = 0;
        }
        *val |= 0x4000;         /* assert DB6           */
        outw(*val, dev->ioport[0] + 0x1c);
        *val &= 0xdfff;         /* assert DB5           */
        outw(*val, dev->ioport[0] + 0x1c);
-FUN_D5:
        for (i = 0; i < 10; i++) {      /* stable >= bus settle delay(400 ns) */
-               if ((inw(dev->ioport[0] + 0x1c) & 0x2000) != 0) {       /* DB5 all release?       */
-                       goto FUN_D5;
-               }
+               if ((inw(dev->ioport[0] + 0x1c) & 0x2000) != 0) /* DB5 all release?       */
+                       i = 0;
        }
        *val |= 0x8000;         /* no DB4-0, assert DB7    */
        *val &= 0xe0ff;
        outw(*val, dev->ioport[0] + 0x1c);
        *val &= 0xbfff;         /* release DB6             */
        outw(*val, dev->ioport[0] + 0x1c);
-FUN_D6:
        for (i = 0; i < 10; i++) {      /* stable >= bus settle delay(400 ns)  */
-               if ((inw(dev->ioport[0] + 0x1c) & 0x4000) != 0) {       /* DB6 all release?  */
-                       goto FUN_D6;
-               }
+               if ((inw(dev->ioport[0] + 0x1c) & 0x4000) != 0) /* DB6 all release?  */
+                       i = 0;
        }
 
        return j;