qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Richard Henderson <rth@twiddle.net>
To: qemu-devel@nongnu.org
Cc: avi@redhat.com
Subject: [Qemu-devel] [PATCH 10/16] parallel: Convert to isa_register_portio_list.
Date: Tue, 23 Aug 2011 17:13:49 -0700	[thread overview]
Message-ID: <1314144835-29098-11-git-send-email-rth@twiddle.net> (raw)
In-Reply-To: <1314144835-29098-1-git-send-email-rth@twiddle.net>

Signed-off-by: Richard Henderson <rth@twiddle.net>
---
 hw/parallel.c |   47 ++++++++++++++++++++++++++++-------------------
 1 files changed, 28 insertions(+), 19 deletions(-)

diff --git a/hw/parallel.c b/hw/parallel.c
index ecbc8c3..8494d94 100644
--- a/hw/parallel.c
+++ b/hw/parallel.c
@@ -448,6 +448,29 @@ static void parallel_reset(void *opaque)
 
 static const int isa_parallel_io[MAX_PARALLEL_PORTS] = { 0x378, 0x278, 0x3bc };
 
+static const MemoryRegionPortio isa_parallel_portio_hw_list[] = {
+    { 0, 8, 1,
+      .read = parallel_ioport_read_hw,
+      .write = parallel_ioport_write_hw },
+    { 4, 1, 2,
+      .read = parallel_ioport_eppdata_read_hw2,
+      .write = parallel_ioport_eppdata_write_hw2 },
+    { 4, 1, 4,
+      .read = parallel_ioport_eppdata_read_hw4,
+      .write = parallel_ioport_eppdata_write_hw4 },
+    { 0x400, 8, 1,
+      .read = parallel_ioport_ecp_read,
+      .write = parallel_ioport_ecp_write },
+    PORTIO_END_OF_LIST(),
+};
+
+static const MemoryRegionPortio isa_parallel_portio_sw_list[] = {
+    { 0, 8, 1,
+      .read = parallel_ioport_read_sw,
+      .write = parallel_ioport_write_sw },
+    PORTIO_END_OF_LIST(),
+};
+
 static int parallel_isa_initfn(ISADevice *dev)
 {
     static int index;
@@ -478,25 +501,11 @@ static int parallel_isa_initfn(ISADevice *dev)
         s->status = dummy;
     }
 
-    if (s->hw_driver) {
-        register_ioport_write(base, 8, 1, parallel_ioport_write_hw, s);
-        register_ioport_read(base, 8, 1, parallel_ioport_read_hw, s);
-        isa_init_ioport_range(dev, base, 8);
-
-        register_ioport_write(base+4, 1, 2, parallel_ioport_eppdata_write_hw2, s);
-        register_ioport_read(base+4, 1, 2, parallel_ioport_eppdata_read_hw2, s);
-        register_ioport_write(base+4, 1, 4, parallel_ioport_eppdata_write_hw4, s);
-        register_ioport_read(base+4, 1, 4, parallel_ioport_eppdata_read_hw4, s);
-        isa_init_ioport(dev, base+4);
-        register_ioport_write(base+0x400, 8, 1, parallel_ioport_ecp_write, s);
-        register_ioport_read(base+0x400, 8, 1, parallel_ioport_ecp_read, s);
-        isa_init_ioport_range(dev, base+0x400, 8);
-    }
-    else {
-        register_ioport_write(base, 8, 1, parallel_ioport_write_sw, s);
-        register_ioport_read(base, 8, 1, parallel_ioport_read_sw, s);
-        isa_init_ioport_range(dev, base, 8);
-    }
+    isa_register_portio_list(dev, base,
+                             (s->hw_driver
+                              ? &isa_parallel_portio_hw_list[0]
+                              : &isa_parallel_portio_sw_list[0]),
+                             s, "parallel");
     return 0;
 }
 
-- 
1.7.4.4

  parent reply	other threads:[~2011-08-24  0:14 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-24  0:13 [Qemu-devel] [PATCH 00/16] isa_register_portio_list, v2 Richard Henderson
2011-08-24  0:13 ` [Qemu-devel] [PATCH 01/16] fixup: merge with last sm501 patch Richard Henderson
2011-08-24  0:13 ` [Qemu-devel] [PATCH 02/16] fixup: merge with last arm_sysctl patch Richard Henderson
2011-08-24  0:13 ` [Qemu-devel] [PATCH 03/16] isa: Tidy support code for isabus_get_fw_dev_path Richard Henderson
2011-08-24  0:13 ` [Qemu-devel] [PATCH 04/16] isa: Add isa_register_portio_list() Richard Henderson
2011-08-24  0:13 ` [Qemu-devel] [PATCH 05/16] fdc: Convert to isa_register_portio_list Richard Henderson
2011-08-24  0:13 ` [Qemu-devel] [PATCH 06/16] gus: " Richard Henderson
2011-08-24  0:13 ` [Qemu-devel] [PATCH 07/16] m48t59: Convert to isa_register_ioport Richard Henderson
2011-08-24  0:13 ` [Qemu-devel] [PATCH 08/16] rtc: " Richard Henderson
2011-08-24  0:13 ` [Qemu-devel] [PATCH 09/16] ne2000: " Richard Henderson
2011-08-24  0:13 ` Richard Henderson [this message]
2011-08-24  0:13 ` [Qemu-devel] [PATCH 11/16] sb16: Convert to isa_register_portio_list Richard Henderson
2011-08-24  0:13 ` [Qemu-devel] [PATCH 12/16] vga: " Richard Henderson
2011-09-18 13:45   ` Avi Kivity
2011-09-18 14:16     ` Richard Henderson
2011-09-18 14:27       ` Avi Kivity
2011-09-18 14:56         ` Avi Kivity
2011-09-18 15:15           ` Richard Henderson
2011-09-18 15:19             ` Avi Kivity
2011-08-24  0:13 ` [Qemu-devel] [PATCH 13/16] pc: Convert port92 to isa_register_ioport Richard Henderson
2011-08-24  0:13 ` [Qemu-devel] [PATCH 14/16] vmport: Convert " Richard Henderson
2011-08-24  0:13 ` [Qemu-devel] [PATCH 15/16] ide: Convert to isa_register_portio_list Richard Henderson
2011-08-24  0:13 ` [Qemu-devel] [PATCH 16/16] isa: Remove isa_init_ioport_range and isa_init_ioport Richard Henderson
2011-08-24  9:18 ` [Qemu-devel] [PATCH 00/16] isa_register_portio_list, v2 Avi Kivity
2011-08-24  9:35 ` malc

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=1314144835-29098-11-git-send-email-rth@twiddle.net \
    --to=rth@twiddle.net \
    --cc=avi@redhat.com \
    --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).