OSDN Git Service

e1000 fix: read access to some registers is missing.
authorKay Ackermann <kay.ackermann@uni-ulm.de>
Sat, 31 Oct 2009 17:29:43 +0000 (18:29 +0100)
committerAnthony Liguori <aliguori@us.ibm.com>
Thu, 12 Nov 2009 17:23:56 +0000 (11:23 -0600)
While writing working on an e1000 driver for my university's OS I
noticed that some registers aren't readable in QEMU, but they should
be readable as stated in Intels Driver Developer Manual (and also
verified on real hardware).

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
hw/e1000.c

index 9df903b..00f6a57 100644 (file)
@@ -790,6 +790,8 @@ static uint32_t (*macreg_readops[])(E1000State *, int) = {
     getreg(MANC),      getreg(MDIC),   getreg(SWSM),   getreg(STATUS),
     getreg(TORL),      getreg(TOTL),   getreg(IMS),    getreg(TCTL),
     getreg(RDH),       getreg(RDT),    getreg(VET),    getreg(ICS),
+    getreg(TDBAL),     getreg(TDBAH),  getreg(RDBAH),  getreg(RDBAL),
+    getreg(TDLEN),     getreg(RDLEN),
 
     [TOTH] = mac_read_clr8,    [TORH] = mac_read_clr8, [GPRC] = mac_read_clr4,
     [GPTC] = mac_read_clr4,    [TPR] = mac_read_clr4,  [TPT] = mac_read_clr4,