All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
To: Will Deacon <will.deacon@arm.com>
Cc: "linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"arnd@arndb.de" <arnd@arndb.de>,
	"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
	"bhelgaas@google.com" <bhelgaas@google.com>
Subject: Re: [PATCH v3 3/3] PCI: ARM: add support for generic PCI host controller
Date: Tue, 18 Feb 2014 11:59:47 -0700	[thread overview]
Message-ID: <20140218185947.GA22340@obsidianresearch.com> (raw)
In-Reply-To: <20140218184420.GD2010@mudshark.cambridge.arm.com>

On Tue, Feb 18, 2014 at 06:44:20PM +0000, Will Deacon wrote:
> On Tue, Feb 18, 2014 at 06:21:42PM +0000, Jason Gunthorpe wrote:
> > On Tue, Feb 18, 2014 at 12:20:43PM +0000, Will Deacon wrote:
> > > +
> > > +    // BUS_ADDRESS(3)  CPU_PHYSICAL(2)  SIZE(2)
> > > +    ranges = <0x1000000 0x0 0x00000000  0x0 0x00000000  0x0 0x00010000>,
> >                                            ^^^^^^^^^^^^^^
> > 
> > This probably shouldn't be 0 in the example, nor in your kvm tool
> > output. For example purposes any value will do.
> 
> Hmm, so kvmtool actually provides a PC ioport at 0x0, which is handy since
> there's an 8250 down there. That means we have:
> 
> 0x0    - 0x6200  : Weird PC stuff
> 0x6200 - 0x10000 : PCI IO space
> 
> Should I just change everything to be offset by 0x6200?

Just to be clear, kvm has reserved the first 64k of physical address
space for this IO window? The 0 is fine then, but it isn't typical of
real hardware.

Regarding the 0x6200.. There are two conflicting issues there :(
 - You really don't want to let the PCI core assign resources to that
   range, it probably won't work.
 - You probably need that range mapped into the ARM IO window, and the
   PCI driver is the thing doing that

The PCI core already has a black out for low IO ports, I think it
already covers the usual PC suspects so you are probably fine with
what you have for KVM.

Jason

WARNING: multiple messages have this Message-ID (diff)
From: jgunthorpe@obsidianresearch.com (Jason Gunthorpe)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 3/3] PCI: ARM: add support for generic PCI host controller
Date: Tue, 18 Feb 2014 11:59:47 -0700	[thread overview]
Message-ID: <20140218185947.GA22340@obsidianresearch.com> (raw)
In-Reply-To: <20140218184420.GD2010@mudshark.cambridge.arm.com>

On Tue, Feb 18, 2014 at 06:44:20PM +0000, Will Deacon wrote:
> On Tue, Feb 18, 2014 at 06:21:42PM +0000, Jason Gunthorpe wrote:
> > On Tue, Feb 18, 2014 at 12:20:43PM +0000, Will Deacon wrote:
> > > +
> > > +    // BUS_ADDRESS(3)  CPU_PHYSICAL(2)  SIZE(2)
> > > +    ranges = <0x1000000 0x0 0x00000000  0x0 0x00000000  0x0 0x00010000>,
> >                                            ^^^^^^^^^^^^^^
> > 
> > This probably shouldn't be 0 in the example, nor in your kvm tool
> > output. For example purposes any value will do.
> 
> Hmm, so kvmtool actually provides a PC ioport at 0x0, which is handy since
> there's an 8250 down there. That means we have:
> 
> 0x0    - 0x6200  : Weird PC stuff
> 0x6200 - 0x10000 : PCI IO space
> 
> Should I just change everything to be offset by 0x6200?

Just to be clear, kvm has reserved the first 64k of physical address
space for this IO window? The 0 is fine then, but it isn't typical of
real hardware.

Regarding the 0x6200.. There are two conflicting issues there :(
 - You really don't want to let the PCI core assign resources to that
   range, it probably won't work.
 - You probably need that range mapped into the ARM IO window, and the
   PCI driver is the thing doing that

The PCI core already has a black out for low IO ports, I think it
already covers the usual PC suspects so you are probably fine with
what you have for KVM.

Jason

  parent reply	other threads:[~2014-02-18 18:59 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-18 12:20 [PATCH v3 0/3] ARM: PCI: implement generic PCI host controller Will Deacon
2014-02-18 12:20 ` Will Deacon
2014-02-18 12:20 ` [PATCH v3 1/3] ARM: mach-virt: allow PCI support to be selected Will Deacon
2014-02-18 12:20   ` Will Deacon
2014-02-18 12:20 ` [PATCH v3 2/3] ARM: bios32: use pci_enable_resource to enable PCI resources Will Deacon
2014-02-18 12:20   ` Will Deacon
2014-02-18 15:41   ` Russell King - ARM Linux
2014-02-18 15:41     ` Russell King - ARM Linux
2014-02-18 19:10     ` Will Deacon
2014-02-18 19:10       ` Will Deacon
2014-02-20 11:12     ` Will Deacon
2014-02-20 11:12       ` Will Deacon
2014-02-20 19:39       ` Bjorn Helgaas
2014-02-20 19:39         ` Bjorn Helgaas
2014-02-21  0:36         ` Jason Gunthorpe
2014-02-21  0:36           ` Jason Gunthorpe
2014-02-21 13:49           ` Will Deacon
2014-02-21 13:49             ` Will Deacon
2014-02-18 12:20 ` [PATCH v3 3/3] PCI: ARM: add support for generic PCI host controller Will Deacon
2014-02-18 12:20   ` Will Deacon
2014-02-18 13:46   ` Arnd Bergmann
2014-02-18 13:46     ` Arnd Bergmann
2014-02-18 19:10     ` Will Deacon
2014-02-18 19:10       ` Will Deacon
2014-02-19 11:07       ` Will Deacon
2014-02-19 11:07         ` Will Deacon
2014-02-19 14:17         ` Arnd Bergmann
2014-02-19 14:17           ` Arnd Bergmann
2014-02-19 15:25           ` Will Deacon
2014-02-19 15:25             ` Will Deacon
2014-02-18 18:21   ` Jason Gunthorpe
2014-02-18 18:21     ` Jason Gunthorpe
2014-02-18 18:44     ` Will Deacon
2014-02-18 18:44       ` Will Deacon
2014-02-18 18:47       ` Arnd Bergmann
2014-02-18 18:47         ` Arnd Bergmann
2014-02-18 18:51         ` Will Deacon
2014-02-18 18:51           ` Will Deacon
2014-02-18 19:11           ` Arnd Bergmann
2014-02-18 19:11             ` Arnd Bergmann
2014-02-18 19:16             ` Will Deacon
2014-02-18 19:16               ` Will Deacon
2014-02-18 18:59       ` Jason Gunthorpe [this message]
2014-02-18 18:59         ` Jason Gunthorpe
2014-02-18 19:09         ` Will Deacon
2014-02-18 19:09           ` Will Deacon
2014-02-18 19:32           ` Arnd Bergmann
2014-02-18 19:32             ` Arnd Bergmann
2014-02-18 19:36             ` Will Deacon
2014-02-18 19:36               ` Will Deacon
2014-02-18 19:57               ` Will Deacon
2014-02-18 19:57                 ` Will Deacon
2014-02-18 20:19                 ` Arnd Bergmann
2014-02-18 20:19                   ` Arnd Bergmann
2014-02-19 10:57                   ` Will Deacon
2014-02-19 10:57                     ` Will Deacon
2014-02-18 20:15       ` Arnd Bergmann
2014-02-18 20:15         ` Arnd Bergmann
2014-02-19 10:54         ` Will Deacon
2014-02-19 10:54           ` Will Deacon

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=20140218185947.GA22340@obsidianresearch.com \
    --to=jgunthorpe@obsidianresearch.com \
    --cc=arnd@arndb.de \
    --cc=bhelgaas@google.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-pci@vger.kernel.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 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.