* [PATCH] e1000: emulate additional dummy M88 registers
@ 2020-01-21 21:14 Dominic Chen
0 siblings, 0 replies; only message in thread
From: Dominic Chen @ 2020-01-21 21:14 UTC (permalink / raw)
To: jasowang; +Cc: qemu-devel, Dominic Chen
Certain drivers will write to the M88E1000_PHY_PAGE_SELECT and M88E1000_PHY_GEN_CONTROL
registers on the M88 PHY, so perform dummy reads/writes instead of returning errors.
Signed-off-by: Dominic Chen <d.c.ddcc@gmail.com>
---
hw/net/e1000.c | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/hw/net/e1000.c b/hw/net/e1000.c
index a73f8d404e..52c5d80042 100644
--- a/hw/net/e1000.c
+++ b/hw/net/e1000.c
@@ -206,13 +206,14 @@ enum { NPHYWRITEOPS = ARRAY_SIZE(phyreg_writeops) };
enum { PHY_R = 1, PHY_W = 2, PHY_RW = PHY_R | PHY_W };
static const char phy_regcap[0x20] = {
- [PHY_STATUS] = PHY_R, [M88E1000_EXT_PHY_SPEC_CTRL] = PHY_RW,
- [PHY_ID1] = PHY_R, [M88E1000_PHY_SPEC_CTRL] = PHY_RW,
- [PHY_CTRL] = PHY_RW, [PHY_1000T_CTRL] = PHY_RW,
- [PHY_LP_ABILITY] = PHY_R, [PHY_1000T_STATUS] = PHY_R,
- [PHY_AUTONEG_ADV] = PHY_RW, [M88E1000_RX_ERR_CNTR] = PHY_R,
- [PHY_ID2] = PHY_R, [M88E1000_PHY_SPEC_STATUS] = PHY_R,
- [PHY_AUTONEG_EXP] = PHY_R,
+ [PHY_CTRL] = PHY_RW, [PHY_1000T_CTRL] = PHY_RW,
+ [PHY_STATUS] = PHY_R, [PHY_ID1] = PHY_R,
+ [PHY_ID2] = PHY_R, [PHY_AUTONEG_ADV] = PHY_RW,
+ [PHY_LP_ABILITY] = PHY_R, [PHY_AUTONEG_EXP] = PHY_R,
+ [PHY_1000T_STATUS] = PHY_R, [M88E1000_PHY_SPEC_CTRL] = PHY_RW,
+ [M88E1000_PHY_SPEC_STATUS] = PHY_R, [M88E1000_EXT_PHY_SPEC_CTRL] = PHY_RW,
+ [M88E1000_RX_ERR_CNTR] = PHY_R, [M88E1000_PHY_PAGE_SELECT] = PHY_RW,
+ [M88E1000_PHY_GEN_CONTROL] = PHY_RW,
};
/* PHY_ID2 documented in 8254x_GBe_SDM.pdf, pp. 250 */
--
2.17.1
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2020-01-21 21:26 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-01-21 21:14 [PATCH] e1000: emulate additional dummy M88 registers Dominic Chen
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.