Set initial MAC address to the one specified by the command line. Signed-off-by: Sebastian Huber <sebastian.hu...@embedded-brains.de> Reviewed-by: Jason Wang <jasow...@redhat.com>
v2: Remove superfluous whitespace change. --- hw/net/cadence_gem.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/hw/net/cadence_gem.c b/hw/net/cadence_gem.c index de26609..f9a7af1 100644 --- a/hw/net/cadence_gem.c +++ b/hw/net/cadence_gem.c @@ -1005,6 +1005,7 @@ static void gem_reset(DeviceState *d) { int i; GemState *s = GEM(d); + const uint8_t *a; DB_PRINT("\n"); @@ -1023,6 +1024,11 @@ static void gem_reset(DeviceState *d) s->regs[GEM_DESCONF5] = 0x002f2145; s->regs[GEM_DESCONF6] = 0x00000200; + /* Set MAC address */ + a = &s->conf.macaddr.a[0]; + s->regs[GEM_SPADDR1LO] = a[0] | (a[1] << 8) | (a[2] << 16) | (a[3] << 24); + s->regs[GEM_SPADDR1HI] = a[4] | (a[5] << 8); + for (i = 0; i < 4; i++) { s->sar_active[i] = false; } -- 1.8.4.5