All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Huth <huth@tuxfamily.org>
To: qemu-devel@nongnu.org
Cc: "Marc-André Lureau" <marcandre.lureau@redhat.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Philippe Mathieu-Daudé" <f4bug@amsat.org>,
	"Laurent Vivier" <laurent@vivier.eu>
Subject: [Qemu-devel] [PATCH v4 0/6] m68k: Add basic support for the NeXTcube machine
Date: Tue,  9 Jul 2019 09:32:16 +0200	[thread overview]
Message-ID: <20190709073222.26370-1-huth@tuxfamily.org> (raw)

During Google Summer of Code 2011, Bryce Lanham added the possibility to
emulate the NeXTcube machine in QEMU, e.g. see these URLs for some details:

https://wiki.qemu.org/Google_Summer_of_Code_2011#NeXT_machines_system_emulation
https://lists.gnu.org/archive/html/qemu-devel/2011-08/msg02158.html

But since the machine requires a 68040 CPU and this was not included in
upstream QEMU in 2011 yet, the patches have never been merged to upstream.

Then, during the last years, Laurent completed the full 680x0 support in
upstream QEMU, so we could finally merge the NeXTcube support, too.

The QEMU interfaces changed a lot since 2011, so I had to modify the
sources quite a bit, but with the attached patches, it is now possible
to boot up to the firmware monitor again.

Note that boot device emulation is still missing (network and SCSI),
so you can not boot any operating systems with this machine yet. I have
the patches for these devices in my brach here:

 https://gitlab.com/huth/qemu/commits/next-cube

... but they are not quite working yet, so I'll submit them later once
they have been fixed and the basic support patches of this series have
been merged.

v4:
 - Fixed the "bmap" memory region with its alias - the error messages
   about wrong DIMMs should now be gone.
 - Managed to wired up the ESCC serial device (after including Laurent's
   "bit_swap" patch)

v3:
 - Don't connect the devices to the sysbus from the device files themselves,
   do it from next-cube.c instead.
 - Adjusted some values according to Philippe's review comments
 - The MMIO region at 0x820c0020 is now correctly initialized as alias
 - Some more clean-ups here and there

v2:
 - Don't use memory_region_allocate_system_memory() for the framebuffer
   device anymore
 - Turn the keyboard device into a proper QOM device
 - Put the global variables in the third patch into the machine state
   structure
 - Got rid of the "//" C++ comments

Laurent Vivier (1):
  escc: introduce a selector for the register bit

Thomas Huth (5):
  m68k: Add NeXTcube framebuffer device emulation
  m68k: Add NeXTcube keyboard device
  m68k: Add NeXTcube machine
  m68k: Add serial controller to the NeXTcube machine
  m68k: Add an entry for the NeXTcube machine to the MAINTAINERS file

 MAINTAINERS                      |    7 +
 default-configs/m68k-softmmu.mak |    1 +
 hw/char/escc.c                   |   30 +-
 hw/display/Makefile.objs         |    1 +
 hw/display/next-fb.c             |  145 +++++
 hw/m68k/Kconfig                  |    5 +
 hw/m68k/Makefile.objs            |    1 +
 hw/m68k/next-cube.c              | 1007 ++++++++++++++++++++++++++++++
 hw/m68k/next-kbd.c               |  284 +++++++++
 include/hw/char/escc.h           |    1 +
 include/hw/m68k/next-cube.h      |   47 ++
 tests/boot-serial-test.c         |   12 +
 12 files changed, 1535 insertions(+), 6 deletions(-)
 create mode 100644 hw/display/next-fb.c
 create mode 100644 hw/m68k/next-cube.c
 create mode 100644 hw/m68k/next-kbd.c
 create mode 100644 include/hw/m68k/next-cube.h

-- 
2.21.0



             reply	other threads:[~2019-07-09  7:35 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-09  7:32 Thomas Huth [this message]
2019-07-09  7:32 ` [Qemu-devel] [PATCH v4 1/6] m68k: Add NeXTcube framebuffer device emulation Thomas Huth
2019-08-13 10:11   ` Philippe Mathieu-Daudé
2019-08-13 10:15   ` Peter Maydell
2019-07-09  7:32 ` [Qemu-devel] [PATCH v4 2/6] m68k: Add NeXTcube keyboard device Thomas Huth
2019-08-13 10:13   ` Philippe Mathieu-Daudé
2019-08-13 10:16   ` Peter Maydell
2019-08-31  5:18     ` Thomas Huth
2019-09-03  9:12       ` Peter Maydell
2019-09-03  9:21         ` Thomas Huth
2019-07-09  7:32 ` [Qemu-devel] [PATCH v4 3/6] m68k: Add NeXTcube machine Thomas Huth
2019-08-13 10:20   ` Philippe Mathieu-Daudé
2019-07-09  7:32 ` [Qemu-devel] [PATCH v4 4/6] escc: introduce a selector for the register bit Thomas Huth
2019-08-13 10:21   ` Philippe Mathieu-Daudé
2019-07-09  7:32 ` [Qemu-devel] [PATCH v4 5/6] m68k: Add serial controller to the NeXTcube machine Thomas Huth
2019-08-13 10:26   ` Philippe Mathieu-Daudé
2019-07-09  7:32 ` [Qemu-devel] [PATCH v4 6/6] m68k: Add an entry for the NeXTcube machine to the MAINTAINERS file 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=20190709073222.26370-1-huth@tuxfamily.org \
    --to=huth@tuxfamily.org \
    --cc=f4bug@amsat.org \
    --cc=laurent@vivier.eu \
    --cc=marcandre.lureau@redhat.com \
    --cc=pbonzini@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.