From: Edgar E. Iglesias Date: Wed, 24 Oct 2018 06:50:20 +0000 (+0100) Subject: net: cadence_gem: Announce availability of priority queues X-Git-Tag: v3.1.0-rc0~38^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=726a2a951bf12fe0e0c0034b3ba23e8a3e2f331c;p=thirdparty%2Fqemu.git net: cadence_gem: Announce availability of priority queues Announce the availability of the various priority queues. This fixes an issue where guest kernels would miss to configure secondary queues due to inproper feature bits. Signed-off-by: Edgar E. Iglesias Message-id: 20181017213932.19973-2-edgar.iglesias@gmail.com Reviewed-by: Peter Maydell Signed-off-by: Peter Maydell --- diff --git a/hw/net/cadence_gem.c b/hw/net/cadence_gem.c index 17959989289..16a8455128c 100644 --- a/hw/net/cadence_gem.c +++ b/hw/net/cadence_gem.c @@ -1283,6 +1283,7 @@ static void gem_reset(DeviceState *d) int i; CadenceGEMState *s = CADENCE_GEM(d); const uint8_t *a; + uint32_t queues_mask = 0; DB_PRINT("\n"); @@ -1299,7 +1300,12 @@ static void gem_reset(DeviceState *d) s->regs[GEM_DESCONF] = 0x02500111; s->regs[GEM_DESCONF2] = 0x2ab13fff; s->regs[GEM_DESCONF5] = 0x002f2045; - s->regs[GEM_DESCONF6] = 0x00000200; + s->regs[GEM_DESCONF6] = 0x0; + + if (s->num_priority_queues > 1) { + queues_mask = MAKE_64BIT_MASK(1, s->num_priority_queues - 1); + s->regs[GEM_DESCONF6] |= queues_mask; + } /* Set MAC address */ a = &s->conf.macaddr.a[0];