From: Peter Maydell <peter.maydell@linaro.org>
To: qemu-arm@nongnu.org, qemu-devel@nongnu.org
Cc: patches@linaro.org
Subject: [Qemu-devel] [PATCH 1/6] hw/arm/palm.c: Don't use old_mmio for static_ops
Date: Sat, 16 Sep 2017 17:46:13 +0100 [thread overview]
Message-ID: <1505580378-9044-2-git-send-email-peter.maydell@linaro.org> (raw)
In-Reply-To: <1505580378-9044-1-git-send-email-peter.maydell@linaro.org>
Update the static_ops functions to use new-style mmio
rather than the legacy old_mmio functions.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
hw/arm/palm.c | 30 ++++++++++--------------------
1 file changed, 10 insertions(+), 20 deletions(-)
diff --git a/hw/arm/palm.c b/hw/arm/palm.c
index bf070a2..264f5bd 100644
--- a/hw/arm/palm.c
+++ b/hw/arm/palm.c
@@ -30,26 +30,16 @@
#include "hw/loader.h"
#include "exec/address-spaces.h"
-static uint32_t static_readb(void *opaque, hwaddr offset)
+static uint64_t static_read(void *opaque, hwaddr offset, unsigned size)
{
- uint32_t *val = (uint32_t *) opaque;
- return *val >> ((offset & 3) << 3);
-}
+ uint32_t *val = (uint32_t *)opaque;
+ uint32_t sizemask = 7 >> size;
-static uint32_t static_readh(void *opaque, hwaddr offset)
-{
- uint32_t *val = (uint32_t *) opaque;
- return *val >> ((offset & 1) << 3);
-}
-
-static uint32_t static_readw(void *opaque, hwaddr offset)
-{
- uint32_t *val = (uint32_t *) opaque;
- return *val >> ((offset & 0) << 3);
+ return *val >> ((offset & sizemask) << 3);
}
-static void static_write(void *opaque, hwaddr offset,
- uint32_t value)
+static void static_write(void *opaque, hwaddr offset, uint64_t value,
+ unsigned size)
{
#ifdef SPY
printf("%s: value %08lx written at " PA_FMT "\n",
@@ -58,10 +48,10 @@ static void static_write(void *opaque, hwaddr offset,
}
static const MemoryRegionOps static_ops = {
- .old_mmio = {
- .read = { static_readb, static_readh, static_readw, },
- .write = { static_write, static_write, static_write, },
- },
+ .read = static_read,
+ .write = static_write,
+ .valid.min_access_size = 1,
+ .valid.max_access_size = 4,
.endianness = DEVICE_NATIVE_ENDIAN,
};
--
2.7.4
next prev parent reply other threads:[~2017-09-16 16:46 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-16 16:46 [Qemu-devel] [PATCH 0/6] convert some omap/palm devices from using old_mmio Peter Maydell
2017-09-16 16:46 ` Peter Maydell [this message]
2017-09-20 20:59 ` [Qemu-devel] [PATCH 1/6] hw/arm/palm.c: Don't use old_mmio for static_ops Richard Henderson
2017-09-16 16:46 ` [Qemu-devel] [PATCH 2/6] hw/gpio/omap_gpio.c: Don't use old_mmio Peter Maydell
2017-09-20 21:00 ` Richard Henderson
2017-09-16 16:46 ` [Qemu-devel] [PATCH 3/6] hw/timer/omap_synctimer.c: " Peter Maydell
2017-09-20 21:02 ` Richard Henderson
2017-09-16 16:46 ` [Qemu-devel] [PATCH 4/6] hw/timer/omap_gptimer: " Peter Maydell
2017-09-20 21:02 ` Richard Henderson
2017-09-16 16:46 ` [Qemu-devel] [PATCH 5/6] hw/i2c/omap_i2c.c: " Peter Maydell
2017-09-20 21:03 ` Richard Henderson
2017-09-16 16:46 ` [Qemu-devel] [PATCH 6/6] hw/arm/omap2.c: " Peter Maydell
2017-09-20 21:04 ` Richard Henderson
2017-09-17 13:21 ` [Qemu-devel] [PATCH 0/6] convert some omap/palm devices from using old_mmio Mark Cave-Ayland
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=1505580378-9044-2-git-send-email-peter.maydell@linaro.org \
--to=peter.maydell@linaro.org \
--cc=patches@linaro.org \
--cc=qemu-arm@nongnu.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).