qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "andrzej zaborowski" <balrog@zabor.org>
To: dsilvers@simtec.co.uk, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Simtec BAST emulation
Date: Tue, 3 Apr 2007 01:04:42 +0200	[thread overview]
Message-ID: <fb249edb0704021604i47bc455btecfc4645e95f3c64@mail.gmail.com> (raw)
In-Reply-To: <1175522199.18271.19.camel@petitemort.i.digital-scurf.org>

Hi,

On 02/04/07, Daniel Silverstone <dsilvers@simtec.co.uk> wrote:
> Hi,
>
> Myself and my colleagues have worked hard and produced a new system
> emulation for qemu for the Simtec BAST board.
>
> The BAST is a Samsung 2410 based board (ARM 9 based SoC, with MMU) with
> various peripherals including a Davicom DM9000 Ethernet port.
>
> The emulation is complete enough to start Simtec's ABLE boot loader
> (downloadable from www.simtec.co.uk) and also is capable of being
> direct-booted with a linux kernel/initrd combination as per the
> versatile etc.
>
> Among other things, the patch needs to add support for OHCI USB systems
> not on PCI, ARM systems where SDRAM isn't at 0 (phys) and MMIO based
> IDE. Naturally this has all been done as generically as made sense at
> the time.
>
> There is one generic fix in the patch which hardly seemed worth breaking
> out on its own. It corrects a bug where QEMU would ignore WIN_DIAGNOSE's
> behaviour for normal drives. It assumed HDDs behaved as CDROMs under
> WIN_DIAGNOSE which is not the case.
>
> Unfortunately I was unable to sensibly separate the patch up because of
> the difficulties which stem from qemu's current source layout. E.g. it
> was hard to split out the MMIO IDE from the rest of the IDE without
> dramatically changing the exported symbol lists.
>
> Hopefully you'll be happy with the whole patch. In particular I've tried
> to isolate the s3c2410x stuff away from the BAST stuff, so that in
> future other 2410x based systems such as the H1940 PDA or the FIC NEO
> 1973 (openmoko?) can be implemented with minimal fuss.
>
> We have a partially complete s3c2410x NAND driver, a partial LCD driver
> and various other bits which we will submit as and when we have them
> done.

We have also implemented emulation of the S3C2410x SoC. I hope we can
merge both implementations to come up with better emulation. Our tree
is accessible at http://svn.openmoko.org/trunk/src/host/qemu-neo1973/
and our main target machine is the FIC Neo1973 which you mention
above. The tree is still heavily a work-in-progress but the processor
part (S3C2410 with on-chip preripherals) is quite mature.

All of the on-chip peripherals described in the S3C2410A User Manual
rev 1.0 except the Watchdog timer and USB Slave are emulated with high
level of detail. The OHCI USB uses the same routine as the PXA2xx
emulator. Things that are tested to work:

OpenMoko firmware from the real device boots as a NAND Flash image.
The OpenMoko rootfs can also be booted off the emulated SD card. We
use the u-boot and kernel images from the original device. Input is
through GPIO buttons or touchscreen connected to the on-chip ADC,
output through on-chip UARTs and LCD. Audio through a codec connected
to on-chip I2C and I2S busses. There is also an SPI-connected
peripheral (can be driven either through the on-chip SPI interface or
GPIO bit-banging). S3C2410 idle mode is supported.

There's no save/restore support.

Apparently there's some code duplication, which is sad but I hope we
can get both machines (BAST and Neo1973) to use common code. Briefly
looking at your patch, the openmoko tree seems to have a more
complete/specs-conformant S3C2410 part.

Regards,
Andrzej

  parent reply	other threads:[~2007-04-02 23:07 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-04-02 13:56 [Qemu-devel] Simtec BAST emulation Daniel Silverstone
2007-04-02 17:45 ` Paul Brook
2007-04-03 10:12   ` Daniel Silverstone
2007-04-17  9:51   ` Daniel Silverstone
2007-04-17  9:51   ` Daniel Silverstone
2007-04-02 23:04 ` andrzej zaborowski [this message]
2007-04-03 10:09   ` Daniel Silverstone
2007-04-03 15:01     ` andrzej zaborowski

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=fb249edb0704021604i47bc455btecfc4645e95f3c64@mail.gmail.com \
    --to=balrog@zabor.org \
    --cc=balrogg@gmail.com \
    --cc=dsilvers@simtec.co.uk \
    --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).