qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Maydell <peter.maydell@linaro.org>
To: "Philippe Mathieu-Daudé" <f4bug@amsat.org>
Cc: "Cédric Le Goater" <clg@kaod.org>,
	"QEMU Developers" <qemu-devel@nongnu.org>,
	"Eduardo Habkost" <ehabkost@redhat.com>,
	"Aurelien Jarno" <aurelien@aurel32.net>,
	"Aleksandar Markovic" <amarkovic@wavecomp.com>
Subject: Re: [Qemu-devel] [PATCH 09/15] hw/mips/malta: Replace 'empty_slot' by 'unimplemented_device'
Date: Tue, 2 Oct 2018 14:23:24 +0100	[thread overview]
Message-ID: <CAFEAcA_DBU6-_EqZP2-bh+JkWeP3s9kcrtJSHLmeziPYcU0nnQ@mail.gmail.com> (raw)
In-Reply-To: <20181001220942.2382-10-f4bug@amsat.org>

On 1 October 2018 at 23:09, Philippe Mathieu-Daudé <f4bug@amsat.org> 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é <f4bug@amsat.org>
> ---
>  default-configs/mips-softmmu-common.mak | 1 -
>  hw/mips/mips_malta.c                    | 4 ++--
>  2 files changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/default-configs/mips-softmmu-common.mak b/default-configs/mips-softmmu-common.mak
> index fae2347ee7..f9d664e120 100644
> --- a/default-configs/mips-softmmu-common.mak
> +++ b/default-configs/mips-softmmu-common.mak
> @@ -32,7 +32,6 @@ CONFIG_PFLASH_CFI01=y
>  CONFIG_I8259=y
>  CONFIG_MC146818RTC=y
>  CONFIG_ISA_TESTDEV=y
> -CONFIG_EMPTY_SLOT=y
>  CONFIG_MIPS_CPS=y
>  CONFIG_MIPS_ITU=y
>  CONFIG_I2C=y
> diff --git a/hw/mips/mips_malta.c b/hw/mips/mips_malta.c
> index 40041d5ec0..4ccfa87c35 100644
> --- a/hw/mips/mips_malta.c
> +++ b/hw/mips/mips_malta.c
> @@ -53,7 +53,7 @@
>  #include "sysemu/qtest.h"
>  #include "qapi/error.h"
>  #include "qemu/error-report.h"
> -#include "hw/empty_slot.h"
> +#include "hw/misc/unimp.h"
>  #include "sysemu/kvm.h"
>  #include "exec/semihost.h"
>  #include "hw/mips/cps.h"
> @@ -1216,7 +1216,7 @@ void mips_malta_init(MachineState *machine)
>      /* The whole address space decoded by the GT-64120A doesn't generate
>         exception when accessing invalid memory. Create an empty slot to
>         emulate this feature. */
> -    empty_slot_init(0, 0x20000000);
> +    create_unimplemented_device("gt64120-SysAD", 0, 0x20000000);
>
>      qdev_init_nofail(dev);

Not sure about this one. unimplemented_device means "there should
be something here, but QEMU's model is incomplete", and if the user
asks for 'unimp' warnings via the -d option then all accesses will
generate logging. In this MIPS board, we're modelling the hardware's
actual behaviour, and we shouldn't generate debug messages that
imply that QEMU has unimplemented functionality here.

If we were writing a model of the Malta board from scratch we'd
probably do it by having the GT-64120A be modelled as a device
which was a container object that instantiated all its various
bits and pieces and mapped them into a MemoryRegion that spanned
the whole 1GB size of that part of the address space. We could
then give that MR a background region with the "RAZ/WI" behaviour
the hardware requires.

thanks
-- PMM

  reply	other threads:[~2018-10-02 13:23 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-01 22:09 [Qemu-devel] [PATCH 00/15] another SysBusDevice::init to Device::realize cleanup Philippe Mathieu-Daudé
2018-10-01 22:09 ` [Qemu-devel] [PATCH 01/15] trace-events: Fix copy/paste typo Philippe Mathieu-Daudé
2018-10-02 13:10   ` Peter Maydell
2018-10-02 15:49   ` Cédric Le Goater
2018-10-01 22:09 ` [Qemu-devel] [PATCH 02/15] hw/timer/sun4v-rtc: Convert from DPRINTF() macro to trace events Philippe Mathieu-Daudé
2018-10-02 11:30   ` Artyom Tarasenko
2018-10-02 15:49   ` Cédric Le Goater
2018-10-01 22:09 ` [Qemu-devel] [PATCH 03/15] hw/timer/sun4v-rtc: Use DeviceState::realize rather than SysBusDevice::init Philippe Mathieu-Daudé
2018-10-02  8:38   ` Thomas Huth
2018-10-02 15:49   ` Cédric Le Goater
2018-10-01 22:09 ` [Qemu-devel] [PATCH 04/15] hw/ssi/xilinx_spi: " Philippe Mathieu-Daudé
2018-10-02  8:40   ` Thomas Huth
2018-10-02 15:49   ` Cédric Le Goater
2018-10-04 17:29   ` Alistair Francis
2018-10-01 22:09 ` [Qemu-devel] [PATCH 05/15] hw/sh4/sh_pci: " Philippe Mathieu-Daudé
2018-10-02 13:13   ` Peter Maydell
2018-10-02 19:59     ` Philippe Mathieu-Daudé
2018-10-02 20:37       ` Marcel Apfelbaum
2018-10-02 20:59         ` Philippe Mathieu-Daudé
2018-10-02 15:49   ` Cédric Le Goater
2018-10-01 22:09 ` [Qemu-devel] [PATCH 06/15] hw/pci-host/bonito: " Philippe Mathieu-Daudé
2018-10-02 21:24   ` Philippe Mathieu-Daudé
2018-10-01 22:09 ` [Qemu-devel] [PATCH 07/15] hw/mips/gt64xxx_pci: Convert gt64120_reset() function into Device reset method Philippe Mathieu-Daudé
2018-10-02 13:15   ` Peter Maydell
2018-10-02 15:49   ` Cédric Le Goater
2018-10-01 22:09 ` [Qemu-devel] [PATCH 08/15] hw/mips/gt64xxx_pci: Mark as bridge device Philippe Mathieu-Daudé
2018-10-02 13:16   ` Peter Maydell
2018-10-02 15:49   ` Cédric Le Goater
2018-10-01 22:09 ` [Qemu-devel] [PATCH 09/15] hw/mips/malta: Replace 'empty_slot' by 'unimplemented_device' Philippe Mathieu-Daudé
2018-10-02 13:23   ` Peter Maydell [this message]
2018-10-02 19:40     ` Philippe Mathieu-Daudé
2018-10-03  9:28       ` Peter Maydell
2018-10-01 22:09 ` [Qemu-devel] [PATCH 10/15] hw/sparc64/niagara: " Philippe Mathieu-Daudé
2018-10-02 13:24   ` Peter Maydell
2018-10-02 15:50     ` Artyom Tarasenko
2018-10-01 22:09 ` [Qemu-devel] [PATCH 11/15] hw/sparc/sun4m: " Philippe Mathieu-Daudé
2018-10-02  8:14   ` Artyom Tarasenko
2018-10-02 21:32     ` Philippe Mathieu-Daudé
2018-10-01 22:09 ` [Qemu-devel] [PATCH 12/15] hw/core: Remove the 'empty_slot' device Philippe Mathieu-Daudé
2018-10-01 22:09 ` [Qemu-devel] [RFC PATCH 13/15] hw/alpha/typhoon: Remove unuseful code Philippe Mathieu-Daudé
2018-10-02  8:34   ` Thomas Huth
2018-10-01 22:09 ` [Qemu-devel] [RFC PATCH 14/15] hw/hppa/dino: " Philippe Mathieu-Daudé
2018-10-02  8:35   ` Thomas Huth
2018-10-01 22:09 ` [Qemu-devel] [RFC PATCH 15/15] hw/mips/malta: " Philippe Mathieu-Daudé
2018-10-02  8:36   ` Thomas Huth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAFEAcA_DBU6-_EqZP2-bh+JkWeP3s9kcrtJSHLmeziPYcU0nnQ@mail.gmail.com \
    --to=peter.maydell@linaro.org \
    --cc=amarkovic@wavecomp.com \
    --cc=aurelien@aurel32.net \
    --cc=clg@kaod.org \
    --cc=ehabkost@redhat.com \
    --cc=f4bug@amsat.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).