linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Robin Murphy <robin.murphy@arm.com>
To: Srinath Mannam <srinath.mannam@broadcom.com>,
	Bjorn Helgaas <bhelgaas@google.com>,
	Joerg Roedel <joro@8bytes.org>,
	Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>,
	poza@codeaurora.org, Ray Jui <rjui@broadcom.com>
Cc: bcm-kernel-feedback-list@broadcom.com, linux-pci@vger.kernel.org,
	iommu@lists.linux-foundation.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3 0/3] PCIe Host request to reserve IOVA
Date: Wed, 27 Mar 2019 15:02:21 +0000	[thread overview]
Message-ID: <c92e07d7-78b2-d4ec-bf1a-29070a9d4145@arm.com> (raw)
In-Reply-To: <1548411231-27549-1-git-send-email-srinath.mannam@broadcom.com>

On 25/01/2019 10:13, Srinath Mannam wrote:
> Few SOCs have limitation that their PCIe host can't allow few inbound
> address ranges. Allowed inbound address ranges are listed in dma-ranges
> DT property and this address ranges are required to do IOVA mapping.
> Remaining address ranges have to be reserved in IOVA mapping.
> 
> PCIe Host driver of those SOCs has to list all address ranges which have
> to reserve their IOVA address into PCIe host bridge resource entry list.
> IOMMU framework will reserve these IOVAs while initializing IOMMU domain.

FWIW I'm still only interested in solving this problem generically, 
because in principle it's not specific to PCI, for PCI it's certainly 
not specific to iproc, and either way it's not specific to DT. That 
said, I don't care strongly enough to keep pushing back on this 
implementation outright, since it's not something which couldn't be 
cleaned up 'properly' in future.

One general comment I'd make, though, is that AFAIK PCI has a concept of 
inbound windows much more than it has a concept of gaps-between-windows, 
so if the PCI layer is going to track anything it should probably be the 
actual windows, and leave the DMA layer to invert them into the 
reservations it cares about as it consumes the list. That way you can 
also avoid the undocumented requirement for the firmware to keep the 
ranges property sorted in the first place.

Robin.

> 
> This patch set is based on Linux-5.0-rc2.
> 
> Changes from v2:
>    - Patch set rebased to Linux-5.0-rc2
> 
> Changes from v1:
>    - Addressed Oza review comments.
> 
> Srinath Mannam (3):
>    PCI: Add dma-resv window list
>    iommu/dma: Reserve IOVA for PCI host reserve address list
>    PCI: iproc: Add dma reserve resources to host
> 
>   drivers/iommu/dma-iommu.c           |  8 ++++++
>   drivers/pci/controller/pcie-iproc.c | 51 ++++++++++++++++++++++++++++++++++++-
>   drivers/pci/probe.c                 |  3 +++
>   include/linux/pci.h                 |  1 +
>   4 files changed, 62 insertions(+), 1 deletion(-)
> 

  parent reply	other threads:[~2019-03-27 15:02 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-25 10:13 [PATCH v3 0/3] PCIe Host request to reserve IOVA Srinath Mannam
2019-01-25 10:13 ` [PATCH v3 1/3] PCI: Add dma-resv window list Srinath Mannam
2019-01-25 10:13 ` [PATCH v3 2/3] iommu/dma: Reserve IOVA for PCI host reserve address list Srinath Mannam
2019-01-25 10:13 ` [PATCH v3 3/3] PCI: iproc: Add dma reserve resources to host Srinath Mannam
2019-02-21  8:59 ` [PATCH v3 0/3] PCIe Host request to reserve IOVA Srinath Mannam
2019-03-27  8:44   ` Srinath Mannam
2019-03-27 15:02 ` Robin Murphy [this message]
2019-03-28 10:34   ` Srinath Mannam
2019-03-28 15:47     ` Robin Murphy
2019-03-29 13:21       ` Srinath Mannam

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=c92e07d7-78b2-d4ec-bf1a-29070a9d4145@arm.com \
    --to=robin.murphy@arm.com \
    --cc=bcm-kernel-feedback-list@broadcom.com \
    --cc=bhelgaas@google.com \
    --cc=iommu@lists.linux-foundation.org \
    --cc=joro@8bytes.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=lorenzo.pieralisi@arm.com \
    --cc=poza@codeaurora.org \
    --cc=rjui@broadcom.com \
    --cc=srinath.mannam@broadcom.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).