aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Hounschell <markh@compro.net>2014-03-12 12:50:55 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-03-17 14:35:43 -0700
commitbd3e43e5f063ee72fe888d0cc8215a5664f0b320 (patch)
tree29f817b1a123147c25942edd3c1e247b3730e3cb
parentb2e78c24408cd353919fb35e7f582a592f3b852d (diff)
staging: dgap: remove more unneeded brd-state states
This patch removes more unneeded brd-state states Signed-off-by: Mark Hounschell <markh@compro.net> Tested-by: Mark Hounschell <markh@compro.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/staging/dgap/dgap.c35
-rw-r--r--drivers/staging/dgap/dgap.h2
2 files changed, 17 insertions, 20 deletions
diff --git a/drivers/staging/dgap/dgap.c b/drivers/staging/dgap/dgap.c
index c2b2d8fce34..1dc209536f9 100644
--- a/drivers/staging/dgap/dgap.c
+++ b/drivers/staging/dgap/dgap.c
@@ -221,8 +221,8 @@ static int dgap_finalize_board_init(struct board_t *brd);
static void dgap_get_vpd(struct board_t *brd);
static void dgap_do_reset_board(struct board_t *brd);
-static void dgap_do_wait_for_bios(struct board_t *brd);
-static void dgap_do_wait_for_fep(struct board_t *brd);
+static int dgap_do_wait_for_bios(struct board_t *brd);
+static int dgap_do_wait_for_fep(struct board_t *brd);
static int dgap_tty_register_ports(struct board_t *brd);
static int dgap_firmware_load(struct pci_dev *pdev, int card_type);
@@ -923,9 +923,7 @@ static int dgap_firmware_load(struct pci_dev *pdev, int card_type)
release_firmware(fw);
/* Wait for BIOS to test board... */
- dgap_do_wait_for_bios(brd);
-
- if (brd->state != FINISHED_BIOS_LOAD)
+ if (!dgap_do_wait_for_bios(brd))
return -ENXIO;
}
@@ -941,9 +939,7 @@ static int dgap_firmware_load(struct pci_dev *pdev, int card_type)
release_firmware(fw);
/* Wait for FEP to load on board... */
- dgap_do_wait_for_fep(brd);
-
- if (brd->state != FINISHED_FEP_LOAD)
+ if (!dgap_do_wait_for_fep(brd))
return -ENXIO;
}
@@ -4368,15 +4364,16 @@ static void dgap_do_bios_load(struct board_t *brd, uchar __user *ubios, int len)
/*
* Checks to see if the BIOS completed running on the card.
*/
-static void dgap_do_wait_for_bios(struct board_t *brd)
+static int dgap_do_wait_for_bios(struct board_t *brd)
{
uchar *addr;
u16 word;
u16 err1;
u16 err2;
+ int ret = 0;
if (!brd || (brd->magic != DGAP_BOARD_MAGIC) || !brd->re_map_membase)
- return;
+ return ret;
addr = brd->re_map_membase;
word = readw(addr + POSTAREA);
@@ -4389,10 +4386,8 @@ static void dgap_do_wait_for_bios(struct board_t *brd)
brd->wait_for_bios = 0;
while (brd->wait_for_bios < 1000) {
/* Check to see if BIOS thinks board is good. (GD). */
- if (word == *(u16 *) "GD") {
- brd->state = FINISHED_BIOS_LOAD;
- return;
- }
+ if (word == *(u16 *) "GD")
+ return 1;
msleep_interruptible(10);
brd->wait_for_bios++;
word = readw(addr + POSTAREA);
@@ -4405,6 +4400,8 @@ static void dgap_do_wait_for_bios(struct board_t *brd)
brd->name, err1, err2);
brd->state = BOARD_FAILED;
brd->dpastatus = BD_NOBIOS;
+
+ return ret;
}
/*
@@ -4455,15 +4452,16 @@ static void dgap_do_fep_load(struct board_t *brd, uchar __user *ufep, int len)
/*
* Waits for the FEP to report thats its ready for us to use.
*/
-static void dgap_do_wait_for_fep(struct board_t *brd)
+static int dgap_do_wait_for_fep(struct board_t *brd)
{
uchar *addr;
u16 word;
u16 err1;
u16 err2;
+ int ret = 0;
if (!brd || (brd->magic != DGAP_BOARD_MAGIC) || !brd->re_map_membase)
- return;
+ return ret;
addr = brd->re_map_membase;
word = readw(addr + FEPSTAT);
@@ -4476,7 +4474,6 @@ static void dgap_do_wait_for_fep(struct board_t *brd)
while (brd->wait_for_fep < 500) {
/* Check to see if FEP is up and running now. */
if (word == *(u16 *) "OS") {
- brd->state = FINISHED_FEP_LOAD;
/*
* Check to see if the board can support FEP5+ commands.
*/
@@ -4484,7 +4481,7 @@ static void dgap_do_wait_for_fep(struct board_t *brd)
if (word == *(u16 *) "5A")
brd->bd_flags |= BD_FEP5PLUS;
- return;
+ return 1;
}
msleep_interruptible(10);
brd->wait_for_fep++;
@@ -4498,6 +4495,8 @@ static void dgap_do_wait_for_fep(struct board_t *brd)
brd->name, err1, err2);
brd->state = BOARD_FAILED;
brd->dpastatus = BD_NOFEP;
+
+ return ret;
}
/*
diff --git a/drivers/staging/dgap/dgap.h b/drivers/staging/dgap/dgap.h
index 02d267f87d0..c4d714c581f 100644
--- a/drivers/staging/dgap/dgap.h
+++ b/drivers/staging/dgap/dgap.h
@@ -487,8 +487,6 @@ enum {
*/
enum {
BOARD_FAILED = 0,
- FINISHED_BIOS_LOAD,
- FINISHED_FEP_LOAD,
BOARD_READY
};