ata: pata_artop: use *switch* in artop_init_one()
authorSergey Shtylyov <s.shtylyov@omp.ru>
Wed, 9 Feb 2022 20:25:34 +0000 (23:25 +0300)
committerDamien Le Moal <damien.lemoal@opensource.wdc.com>
Sat, 19 Feb 2022 02:18:42 +0000 (11:18 +0900)
This driver uses a string of the *if* statements in artop_init_one()
where the *switch* statement would fit better.  While fixing this,
refactor the 6280 code to e.g. avoid a compound statement inside
the *case* section...

Signed-off-by: Sergey Shtylyov <s.shtylyov@omp.ru>
Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
drivers/ata/pata_artop.c

index ad3c580..08e8840 100644 (file)
@@ -28,7 +28,7 @@
 #include <linux/ata.h>
 
 #define DRV_NAME       "pata_artop"
-#define DRV_VERSION    "0.4.6"
+#define DRV_VERSION    "0.4.7"
 
 /*
  *     The ARTOP has 33 Mhz and "over clocked" timing tables. Until we
@@ -394,16 +394,19 @@ static int artop_init_one (struct pci_dev *pdev, const struct pci_device_id *id)
        if (rc)
                return rc;
 
-       if (id->driver_data == 0)       /* 6210 variant */
+       switch (id->driver_data) {
+       case 0:         /* 6210 variant */
                ppi[0] = &info_6210;
-       else if (id->driver_data == 1)  /* 6260 */
+               break;
+       case 1:         /* 6260 */
                ppi[0] = &info_626x;
-       else if (id->driver_data == 2)  { /* 6280 or 6280 + fast */
-               unsigned long io = pci_resource_start(pdev, 4);
-
-               ppi[0] = &info_628x;
-               if (inb(io) & 0x10)
+               break;
+       case 2:         /* 6280 or 6280 + fast */
+               if (inb(pci_resource_start(pdev, 4)) & 0x10)
                        ppi[0] = &info_628x_fast;
+               else
+                       ppi[0] = &info_628x;
+               break;
        }
 
        BUG_ON(ppi[0] == NULL);