summaryrefslogtreecommitdiffstats
path: root/hw/eepro100.c
diff options
context:
space:
mode:
authorStefan Weil <weil@mail.berlios.de>2010-03-02 22:37:42 +0100
committerMichael S. Tsirkin <mst@redhat.com>2010-03-03 13:33:48 +0200
commit0908bba1577d39bef09dd617b650d6dbd04ccf9e (patch)
treeee8d1ecc1626325a90078c85ae3acd5fa00c2661 /hw/eepro100.c
parentce0e58b3948ac75caca5bbb33b1ab52171fd95d7 (diff)
downloadhqemu-0908bba1577d39bef09dd617b650d6dbd04ccf9e.zip
hqemu-0908bba1577d39bef09dd617b650d6dbd04ccf9e.tar.gz
eepro100: Add missing SCB register names
Some system control block registers were addressed using their offset value. Use symbolic names now and clean the documentation. Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'hw/eepro100.c')
-rw-r--r--hw/eepro100.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/hw/eepro100.c b/hw/eepro100.c
index 6580ca8..124bc49 100644
--- a/hw/eepro100.c
+++ b/hw/eepro100.c
@@ -125,16 +125,20 @@
/* Offsets to the various registers.
All accesses need not be longword aligned. */
enum speedo_offsets {
- SCBStatus = 0,
+ SCBStatus = 0, /* Status Word. */
SCBAck = 1,
SCBCmd = 2, /* Rx/Command Unit command and status. */
SCBIntmask = 3,
SCBPointer = 4, /* General purpose pointer. */
SCBPort = 8, /* Misc. commands and operands. */
- SCBflash = 12, SCBeeprom = 14, /* EEPROM and flash memory control. */
+ SCBflash = 12, /* Flash memory control. */
+ SCBeeprom = 14, /* EEPROM control. */
SCBCtrlMDI = 16, /* MDI interface control. */
SCBEarlyRx = 20, /* Early receive byte count. */
- SCBFlow = 24,
+ SCBFlow = 24, /* Flow Control. */
+ SCBpmdr = 27, /* Power Management Driver. */
+ SCBgctrl = 28, /* General Control. */
+ SCBgstat = 29, /* General Status. */
};
/* A speedo3 transmit buffer descriptor with two buffers... */
@@ -1333,11 +1337,11 @@ static uint8_t eepro100_read1(EEPRO100State * s, uint32_t addr)
case SCBeeprom:
val = eepro100_read_eeprom(s);
break;
- case 0x1b: /* PMDR (power management driver register) */
+ case SCBpmdr: /* Power Management Driver Register */
val = 0;
TRACE(OTHER, logout("addr=%s val=0x%02x\n", regname(addr), val));
break;
- case 0x1d: /* general status register */
+ case SCBgstat: /* General Status Register */
/* 100 Mbps full duplex, valid link */
val = 0x07;
TRACE(OTHER, logout("addr=General Status val=%02x\n", val));
@@ -1431,7 +1435,7 @@ static void eepro100_write1(EEPRO100State * s, uint32_t addr, uint8_t val)
case SCBFlow: /* does not exist on 82557 */
case SCBFlow + 1:
case SCBFlow + 2:
- case SCBFlow + 3:
+ case SCBpmdr: /* does not exist on 82557 */
TRACE(OTHER, logout("addr=%s val=0x%02x\n", regname(addr), val));
break;
case SCBeeprom:
OpenPOWER on IntegriCloud