summaryrefslogtreecommitdiff
path: root/drivers/staging/dgap
diff options
context:
space:
mode:
authorMark Hounschell <markh@compro.net>2014-04-25 14:19:42 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-05-16 16:07:03 -0700
commit6a82524167abda7dc92b76a4ba85ff2ceca6f8d8 (patch)
tree7299151ee4bc0382a1c85f2bf4f0e3aa8063065d /drivers/staging/dgap
parentf34475f5badfe8a9ad5836c94ca32f16ef07e9a8 (diff)
staging: dgap: refactor ugly dgap_init_one function
This patch just cleans up the ugly dgap_init_one function Signed-off-by: Mark Hounschell <markh@compro.net> Suggested-by: Dan Carpenter <dan.carpenter@oracle.com> Tested-by: Mark Hounschell <markh@compro.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/dgap')
-rw-r--r--drivers/staging/dgap/dgap.c19
1 files changed, 8 insertions, 11 deletions
diff --git a/drivers/staging/dgap/dgap.c b/drivers/staging/dgap/dgap.c
index f597432ede8c..f2ad7ae8036e 100644
--- a/drivers/staging/dgap/dgap.c
+++ b/drivers/staging/dgap/dgap.c
@@ -575,19 +575,16 @@ static int dgap_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
if (dgap_NumBoards >= MAXBOARDS)
return -EPERM;
- /* wake up and enable device */
rc = pci_enable_device(pdev);
+ if (rc)
+ return -EIO;
- if (rc < 0) {
- rc = -EIO;
- } else {
- rc = dgap_probe1(pdev, ent->driver_data);
- if (rc == 0) {
- dgap_NumBoards++;
- rc = dgap_firmware_load(pdev, ent->driver_data);
- }
- }
- return rc;
+ rc = dgap_probe1(pdev, ent->driver_data);
+ if (rc)
+ return rc;
+
+ dgap_NumBoards++;
+ return dgap_firmware_load(pdev, ent->driver_data);
}
static int dgap_probe1(struct pci_dev *pdev, int card_type)