[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 2/9] eepro100: Simplify status handling
From: |
Stefan Weil |
Subject: |
[Qemu-devel] [PATCH 2/9] eepro100: Simplify status handling |
Date: |
Tue, 6 Apr 2010 13:44:02 +0200 |
Signed-off-by: Stefan Weil <address@hidden>
---
hw/eepro100.c | 9 +++++----
1 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/hw/eepro100.c b/hw/eepro100.c
index 0415132..741031c 100644
--- a/hw/eepro100.c
+++ b/hw/eepro100.c
@@ -175,6 +175,7 @@ typedef enum {
} scb_command_bit;
typedef enum {
+ STATUS_NOT_OK = 0,
STATUS_C = BIT(15),
STATUS_OK = BIT(13),
} scb_status_bit;
@@ -882,7 +883,7 @@ static void action_command(EEPRO100State *s)
bool bit_s;
bool bit_i;
bool bit_nc;
- bool success = true;
+ uint16_t ok_status = STATUS_OK;
s->cb_address = s->cu_base + s->cu_offset;
read_cb(s);
bit_el = ((s->tx.command & COMMAND_EL) != 0);
@@ -915,7 +916,7 @@ static void action_command(EEPRO100State *s)
case CmdTx:
if (bit_nc) {
missing("CmdTx: NC = 0");
- success = false;
+ ok_status = STATUS_NOT_OK;
break;
}
tx_command(s);
@@ -932,11 +933,11 @@ static void action_command(EEPRO100State *s)
break;
default:
missing("undefined command");
- success = false;
+ ok_status = STATUS_NOT_OK;
break;
}
/* Write new status. */
- stw_phys(s->cb_address, s->tx.status | STATUS_C | (success ? STATUS_OK
: 0));
+ stw_phys(s->cb_address, s->tx.status | ok_status | STATUS_C);
if (bit_i) {
/* CU completed action. */
eepro100_cx_interrupt(s);
--
1.7.0