All of lore.kernel.org
 help / color / mirror / Atom feed
From: Fabien Chouteau <chouteau@adacore.com>
To: Blue Swirl <blauwirbel@gmail.com>
Cc: qemu-devel@nongnu.org, Artyom Tarasenko <atar4qemu@gmail.com>
Subject: Re: [Qemu-devel] [PATCH 0/6] [RFC] New SPARC machine: Leon3
Date: Tue, 07 Dec 2010 18:43:12 +0100	[thread overview]
Message-ID: <4CFE7230.9050503@adacore.com> (raw)
In-Reply-To: <AANLkTikPws+cHBis=qQbvQ3nt8x6HR5pVaE_Pso-_kCh@mail.gmail.com>

On 12/06/2010 07:12 PM, Blue Swirl wrote:
> On Mon, Dec 6, 2010 at 3:07 PM, Fabien Chouteau<chouteau@adacore.com>  wrote:
>> On 12/06/2010 11:44 AM, Artyom Tarasenko wrote:
>>>
>>> On Mon, Dec 6, 2010 at 10:26 AM, Fabien Chouteau<chouteau@adacore.com>
>>>   wrote:
>>>>
>>>> Hi everyone,
>>>> I'm glad to submit my first patches to the Qemu-devel list.
>>>>
>>>> This patch set introduces a new SPARC V8 machine: Leon3. It's an
>>>> open-source
>>>> VHDL System-On-Chip, well known in space industry (more information on
>>>> http://www.gaisler.com).
>>>
>>> Nice! Haven't looked into the code yet, but it's great to have someone
>>> who cares for V8.
>>
>> And if this patch is accepted, we will try to submit more machines like
>> erc32 and leon2.
>>
>>> Do you also have a firmware which runs on these machines?
>>>
>>
>> I can give you a binary running some basic tests.
>
> Is the binary generally available?

No it's just a program that I use to test my work.

> Otherwise it would be very hard to
> test any changes and the code would bitrot. I'm not sure we even want
> to support such machines.

I think we can find many people interested in Leon3, the processor is well
known in the space industry and used in many research projects. The only
emulator available is Tsim and it's not free nor open-source, so Qemu has a
real interest here.

> Are the sources available? That would help debugging.

I can give you the sources but it will be difficult for you to compile them.
It's an Ada program compiled with Gnat Pro for Leon3, using the Ravenscar
run-time. If you are not familiar with the Ada language, you can see the
Ravenscar run-time as a very small kernel providing basic tasking 
support for
safety critical applications.

>>>> Leon3 is made of multiple components available in the GrLib VHDL library.
>>>> Three devices are implemented: uart, timers and IRQ manager.
>>>> You can find code for these peripherals in the grlib_* files.
>>>>
>>>> Modifications have been done to the SPARC cpu emulation code to handle
>>>> Leon3's specific behavior:
>>>>   - IRQ management
>>>>   - Cache control
>>>>   - Asr17 (implementation-dependent Ancillary State Registers)
>>>
>>> Is it the only implementation-dependent asr in Leon3? Thought there were
>>> more.
>>>
>>
>> Yes, there's also asr19 for power-down, asr16 for FPU control and others for
>> hardware breakpoints.
>> These are not required for this first implementation, but If there's a need
>> for more ASRs, we may have to find a generic implementation to handle those
>> registers.
>
> So far I'd handle these in target-sparc/op_helper.c. If the registers
> are also available as MMIO like MXCC, then we should invent a way to
> handle both.

I don't see what you mean by "also available as MMIO", it's just regular
registers in the CPU, except that they are available for
implementation-dependent uses.


Thank you for your review ;)

-- 
Fabien Chouteau

  reply	other threads:[~2010-12-07 17:43 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-12-06  9:26 [Qemu-devel] [PATCH 0/6] [RFC] New SPARC machine: Leon3 Fabien Chouteau
2010-12-06  9:26 ` [Qemu-devel] [PATCH 1/6] [RFC] Emulation of GRLIB GPTimer as defined in GRLIB IP Core User's Manual Fabien Chouteau
2010-12-06 17:12   ` Blue Swirl
2010-12-07  9:55     ` Fabien Chouteau
2010-12-08  8:30       ` Edgar E. Iglesias
2010-12-08  9:39         ` Fabien Chouteau
2010-12-08 21:02           ` Edgar E. Iglesias
2010-12-08 22:51   ` Edgar E. Iglesias
2010-12-09 10:04     ` Fabien Chouteau
2010-12-09 10:22       ` Edgar E. Iglesias
2010-12-06  9:26 ` [Qemu-devel] [PATCH 2/6] [RFC] Emulation of GRLIB IRQMP " Fabien Chouteau
2010-12-06 17:25   ` Blue Swirl
2010-12-07 10:43     ` Fabien Chouteau
2010-12-11 10:31       ` Blue Swirl
2010-12-13 16:23         ` Fabien Chouteau
2010-12-13 18:13           ` Blue Swirl
2010-12-09 10:32   ` Edgar E. Iglesias
2010-12-09 11:03     ` Fabien Chouteau
2010-12-09 11:06       ` Edgar E. Iglesias
2010-12-09 11:32         ` Fabien Chouteau
2010-12-06  9:26 ` [Qemu-devel] [PATCH 3/6] [RFC] Emulation of GRLIB APB UART " Fabien Chouteau
2010-12-06 17:29   ` Blue Swirl
2010-12-07 10:55     ` Fabien Chouteau
2010-12-06  9:26 ` [Qemu-devel] [PATCH 4/6] [RFC] Header file for the GRLIB components Fabien Chouteau
2010-12-06 17:31   ` Blue Swirl
2010-12-07 11:04     ` Fabien Chouteau
2010-12-06  9:26 ` [Qemu-devel] [PATCH 5/6] [RFC] Emulation of Leon3 Fabien Chouteau
2010-12-06 17:53   ` Blue Swirl
2010-12-07 11:40     ` Fabien Chouteau
2010-12-11  9:56       ` Blue Swirl
2010-12-13 15:51         ` Fabien Chouteau
2010-12-13 18:18           ` Blue Swirl
2010-12-15 17:47             ` Fabien Chouteau
2010-12-17 19:14               ` Blue Swirl
2010-12-20  6:46                 ` Edgar E. Iglesias
2010-12-20  9:40                   ` Fabien Chouteau
2010-12-20 20:09                     ` Blue Swirl
2010-12-20  9:25                 ` Fabien Chouteau
2010-12-20 19:27                   ` Blue Swirl
2010-12-12 14:41   ` Andreas Färber
2010-12-13 17:00     ` Fabien Chouteau
2010-12-06  9:26 ` [Qemu-devel] [PATCH 6/6] [RFC] SPARCV8 asr17 register support Fabien Chouteau
2010-12-06 18:01   ` Blue Swirl
2010-12-07 11:51     ` Fabien Chouteau
2010-12-11  9:59       ` Blue Swirl
2010-12-13 17:01         ` Fabien Chouteau
2010-12-06 10:44 ` [Qemu-devel] [PATCH 0/6] [RFC] New SPARC machine: Leon3 Artyom Tarasenko
2010-12-06 15:07   ` Fabien Chouteau
2010-12-06 18:12     ` Blue Swirl
2010-12-07 17:43       ` Fabien Chouteau [this message]
2010-12-06 18:05 ` Blue Swirl

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=4CFE7230.9050503@adacore.com \
    --to=chouteau@adacore.com \
    --cc=atar4qemu@gmail.com \
    --cc=blauwirbel@gmail.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.