All of lore.kernel.org
 help / color / mirror / Atom feed
From: Artyom Tarasenko <atar4qemu@gmail.com>
To: "Andreas Färber" <afaerber@suse.de>
Cc: "Mark Cave-Ayland" <mark.cave-ayland@ilande.co.uk>,
	qemu-devel <qemu-devel@nongnu.org>,
	"Alexander Graf" <agraf@suse.de>,
	qemu-ppc@nongnu.org, "Paolo Bonzini" <pbonzini@redhat.com>,
	"Hervé Poussineau" <hpoussin@reactos.org>
Subject: Re: [Qemu-devel] [PATCH 2/2] m48t59: add mem_base value to m48t59_init_isa()
Date: Tue, 20 Jan 2015 10:54:30 +0100	[thread overview]
Message-ID: <CACXAS8DquzfR9u9MczCcH+2XN7-bMt6oP6G+Ogso9CEwnAW94g@mail.gmail.com> (raw)
In-Reply-To: <54BD631C.8070409@suse.de>

On Mon, Jan 19, 2015 at 9:03 PM, Andreas Färber <afaerber@suse.de> wrote:
> Am 19.01.2015 um 16:22 schrieb Artyom Tarasenko:
>> On Mon, Jan 19, 2015 at 4:01 PM, Andreas Färber <afaerber@suse.de> wrote:
>>> Am 19.01.2015 um 13:57 schrieb Artyom Tarasenko:
>>>> On Mon, Jan 19, 2015 at 1:45 PM, Paolo Bonzini <pbonzini@redhat.com> wrote:
>>>>> On 19/01/2015 12:35, Mark Cave-Ayland wrote:
>>>>>> Similar to m48t59_init(), add a mem_base value so that NVRAM can be mapped via
>>>>>> MMIO rather than ioport if required.
>>>>>>
>>>>>> Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
>>>>>> ---
>>>>>
>>>>> Is it really ISA if it's MMIO?  In other words, why can't this be a
>>>>> sysbus device?
>>>>
>>>> On physical machines it's EBus, which is pretty much like 8-bit ISA.
>>>> So, I think modelling it as ISA is closer to to the reality.
>>>> But out of curiosity, would it be possible to have a sysbus device
>>>> somewhere in a middle of PCI space? [...]
>>>
>>> Why would you want to use a SysBusDevice in the first place?
>>
>> Ask Paolo. :-) For me it's only important to have a MMIO device in the
>> proper address range.
>>
>>> I previously discussed with Mark that it should be an EBusDevice, not an
>>> ISADevice or SysBusDevice.
>>
>> Interesting. I can't find this discussion in the list archive.
>
> Hm, am I mixing that up with SBus then? There were some helper functions
> related to ROM loading being added as context to my suggestion that I
> thought could become class fields.

Yes, for SBus it totally makes sense.

>> Do you suggest to
>> create EBusDevices for all ISA devices (serial, parallel, keyboard,
>> floppy) used in sun4u, or only for m48t59?
>> What would be the advantage of using EBusDevice over ISADevice?
>
> For all devices that are in fact EBus devices. The general idea is
> encapsulation and abstraction - hiding the implementation detail of
> whether it is internally an ISADevice or something else. Such a patch
> should be quite trivial. Similarly it gives helper functions and
> potential class methods a natural place to live.

Yes, the patch is trivial. But EBus is nothing else but an ISA bus
with 8 data lines.
To me it looks like the bus width is an implementation detail we can
hide. (It's not documented what should happen if an EBus device is
accessed with a non 8-bit width. I tried 16 bit access on a physical
machine and it seemed to work).

Currently we can just use all the ISA devices unmodified if we like.
With EBus we would only be able to use a subset of ISA devices, no?

Artyom



-- 
Regards,
Artyom Tarasenko

SPARC and PPC PReP under qemu blog: http://tyom.blogspot.com/search/label/qemu

  reply	other threads:[~2015-01-20  9:54 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-19 11:35 [Qemu-devel] [PATCH 0/2] m48t59: add year offset and MMIO ISA mapping Mark Cave-Ayland
2015-01-19 11:35 ` [Qemu-devel] [PATCH 1/2] m48t59: introduce new year_offset qdev property Mark Cave-Ayland
2015-01-19 12:06   ` Artyom Tarasenko
2015-01-19 12:20     ` Mark Cave-Ayland
2015-01-19 11:35 ` [Qemu-devel] [PATCH 2/2] m48t59: add mem_base value to m48t59_init_isa() Mark Cave-Ayland
2015-01-19 12:45   ` Paolo Bonzini
2015-01-19 12:57     ` Artyom Tarasenko
2015-01-19 12:59       ` Paolo Bonzini
2015-01-19 13:12         ` Artyom Tarasenko
2015-01-19 15:01       ` Andreas Färber
2015-01-19 15:22         ` Artyom Tarasenko
2015-01-19 15:31           ` Paolo Bonzini
2015-01-19 15:38             ` Andreas Färber
2015-01-19 16:01               ` Paolo Bonzini
2015-01-19 16:17             ` Artyom Tarasenko
2015-01-19 16:34               ` Paolo Bonzini
2015-01-19 18:17                 ` Maciej W. Rozycki
2015-01-19 16:57               ` Mark Cave-Ayland
2015-01-19 16:55             ` Mark Cave-Ayland
2015-01-19 20:03           ` Andreas Färber
2015-01-20  9:54             ` Artyom Tarasenko [this message]
2015-01-19 16:42         ` Mark Cave-Ayland
2015-01-19 21:16         ` Hervé Poussineau
2015-01-19 15:04       ` Peter Maydell
2015-01-19 16:48         ` Mark Cave-Ayland
2015-01-19 16:50           ` Peter Maydell
2015-01-19 12:09 ` [Qemu-devel] [PATCH 0/2] m48t59: add year offset and MMIO ISA mapping Artyom Tarasenko
2015-01-19 21:59 ` Hervé Poussineau
2015-01-20 10:16   ` Artyom Tarasenko
2015-01-20 14:19   ` Mark Cave-Ayland

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=CACXAS8DquzfR9u9MczCcH+2XN7-bMt6oP6G+Ogso9CEwnAW94g@mail.gmail.com \
    --to=atar4qemu@gmail.com \
    --cc=afaerber@suse.de \
    --cc=agraf@suse.de \
    --cc=hpoussin@reactos.org \
    --cc=mark.cave-ayland@ilande.co.uk \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@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.