Message ID | 20231022155200.436340-39-dwmw2@infradead.org |
---|---|
State | Handled Elsewhere |
Headers | show |
Series | Rework matching of network devices to -nic options | expand |
On 10/22/23 12:51, David Woodhouse wrote: > From: David Woodhouse <dwmw@amazon.co.uk> > > Signed-off-by: David Woodhouse <dwmw@amazon.co.uk> > --- > hw/riscv/microchip_pfsoc.c | 13 ++----------- > hw/riscv/sifive_u.c | 7 +------ > 2 files changed, 3 insertions(+), 17 deletions(-) > > diff --git a/hw/riscv/microchip_pfsoc.c b/hw/riscv/microchip_pfsoc.c > index b775aa8946..8e0e3aa20c 100644 > --- a/hw/riscv/microchip_pfsoc.c > +++ b/hw/riscv/microchip_pfsoc.c > @@ -411,17 +411,8 @@ static void microchip_pfsoc_soc_realize(DeviceState *dev, Error **errp) > memmap[MICROCHIP_PFSOC_USB].size); > > /* GEMs */ I believe you forgot to remove the 'nd' variable. Building with this patch (applying patches 1 to 4 first) fails with: ../hw/riscv/microchip_pfsoc.c: In function ‘microchip_pfsoc_soc_realize’: ../hw/riscv/microchip_pfsoc.c:205:14: error: unused variable ‘nd’ [-Werror=unused-variable] 205 | NICInfo *nd; | ^~ cc1: all warnings being treated as errors Patch looks good otherwise. Thanks, Daniel > - > - nd = &nd_table[0]; > - if (nd->used) { > - qemu_check_nic_model(nd, TYPE_CADENCE_GEM); > - qdev_set_nic_properties(DEVICE(&s->gem0), nd); > - } > - nd = &nd_table[1]; > - if (nd->used) { > - qemu_check_nic_model(nd, TYPE_CADENCE_GEM); > - qdev_set_nic_properties(DEVICE(&s->gem1), nd); > - } > + qemu_configure_nic_device(DEVICE(&s->gem0), true, NULL); > + qemu_configure_nic_device(DEVICE(&s->gem1), true, NULL); > > object_property_set_int(OBJECT(&s->gem0), "revision", GEM_REVISION, errp); > object_property_set_int(OBJECT(&s->gem0), "phy-addr", 8, errp); > diff --git a/hw/riscv/sifive_u.c b/hw/riscv/sifive_u.c > index ec76dce6c9..5207ec1fa5 100644 > --- a/hw/riscv/sifive_u.c > +++ b/hw/riscv/sifive_u.c > @@ -789,7 +789,6 @@ static void sifive_u_soc_realize(DeviceState *dev, Error **errp) > MemoryRegion *l2lim_mem = g_new(MemoryRegion, 1); > char *plic_hart_config; > int i, j; > - NICInfo *nd = &nd_table[0]; > > qdev_prop_set_uint32(DEVICE(&s->u_cpus), "num-harts", ms->smp.cpus - 1); > qdev_prop_set_uint32(DEVICE(&s->u_cpus), "hartid-base", 1); > @@ -893,11 +892,7 @@ static void sifive_u_soc_realize(DeviceState *dev, Error **errp) > } > sysbus_mmio_map(SYS_BUS_DEVICE(&s->otp), 0, memmap[SIFIVE_U_DEV_OTP].base); > > - /* FIXME use qdev NIC properties instead of nd_table[] */ > - if (nd->used) { > - qemu_check_nic_model(nd, TYPE_CADENCE_GEM); > - qdev_set_nic_properties(DEVICE(&s->gem), nd); > - } > + qemu_configure_nic_device(DEVICE(&s->gem), true, NULL); > object_property_set_int(OBJECT(&s->gem), "revision", GEM_REVISION, > &error_abort); > if (!sysbus_realize(SYS_BUS_DEVICE(&s->gem), errp)) {
On Wed, 2023-10-25 at 12:42 -0300, Daniel Henrique Barboza wrote: > > I believe you forgot to remove the 'nd' variable. Building with this patch (applying > patches 1 to 4 first) fails with: > > > ../hw/riscv/microchip_pfsoc.c: In function ‘microchip_pfsoc_soc_realize’: > ../hw/riscv/microchip_pfsoc.c:205:14: error: unused variable ‘nd’ [-Werror=unused-variable] > 205 | NICInfo *nd; > | ^~ > cc1: all warnings being treated as errors > > > Patch looks good otherwise. Thanks, > > Daniel Thanks. Yes, I'd spotted that my build coverage was incomplete and fixed a few of those. My tree at https://git.infradead.org/users/dwmw2/qemu.git/shortlog/refs/heads/xenfv does actually build now on all platforms, and the CI tests ran in https://gitlab.com/dwmw2/qemu/-/pipelines/1049153457 with only a minor whine from checkpatch about the imported Xen headers and some long lines which were like that before I touched them. I haven't yet re-spammed the list with the 40-odd patches touching all the platforms though, as noted in https://lore.kernel.org/qemu-devel/20231025145042.627381-1-dwmw2@infradead.org/T/
diff --git a/hw/riscv/microchip_pfsoc.c b/hw/riscv/microchip_pfsoc.c index b775aa8946..8e0e3aa20c 100644 --- a/hw/riscv/microchip_pfsoc.c +++ b/hw/riscv/microchip_pfsoc.c @@ -411,17 +411,8 @@ static void microchip_pfsoc_soc_realize(DeviceState *dev, Error **errp) memmap[MICROCHIP_PFSOC_USB].size); /* GEMs */ - - nd = &nd_table[0]; - if (nd->used) { - qemu_check_nic_model(nd, TYPE_CADENCE_GEM); - qdev_set_nic_properties(DEVICE(&s->gem0), nd); - } - nd = &nd_table[1]; - if (nd->used) { - qemu_check_nic_model(nd, TYPE_CADENCE_GEM); - qdev_set_nic_properties(DEVICE(&s->gem1), nd); - } + qemu_configure_nic_device(DEVICE(&s->gem0), true, NULL); + qemu_configure_nic_device(DEVICE(&s->gem1), true, NULL); object_property_set_int(OBJECT(&s->gem0), "revision", GEM_REVISION, errp); object_property_set_int(OBJECT(&s->gem0), "phy-addr", 8, errp); diff --git a/hw/riscv/sifive_u.c b/hw/riscv/sifive_u.c index ec76dce6c9..5207ec1fa5 100644 --- a/hw/riscv/sifive_u.c +++ b/hw/riscv/sifive_u.c @@ -789,7 +789,6 @@ static void sifive_u_soc_realize(DeviceState *dev, Error **errp) MemoryRegion *l2lim_mem = g_new(MemoryRegion, 1); char *plic_hart_config; int i, j; - NICInfo *nd = &nd_table[0]; qdev_prop_set_uint32(DEVICE(&s->u_cpus), "num-harts", ms->smp.cpus - 1); qdev_prop_set_uint32(DEVICE(&s->u_cpus), "hartid-base", 1); @@ -893,11 +892,7 @@ static void sifive_u_soc_realize(DeviceState *dev, Error **errp) } sysbus_mmio_map(SYS_BUS_DEVICE(&s->otp), 0, memmap[SIFIVE_U_DEV_OTP].base); - /* FIXME use qdev NIC properties instead of nd_table[] */ - if (nd->used) { - qemu_check_nic_model(nd, TYPE_CADENCE_GEM); - qdev_set_nic_properties(DEVICE(&s->gem), nd); - } + qemu_configure_nic_device(DEVICE(&s->gem), true, NULL); object_property_set_int(OBJECT(&s->gem), "revision", GEM_REVISION, &error_abort); if (!sysbus_realize(SYS_BUS_DEVICE(&s->gem), errp)) {