On Tue, 26 Nov 2024 at 11:23, Philippe Mathieu-Daudé <[email protected]> wrote: > > Expose the "refuse-bar-at-addr-0" property so machines > using a GPEX host bridge can set this flag on the bus. > While the default property is set to 'false', all caller > set it to 'true' so there is no logical change so far. > > Signed-off-by: Philippe Mathieu-Daudé <[email protected]> > --- > include/hw/pci-host/gpex.h | 1 + > hw/arm/sbsa-ref.c | 2 ++ > hw/arm/virt.c | 2 ++ > hw/i386/microvm.c | 2 ++ > hw/loongarch/virt.c | 2 ++ > hw/mips/loongson3_virt.c | 2 ++ > hw/openrisc/virt.c | 2 ++ > hw/pci-host/gpex.c | 4 +++- > hw/riscv/virt.c | 2 ++ > hw/xen/xen-pvh-common.c | 2 ++ > hw/xtensa/virt.c | 2 ++ > 11 files changed, 22 insertions(+), 1 deletion(-) > > diff --git a/include/hw/pci-host/gpex.h b/include/hw/pci-host/gpex.h > index dce883573ba..44c6463afb3 100644 > --- a/include/hw/pci-host/gpex.h > +++ b/include/hw/pci-host/gpex.h > @@ -64,6 +64,7 @@ struct GPEXHost { > int irq_num[GPEX_NUM_IRQS]; > > bool allow_unmapped_accesses; > + bool refuse_bar_at_addr_0; > > struct GPEXConfig gpex_cfg; > }; > diff --git a/hw/arm/sbsa-ref.c b/hw/arm/sbsa-ref.c > index e3195d54497..f6cf43cf0c9 100644 > --- a/hw/arm/sbsa-ref.c > +++ b/hw/arm/sbsa-ref.c > @@ -647,6 +647,8 @@ static void create_pcie(SBSAMachineState *sms) > int i; > > dev = qdev_new(TYPE_GPEX_HOST); > + object_property_set_bool(OBJECT(dev), "refuse-bar-at-addr-0", > + true, &error_fatal); > sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); > > /* Map ECAM space */ > diff --git a/hw/arm/virt.c b/hw/arm/virt.c > index 1a381e9a2bd..06affc3638b 100644 > --- a/hw/arm/virt.c > +++ b/hw/arm/virt.c > @@ -1510,6 +1510,8 @@ static void create_pcie(VirtMachineState *vms) > MachineClass *mc = MACHINE_GET_CLASS(ms); > > dev = qdev_new(TYPE_GPEX_HOST); > + object_property_set_bool(OBJECT(dev), "refuse-bar-at-addr-0", > + true, &error_fatal); > sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); > > ecam_id = VIRT_ECAM_ID(vms->highmem_ecam);
These don't look right, because both virt and sbsa-ref set mc->pci_allow_0_address = true. And in the next patch you delete them again... -- PMM
