pata_cmd64x: turn string of *if* statements into *switch*

Convert string of the *if* statements all checking 'pdev->revision' into more
natural *switch* statement. While at it, somewhat clarify the comments there...

Increment the driver version, accounting for the patches that neglected to do
this in the past.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
This commit is contained in:
Sergei Shtylyov 2012-03-11 22:29:02 +03:00 committed by Jeff Garzik
parent d01159dffa
commit 8fcfa7bd1b
1 changed files with 17 additions and 11 deletions

View File

@ -32,7 +32,7 @@
#include <linux/libata.h> #include <linux/libata.h>
#define DRV_NAME "pata_cmd64x" #define DRV_NAME "pata_cmd64x"
#define DRV_VERSION "0.2.5" #define DRV_VERSION "0.2.15"
/* /*
* CMD64x specific registers definition. * CMD64x specific registers definition.
@ -368,20 +368,26 @@ static int cmd64x_init_one(struct pci_dev *pdev, const struct pci_device_id *id)
if (id->driver_data == 0) /* 643 */ if (id->driver_data == 0) /* 643 */
ata_pci_bmdma_clear_simplex(pdev); ata_pci_bmdma_clear_simplex(pdev);
if (pdev->device == PCI_DEVICE_ID_CMD_646) { if (pdev->device == PCI_DEVICE_ID_CMD_646)
/* Does UDMA work ? */ switch (pdev->revision) {
if (pdev->revision > 4) { /* UDMA works since rev 5 */
default:
ppi[0] = &cmd_info[2]; ppi[0] = &cmd_info[2];
ppi[1] = &cmd_info[2]; ppi[1] = &cmd_info[2];
} break;
/* Early rev with other problems ? */ case 3:
else if (pdev->revision == 1) { case 4:
break;
/* Rev 1 with other problems? */
case 1:
ppi[0] = &cmd_info[3]; ppi[0] = &cmd_info[3];
ppi[1] = &cmd_info[3]; ppi[1] = &cmd_info[3];
} /* FALL THRU */
/* revs 1,2 have no CNTRL_CH0 */ /* Early revs have no CNTRL_CH0 */
if (pdev->revision < 3) case 2:
case 0:
cntrl_ch0_ok = 0; cntrl_ch0_ok = 0;
break;
} }
cmd64x_fixup(pdev); cmd64x_fixup(pdev);