[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] sun4u: remap ebus BAR0 to use unassigned_io_ops instead of a
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PATCH] sun4u: remap ebus BAR0 to use unassigned_io_ops instead of alias to PCI IO space |
Date: |
Mon, 11 Mar 2024 09:28:32 +0100 |
User-agent: |
Mozilla Thunderbird |
On 11/3/24 07:43, Mark Cave-Ayland wrote:
During kernel startup OpenBSD accesses addresses mapped by BAR0 of the ebus
device
but at offsets where no IO devices exist. Before commit 4aa07e8649
("hw/sparc64/ebus:
Access memory regions via pci_address_space_io()") BAR0 was mapped to legacy IO
space which allows accesses to unmapped devices to succeed, but afterwards these
accesses to unmapped PCI IO space cause a memory fault which prevents OpenBSD
from
booting.
Since no devices are mapped at the addresses accessed by OpenBSD, change ebus
BAR0
from a PCI IO space alias to an IO memory region using unassigned_io_ops which
allows
these accesses to succeed and so allows OpenBSD to boot once again.
Fixes: 4aa07e8649 ("hw/sparc64/ebus: Access memory regions via
pci_address_space_io()")
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
[MCA: I'd like to merge this for 9.0 since I've been carrying various local
workarounds
to allow OpenBSD to boot on SPARC64 for some time.]
Sure.
hw/sparc64/sun4u.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)