Re: [Qemu-devel] [PATCH 10/15] hw/sparc64/niagara: Replace 'empty_slot' by 'unimplemented_device'

2018-10-02 Thread Artyom Tarasenko
On Tue, Oct 2, 2018 at 3:24 PM Peter Maydell  wrote:
>
> On 1 October 2018 at 23:09, Philippe Mathieu-Daudé  wrote:
> > The TYPE_EMPTY_SLOT and TYPE_UNIMPLEMENTED_DEVICE are identical devices,
> > however the later use more recent APIs and is more widely used.
> >
> > Replace 'empty_slot' by 'unimplemented_device' to simplify devices code
> > maintenance.
> >
> > Signed-off-by: Philippe Mathieu-Daudé 
> > ---
>
> > @@ -161,7 +161,7 @@ static void niagara_init(MachineState *machine)
> >  serial_mm_init(sysmem, NIAGARA_UART_BASE, 0, NULL, 115200,
> > serial_hd(0), DEVICE_BIG_ENDIAN);
> >  }
> > -empty_slot_init(NIAGARA_IOBBASE, NIAGARA_IOBSIZE);
> > +create_unimplemented_device("sun4v-iob", NIAGARA_IOBBASE, 
> > NIAGARA_IOBSIZE);
> >  sun4v_rtc_init(NIAGARA_RTC_BASE);
> >  }
>
> Is this actually an unimplemented (missing) device, or are we
> implementing hardware-defined "no bus errors when this range is
> touched" behaviour ?

In this case it's really an unimplemented device. But in sun4m (patch
11/15) it's
"no bus errors when this range is touched" behaviour.

Artyom

--
Regards,
Artyom Tarasenko

SPARC and PPC PReP under qemu blog: http://tyom.blogspot.com/search/label/qemu



Re: [Qemu-devel] [PATCH 10/15] hw/sparc64/niagara: Replace 'empty_slot' by 'unimplemented_device'

2018-10-02 Thread Peter Maydell
On 1 October 2018 at 23:09, Philippe Mathieu-Daudé  wrote:
> The TYPE_EMPTY_SLOT and TYPE_UNIMPLEMENTED_DEVICE are identical devices,
> however the later use more recent APIs and is more widely used.
>
> Replace 'empty_slot' by 'unimplemented_device' to simplify devices code
> maintenance.
>
> Signed-off-by: Philippe Mathieu-Daudé 
> ---

> @@ -161,7 +161,7 @@ static void niagara_init(MachineState *machine)
>  serial_mm_init(sysmem, NIAGARA_UART_BASE, 0, NULL, 115200,
> serial_hd(0), DEVICE_BIG_ENDIAN);
>  }
> -empty_slot_init(NIAGARA_IOBBASE, NIAGARA_IOBSIZE);
> +create_unimplemented_device("sun4v-iob", NIAGARA_IOBBASE, 
> NIAGARA_IOBSIZE);
>  sun4v_rtc_init(NIAGARA_RTC_BASE);
>  }

Is this actually an unimplemented (missing) device, or are we
implementing hardware-defined "no bus errors when this range is
touched" behaviour ?

thanks
-- PMM



[Qemu-devel] [PATCH 10/15] hw/sparc64/niagara: Replace 'empty_slot' by 'unimplemented_device'

2018-10-01 Thread Philippe Mathieu-Daudé
The TYPE_EMPTY_SLOT and TYPE_UNIMPLEMENTED_DEVICE are identical devices,
however the later use more recent APIs and is more widely used.

Replace 'empty_slot' by 'unimplemented_device' to simplify devices code
maintenance.

Signed-off-by: Philippe Mathieu-Daudé 
---
 default-configs/sparc64-softmmu.mak | 1 -
 hw/sparc64/niagara.c| 4 ++--
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/default-configs/sparc64-softmmu.mak 
b/default-configs/sparc64-softmmu.mak
index 52edafe547..ce63d47046 100644
--- a/default-configs/sparc64-softmmu.mak
+++ b/default-configs/sparc64-softmmu.mak
@@ -16,5 +16,4 @@ CONFIG_SIMBA=y
 CONFIG_SUNHME=y
 CONFIG_MC146818RTC=y
 CONFIG_ISA_TESTDEV=y
-CONFIG_EMPTY_SLOT=y
 CONFIG_SUN4V_RTC=y
diff --git a/hw/sparc64/niagara.c b/hw/sparc64/niagara.c
index 4fa8cb2904..f8a856f611 100644
--- a/hw/sparc64/niagara.c
+++ b/hw/sparc64/niagara.c
@@ -29,7 +29,7 @@
 #include "hw/hw.h"
 #include "hw/boards.h"
 #include "hw/char/serial.h"
-#include "hw/empty_slot.h"
+#include "hw/misc/unimp.h"
 #include "hw/loader.h"
 #include "hw/sparc/sparc64.h"
 #include "hw/timer/sun4v-rtc.h"
@@ -161,7 +161,7 @@ static void niagara_init(MachineState *machine)
 serial_mm_init(sysmem, NIAGARA_UART_BASE, 0, NULL, 115200,
serial_hd(0), DEVICE_BIG_ENDIAN);
 }
-empty_slot_init(NIAGARA_IOBBASE, NIAGARA_IOBSIZE);
+create_unimplemented_device("sun4v-iob", NIAGARA_IOBBASE, NIAGARA_IOBSIZE);
 sun4v_rtc_init(NIAGARA_RTC_BASE);
 }
 
-- 
2.19.0