From: Liviu Dudau <Liviu.Dudau@arm.com>
To: Rob Herring <robherring2@gmail.com>
Cc: Arnd Bergmann <arnd@arndb.de>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
Robert Richter <rric@kernel.org>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
linux-pci <linux-pci@vger.kernel.org>,
Linus Walleij <linus.walleij@linaro.org>,
Will Deacon <Will.Deacon@arm.com>,
Grant Likely <grant.likely@secretlab.ca>,
Tanmay Inamdar <tinamdar@apm.com>,
linux-arch <linux-arch@vger.kernel.org>,
Kukjin Kim <kgene.kim@samsung.com>,
Russell King <linux@arm.linux.org.uk>,
Jingoo Han <jg1.han@samsung.com>,
Jason Gunthorpe <jgunthorpe@obsidianresearch.com>,
Catalin Marinas <Catalin.Marinas@arm.com>,
"grant.likely@linaro.org" <grant.likely@linaro.org>,
Device Tree ML <devicetree@vger.kernel.org>,
Rob Herring <robh+dt@kernel.org>,
Bjorn Helgaas <bhelgaas@google.com>,
Sinan Kaya <okaya@codeaurora.org>,
Sunil Goutham <sunil.goutham@caviumnetworks.com>,
LKML <linux-kernel@vger.kernel.org>,
Suravee Suthikulanit <suravee.suthikulpanit@amd.com>
Subject: Re: [PATCH v11 08/10] OF: PCI: Add support for parsing PCI host bridge resources from DT
Date: Tue, 23 Sep 2014 14:58:28 +0100 [thread overview]
Message-ID: <20140923135828.GS1994@e106497-lin.cambridge.arm.com> (raw)
In-Reply-To: <CAL_JsqK3yH-uf++haBovWdX6er1PtzeiZ-2-yT1TRfYPxAjFow@mail.gmail.com>
On Tue, Sep 23, 2014 at 02:30:08PM +0100, Rob Herring wrote:
> On Tue, Sep 23, 2014 at 2:56 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> > On Monday 22 September 2014 12:43:17 Liviu Dudau wrote:
> >> >
> >> > From e798af4fc2f664d1aff7e863489b8298f90e716e Mon Sep 17 00:00:00 2001
> >> > From: Robert Richter <rrichter@cavium.com>
> >> > Date: Mon, 22 Sep 2014 10:46:01 +0200
> >> > Subject: [PATCH] OF: PCI: Fix creation of mem-mapped pci host bridges
> >> >
> >> > The pci host bridge was not created if io_base was not set when
> >> > calling of_pci_get_host_bridge_resources(). This is esp. the case for
> >> > mem-mapped io (IORESOURCE_MEM). This patch fixes this. Function
> >> > parameter io_base is optional now.
> >>
> >> I think the message is misleading. What you want to do is make io_base
> >> optional for the case where the PCI host bridge only expects to have only
> >> IORESOURCE_MEM ranges and doesn't care about IORESOURCE_IO ones.
> >>
> >> As I'm going to touch this area again to address a comment from Bjorn,
> >> do you mind if I roll this patch into mine with your Signed-off-by and
> >> the mention that you have made io_base optional?
> >
> > I think the best way to deal with this is to move the check for
> > io_base down into the place where it is used: As long as the DT only
> > specifies IORESOURCE_MEM windows, we don't need to look at io_base,
> > but if the host controller driver does not support IORESOURCE_IO
> > while the DT specifies it, I guess it would be nice to return an
> > error.
>
> The DT may specify it, but the h/w could be broken in some way so the
> host driver chooses to ignore it. I don't think we should force the
> host driver to provide a pointer in that case. Also, would we want it
> added to the resource list if it is not going to be used?
This is only for scanning the DT ranges. If the hardware is broken and
the driver knows about that then it can filter out the I/O ranges
before it passes them on to pci_scan_root_bus() or pci_create_root_bus().
Lets not complicate this function any further. If you get an I/O range
it should be expected to also pass an io_base pointer to store the
CPU address of the range, otherwise it will get lost in the conversion
to an IORESOURCE_IO resource. You want later to discard the resource
and forget the CPU address, then don't use it!
Best regards,
Liviu
>
> Rob
>
--
====================
| I would like to |
| fix the world, |
| but they're not |
| giving me the |
\ source code! /
---------------
¯\_(ツ)_/¯
next prev parent reply other threads:[~2014-09-23 13:58 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-18 1:30 [PATCH v11 00/10] Support for creating generic PCI host bridges " Liviu Dudau
2014-09-18 1:30 ` [PATCH v11 01/10] Fix ioport_map() for !CONFIG_GENERIC_IOMAP cases Liviu Dudau
2014-09-18 1:30 ` [PATCH v11 02/10] PCI: Introduce helper functions to deal with PCI I/O ranges Liviu Dudau
2014-09-19 20:48 ` Bjorn Helgaas
2014-09-18 1:30 ` [PATCH v11 03/10] ARM: Define PCI_IOBASE as the base of virtual PCI IO space Liviu Dudau
2014-09-20 2:14 ` Arnd Bergmann
2014-09-18 1:30 ` [PATCH v11 04/10] PCI: OF: Fix the conversion of IO ranges into IO resources Liviu Dudau
2014-09-19 20:56 ` Bjorn Helgaas
2014-09-20 17:33 ` Rob Herring
2014-09-22 15:32 ` Liviu Dudau
2014-09-22 17:18 ` Rob Herring
2014-09-18 1:30 ` [PATCH v11 05/10] PCI: Create pci_host_bridge before its associated bus in pci_create_root_bus Liviu Dudau
2014-09-18 1:30 ` [PATCH v11 06/10] PCI: Introduce generic domain handling for PCI busses Liviu Dudau
2014-09-18 1:30 ` [PATCH v11 07/10] OF: Introduce helper function for getting PCI domain_nr Liviu Dudau
2014-09-19 21:03 ` Bjorn Helgaas
2014-09-22 11:05 ` Liviu Dudau
2014-09-22 15:25 ` Bjorn Helgaas
2014-09-22 15:33 ` Liviu Dudau
2014-09-20 2:24 ` Arnd Bergmann
2014-09-22 15:20 ` Liviu Dudau
2014-09-20 17:52 ` Rob Herring
2014-09-18 1:30 ` [PATCH v11 08/10] OF: PCI: Add support for parsing PCI host bridge resources from DT Liviu Dudau
2014-09-19 21:06 ` Bjorn Helgaas
2014-09-20 0:28 ` Rob Herring
2014-09-22 17:55 ` Liviu Dudau
2014-09-22 22:11 ` Rob Herring
2014-09-22 9:32 ` Robert Richter
2014-09-22 11:43 ` Liviu Dudau
2014-09-22 12:15 ` Robert Richter
2014-09-23 7:56 ` Arnd Bergmann
2014-09-23 10:49 ` Liviu Dudau
2014-09-23 13:30 ` Rob Herring
2014-09-23 13:58 ` Liviu Dudau [this message]
2014-09-18 1:30 ` [PATCH v11 09/10] PCI: Assign unassigned bus resources in pci_scan_root_bus() Liviu Dudau
2014-09-18 1:30 ` [PATCH v11 10/10] PCI: Introduce pci_remap_iospace() for remapping PCI I/O bus resources into CPU space Liviu Dudau
2014-09-19 21:54 ` Bjorn Helgaas
2014-09-20 2:20 ` Arnd Bergmann
2014-09-22 15:29 ` Robert Richter
2014-09-20 0:34 ` Rob Herring
2014-09-19 21:59 ` [PATCH v11 00/10] Support for creating generic PCI host bridges from DT Bjorn Helgaas
2014-09-22 11:35 ` Liviu Dudau
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=20140923135828.GS1994@e106497-lin.cambridge.arm.com \
--to=liviu.dudau@arm.com \
--cc=Catalin.Marinas@arm.com \
--cc=Will.Deacon@arm.com \
--cc=arnd@arndb.de \
--cc=benh@kernel.crashing.org \
--cc=bhelgaas@google.com \
--cc=devicetree@vger.kernel.org \
--cc=grant.likely@linaro.org \
--cc=grant.likely@secretlab.ca \
--cc=jg1.han@samsung.com \
--cc=jgunthorpe@obsidianresearch.com \
--cc=kgene.kim@samsung.com \
--cc=linus.walleij@linaro.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=okaya@codeaurora.org \
--cc=robh+dt@kernel.org \
--cc=robherring2@gmail.com \
--cc=rric@kernel.org \
--cc=sunil.goutham@caviumnetworks.com \
--cc=suravee.suthikulpanit@amd.com \
--cc=tinamdar@apm.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
all inboxes | Powered by JetHome®