aboutsummaryrefslogtreecommitdiff
path: root/hw/net/e1000.c
diff options
context:
space:
mode:
authorGabriel L. Somlo <gsomlo@gmail.com>2014-06-19 11:55:35 -0400
committerMichael S. Tsirkin <mst@redhat.com>2014-06-23 17:38:00 +0300
commitd52aec95453838f2957c0cbf6ef79c51d161e87f (patch)
tree5af327f8b12022f2726581d16afe9d5377caf589 /hw/net/e1000.c
parent39bb8ee737595e9b264d075dfcd7d86f4d3f1133 (diff)
downloadqemu-d52aec95453838f2957c0cbf6ef79c51d161e87f.zip
qemu-d52aec95453838f2957c0cbf6ef79c51d161e87f.tar.gz
qemu-d52aec95453838f2957c0cbf6ef79c51d161e87f.tar.bz2
e1000: move e1000_autoneg_timer() to after set_ics()
Enable calling set_ics() from within e1000_autoneg_timer() without the need for a forward declaration. This patch contains no functional changes. Signed-off-by: Gabriel Somlo <somlo@cmu.edu> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'hw/net/e1000.c')
-rw-r--r--hw/net/e1000.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/hw/net/e1000.c b/hw/net/e1000.c
index d20f8c8..8ee5225 100644
--- a/hw/net/e1000.c
+++ b/hw/net/e1000.c
@@ -204,19 +204,6 @@ set_phy_ctrl(E1000State *s, int index, uint16_t val)
}
}
-static void
-e1000_autoneg_timer(void *opaque)
-{
- E1000State *s = opaque;
- if (!qemu_get_queue(s->nic)->link_down) {
- e1000_link_up(s);
- s->phy_reg[PHY_LP_ABILITY] |= MII_LPAR_LPACK;
- s->phy_reg[PHY_STATUS] |= MII_SR_AUTONEG_COMPLETE;
- DBGOUT(PHY, "Auto negotiation is completed\n");
- set_ics(s, 0, E1000_ICS_LSC); /* signal link status change to guest */
- }
-}
-
static void (*phyreg_writeops[])(E1000State *, int, uint16_t) = {
[PHY_CTRL] = set_phy_ctrl,
};
@@ -348,6 +335,19 @@ set_ics(E1000State *s, int index, uint32_t val)
set_interrupt_cause(s, 0, val | s->mac_reg[ICR]);
}
+static void
+e1000_autoneg_timer(void *opaque)
+{
+ E1000State *s = opaque;
+ if (!qemu_get_queue(s->nic)->link_down) {
+ e1000_link_up(s);
+ s->phy_reg[PHY_LP_ABILITY] |= MII_LPAR_LPACK;
+ s->phy_reg[PHY_STATUS] |= MII_SR_AUTONEG_COMPLETE;
+ DBGOUT(PHY, "Auto negotiation is completed\n");
+ set_ics(s, 0, E1000_ICS_LSC); /* signal link status change to guest */
+ }
+}
+
static int
rxbufsize(uint32_t v)
{