qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: "Arnd Bergmann" <arnd@arndb.de>,
	patches@linaro.org, "Will Deacon" <will.deacon@arm.com>,
	qemu-devel@nongnu.org, "Paul Brook" <paul@codesourcery.com>,
	"Andreas Färber" <afaerber@suse.de>,
	"Aurelien Jarno" <aurelien@aurel32.net>
Subject: Re: [Qemu-devel] [PATCH v2 07/11] versatile_pci: Implement the correct PCI IRQ mapping
Date: Tue, 26 Mar 2013 23:12:56 +0200	[thread overview]
Message-ID: <20130326211256.GD19899@redhat.com> (raw)
In-Reply-To: <CAFEAcA_JAGHCwsdToYimiR42s7SbS4z8uJ464VeoB2eMsyctUA@mail.gmail.com>

On Tue, Mar 26, 2013 at 11:17:55AM +0000, Peter Maydell wrote:
> On 26 March 2013 11:08, Arnd Bergmann <arnd@arndb.de> wrote:
> > On Tuesday 26 March 2013, Peter Maydell wrote:
> >> On 26 March 2013 10:54, Arnd Bergmann <arnd@arndb.de> wrote:
> >> > Yes, very good.  We will probably introduce sparse irq support on
> >> > versatile in the near future, and then the value we write into the
> >> > PCI_INTERRUPT_LINE field will become arbitrary from qemu's point
> >> > of view, but I will make sure that we fix the interrupt mapping
> >> > in the kernel at the same time so we always fall into the
> >> > "s->broken_irq_mapping = false;" case.
> >>
> >> Yeah, as long as you avoid the number 27 you're ok :-)
> >
> > Good point. I guess we'll have to keep using a legacy domain for
> > versatile then.
> 
> I'm happy to provide some other way for QEMU to detect a
> new working kernel if you want to implement one in the
> kernel, if that's cleaner.

That's why I suggested writing some number at offset 0x08
(that's revision ID) in configuration space of device 0 on bus 0.
It's guaranteed harmless on real hardware and QEMU could detect this
write and say "aha new kernel, even though it uses #27".

> >> > We also need to find a way to make the new kernel work with
> >> > an old qemu, and I think we can do that by using the versatile-dt
> >> > board type with a PCI device node that sets all four lines to
> >> > 27, while using the actual interrupt lines for the default
> >> > versatile device tree.
> >>
> >> Personally I'd be happy for you to just say "needs a new QEMU".
> >> The broken QEMU is missing so much (including working memory
> >> windows) that I think it would be a pain to get the kernel to
> >> cope with it.
> >
> > But it was working earlier, so I'd definitely try not to break
> > if at all possible. A lot of people use the verstatile qemu
> > model to run kernels and I would not want to deal with the
> > complaints I'd get if we break those. Using a separate dts
> > file seems easy enough.
> 
> Yeah, but it only worked earlier because the kernel PCI controller
> support was so broken and limited, I think. If you run a new
> kernel with the old QEMU it won't work even if you avoid the
> irq-mapping issues.
> 
> Also I really don't want to get people into the habit of
> using a QEMU-specific dts file. The result will be that
> nobody will ever move on from that dts file to the one that
> gets used with real hardware.
> 
> Plus, you guys make kernel changes that break running on
> QEMU all the time, so I don't see that as a big deal really.
> (Most recently, vexpress needed a pile of support for the
> config registers that define the voltage regulators and clocks.)
> 
> -- PMM

I have to agree with that.

-- 
MST

  reply	other threads:[~2013-03-26 21:12 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-26 10:22 [Qemu-devel] [PATCH v2 00/11] Fix versatile_pci (now without breaking linux) Peter Maydell
2013-03-26 10:22 ` [Qemu-devel] [PATCH v2 01/11] versatile_pci: Fix hardcoded tabs Peter Maydell
2013-03-26 10:22 ` [Qemu-devel] [PATCH v2 02/11] versatile_pci: Expose PCI I/O region on Versatile PB Peter Maydell
2013-03-26 10:22 ` [Qemu-devel] [PATCH v2 03/11] versatile_pci: Update to realize and instance init functions Peter Maydell
2013-03-26 10:22 ` [Qemu-devel] [PATCH v2 04/11] versatile_pci: Change to subclassing TYPE_PCI_HOST_BRIDGE Peter Maydell
2013-03-26 10:22 ` [Qemu-devel] [PATCH v2 05/11] versatile_pci: Use separate PCI I/O space rather than system I/O space Peter Maydell
2013-03-26 10:22 ` [Qemu-devel] [PATCH v2 06/11] versatile_pci: Put the host bridge PCI device at slot 29 Peter Maydell
2013-03-26 10:22 ` [Qemu-devel] [PATCH v2 07/11] versatile_pci: Implement the correct PCI IRQ mapping Peter Maydell
2013-03-26 10:54   ` Arnd Bergmann
2013-03-26 11:00     ` Peter Maydell
2013-03-26 11:08       ` Arnd Bergmann
2013-03-26 11:17         ` Peter Maydell
2013-03-26 21:12           ` Michael S. Tsirkin [this message]
2013-03-28 10:28             ` Peter Maydell
2013-04-04 11:05               ` Peter Maydell
2013-04-04 10:58                 ` Michael S. Tsirkin
2013-04-04 12:16                   ` Peter Maydell
2013-05-14 11:45         ` Peter Maydell
2013-03-26 10:22 ` [Qemu-devel] [PATCH v2 08/11] versatile_pci: Implement the PCI controller's control registers Peter Maydell
2013-03-26 10:22 ` [Qemu-devel] [PATCH v2 09/11] arm/realview: Fix mapping of PCI regions Peter Maydell
2013-03-26 10:22 ` [Qemu-devel] [PATCH v2 10/11] versatile_pci: Expose PCI memory space to system Peter Maydell
2013-03-26 10:22 ` [Qemu-devel] [PATCH v2 11/11] hw/versatile_pci: Drop unnecessary vpb_pci_config_addr() Peter Maydell
2013-03-28 13:20 ` [Qemu-devel] [PATCH v2 00/11] Fix versatile_pci (now without breaking linux) Paul Brook
2013-03-28 13:23   ` Peter Maydell

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=20130326211256.GD19899@redhat.com \
    --to=mst@redhat.com \
    --cc=afaerber@suse.de \
    --cc=arnd@arndb.de \
    --cc=aurelien@aurel32.net \
    --cc=patches@linaro.org \
    --cc=paul@codesourcery.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=will.deacon@arm.com \
    /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).