On 9/12/21 9:49 AM, Mark Cave-Ayland wrote:
> According to "Designing Cards and Drivers for the Macintosh Family" any 
> attempt
> to access an unimplemented address location on Nubus generates a bus error. 
> MacOS
> uses a custom bus error handler to detect empty Nubus slots, and with the 
> current
> implementation assumes that all slots are occupied as the Nubus transactions
> never fail.
> 
> Switch nubus_slot_ops and nubus_super_slot_ops over to use 
> {read,write}_with_attrs
> and hard-code them to return MEMTX_DECODE_ERROR so that unoccupied Nubus slots
> will generate the expected bus error.
> 
> Signed-off-by: Mark Cave-Ayland <mark.cave-ayl...@ilande.co.uk>
> ---
>  hw/nubus/nubus-bus.c | 34 ++++++++++++++++++----------------
>  1 file changed, 18 insertions(+), 16 deletions(-)

Reviewed-by: Philippe Mathieu-Daudé <f4...@amsat.org>

Reply via email to