On 11/10/2023 19:59, Philippe Mathieu-Daudé wrote:
> PCI functions are plugged on a PCI bus. They can only access
> external memory regions via the bus.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
> hw/sparc64/sun4u.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/hw/sparc64/sun4u.c b/hw/sparc64/sun4u.c
> index d908a38f73..c871170378 100644
> --- a/hw/sparc64/sun4u.c
> +++ b/hw/sparc64/sun4u.c
> @@ -360,11 +360,11 @@ static void ebus_realize(PCIDevice *pci_dev, Error **errp)
> pci_dev->config[0x09] = 0x00; // programming i/f
> pci_dev->config[0x0D] = 0x0a; // latency_timer
>
> - memory_region_init_alias(&s->bar0, OBJECT(s), "bar0", get_system_io(),
> - 0, 0x1000000);
> + memory_region_init_alias(&s->bar0, OBJECT(s), "bar0",
> + pci_address_space_io(pci_dev), 0, 0x1000000);
> pci_register_bar(pci_dev, 0, PCI_BASE_ADDRESS_SPACE_MEMORY, &s->bar0);
> - memory_region_init_alias(&s->bar1, OBJECT(s), "bar1", get_system_io(),
> - 0, 0x8000);
> + memory_region_init_alias(&s->bar1, OBJECT(s), "bar1",
> + pci_address_space_io(pci_dev), 0, 0x8000);
> pci_register_bar(pci_dev, 1, PCI_BASE_ADDRESS_SPACE_IO, &s->bar1);
> }
Nice!
Reviewed-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
ATB,
Mark.