qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Avi Kivity <avi@redhat.com>
To: qemu-devel@nongnu.org
Cc: kvm@vger.kernel.org
Subject: [Qemu-devel] [PATCH 02/24] apic: convert to memory API
Date: Mon,  8 Aug 2011 20:06:47 +0300	[thread overview]
Message-ID: <1312823229-12822-3-git-send-email-avi@redhat.com> (raw)
In-Reply-To: <1312823229-12822-1-git-send-email-avi@redhat.com>

Signed-off-by: Avi Kivity <avi@redhat.com>
---
 hw/apic.c |   25 ++++++++++---------------
 1 files changed, 10 insertions(+), 15 deletions(-)

diff --git a/hw/apic.c b/hw/apic.c
index 9febf40..7d0b0f6 100644
--- a/hw/apic.c
+++ b/hw/apic.c
@@ -80,6 +80,7 @@ typedef struct APICState APICState;
 
 struct APICState {
     SysBusDevice busdev;
+    MemoryRegion io_memory;
     void *cpu_env;
     uint32_t apicbase;
     uint8_t id;
@@ -979,31 +980,25 @@ static void apic_reset(DeviceState *d)
     }
 }
 
-static CPUReadMemoryFunc * const apic_mem_read[3] = {
-    apic_mem_readb,
-    apic_mem_readw,
-    apic_mem_readl,
-};
-
-static CPUWriteMemoryFunc * const apic_mem_write[3] = {
-    apic_mem_writeb,
-    apic_mem_writew,
-    apic_mem_writel,
+static const MemoryRegionOps apic_io_ops = {
+    .old_mmio = {
+        .read = { apic_mem_readb, apic_mem_readw, apic_mem_readl, },
+        .write = { apic_mem_writeb, apic_mem_writew, apic_mem_writel, },
+    },
+    .endianness = DEVICE_NATIVE_ENDIAN,
 };
 
 static int apic_init1(SysBusDevice *dev)
 {
     APICState *s = FROM_SYSBUS(APICState, dev);
-    int apic_io_memory;
     static int last_apic_idx;
 
     if (last_apic_idx >= MAX_APICS) {
         return -1;
     }
-    apic_io_memory = cpu_register_io_memory(apic_mem_read,
-                                            apic_mem_write, NULL,
-                                            DEVICE_NATIVE_ENDIAN);
-    sysbus_init_mmio(dev, MSI_ADDR_SIZE, apic_io_memory);
+    memory_region_init_io(&s->io_memory, &apic_io_ops, s, "apic",
+                          MSI_ADDR_SIZE);
+    sysbus_init_mmio_region(dev, &s->io_memory);
 
     s->timer = qemu_new_timer_ns(vm_clock, apic_timer, s);
     s->idx = last_apic_idx++;
-- 
1.7.5.3

  parent reply	other threads:[~2011-08-08 17:08 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-08 17:06 [Qemu-devel] [PATCH 00/24] Memory API batch 4: more conversions Avi Kivity
2011-08-08 17:06 ` [Qemu-devel] [PATCH 01/24] apb_pci: convert to memory API Avi Kivity
2011-08-08 17:06 ` Avi Kivity [this message]
2011-08-08 17:06 ` [Qemu-devel] [PATCH 03/24] arm_gic: " Avi Kivity
2011-08-08 17:06 ` [Qemu-devel] [PATCH 04/24] arm_sysctl: " Avi Kivity
2011-08-08 17:06 ` [Qemu-devel] [PATCH 05/24] arm_timer: " Avi Kivity
2011-08-08 17:06 ` [Qemu-devel] [PATCH 06/24] armv7m: " Avi Kivity
2011-08-08 17:06 ` [Qemu-devel] [PATCH 07/24] gt64xxx.c: " Avi Kivity
2011-08-08 17:06 ` [Qemu-devel] [PATCH 08/24] tusb6010: move declarations to new file tusb6010.h Avi Kivity
2011-08-09  7:51   ` Peter Maydell
2011-08-09  9:02     ` [Qemu-devel] [PATCH v1.1 " Avi Kivity
2011-08-08 17:06 ` [Qemu-devel] [PATCH 09/24] omap_gpmc/nseries/tusb6010: convert to memory API Avi Kivity
2011-08-08 17:43   ` Peter Maydell
2011-08-09  6:34     ` Avi Kivity
2011-08-09  7:37       ` Peter Maydell
2011-08-09  7:41         ` Avi Kivity
2011-08-09  8:07           ` Peter Maydell
2011-08-09  8:44             ` Avi Kivity
2011-08-09  8:56               ` Avi Kivity
2011-08-09  9:02                 ` [Qemu-devel] [PATCH v1.1 " Avi Kivity
2011-08-09  9:23                   ` Peter Maydell
2011-08-09  9:26                     ` Avi Kivity
2011-08-09  9:41                       ` Peter Maydell
2011-08-09 12:56                         ` Avi Kivity
2011-08-09 13:06                         ` [Qemu-devel] [PATCH v1.2 " Avi Kivity
2011-08-08 17:06 ` [Qemu-devel] [PATCH 10/24] onenand: " Avi Kivity
2011-08-08 17:06 ` [Qemu-devel] [PATCH 11/24] pcie_host: " Avi Kivity
2011-08-08 17:06 ` [Qemu-devel] [PATCH 12/24] ppc405_uc: " Avi Kivity
2011-08-08 17:06 ` [Qemu-devel] [PATCH 13/24] ppc4xx_sdram: " Avi Kivity
2011-08-08 17:06 ` [Qemu-devel] [PATCH 14/24] stellaris_enet: " Avi Kivity
2011-08-08 17:07 ` [Qemu-devel] [PATCH 15/24] sysbus: add a variant of sysbus_init_mmio_cb with an unmap callback Avi Kivity
2011-08-08 17:07 ` [Qemu-devel] [PATCH 16/24] sh_pci: convert to memory API Avi Kivity
2011-08-08 17:07 ` [Qemu-devel] [PATCH 17/24] arm11mpcore: use sysbus_init_mmio_cb2 Avi Kivity
2011-08-12 13:23   ` Peter Maydell
2011-08-14 18:45     ` Avi Kivity
2011-08-08 17:07 ` [Qemu-devel] [PATCH 18/24] versatile_pci: convert to memory API Avi Kivity
2011-08-11 16:20   ` Peter Maydell
2011-08-11 16:26     ` Avi Kivity
2011-08-11 16:29     ` [Qemu-devel] [PATCH v1.1 " Avi Kivity
2011-08-11 21:53       ` Peter Maydell
2011-08-14 18:31         ` Avi Kivity
2011-08-08 17:07 ` [Qemu-devel] [PATCH 19/24] ppce500_pci: convert to sysbus_init_mmio_cb2() Avi Kivity
2011-08-08 17:07 ` [Qemu-devel] [PATCH 20/24] sysbus: remove sysbus_init_mmio_cb() Avi Kivity
2011-08-08 17:07 ` [Qemu-devel] [PATCH 21/24] isa: add isa_address_space() Avi Kivity
2011-08-10 16:24   ` Richard Henderson
2011-08-10 16:26     ` Richard Henderson
2011-08-10 16:35       ` Avi Kivity
2011-08-10 16:38         ` Avi Kivity
2011-08-10 18:44       ` Avi Kivity
2011-08-10 16:32     ` Avi Kivity
2011-08-08 17:07 ` [Qemu-devel] [PATCH 22/24] pci: add pci_address_space() Avi Kivity
2011-08-08 17:07 ` [Qemu-devel] [PATCH 23/24] vga: drop get_system_memory() from vga devices and derivatives Avi Kivity
2011-08-08 17:07 ` [Qemu-devel] [PATCH 24/24] 440fx: fix PAM, PCI holes Avi Kivity

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=1312823229-12822-3-git-send-email-avi@redhat.com \
    --to=avi@redhat.com \
    --cc=kvm@vger.kernel.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).