mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Kumar Gala <galak@kernel.crashing.org>
To: Sethi Varun-B16395 <B16395@freescale.com>
Cc: Wood Scott-B07421 <B07421@freescale.com>,
	"joerg.roedel@amd.com" <joerg.roedel@amd.com>,
	"iommu@lists.linux-foundation.org"
	<iommu@lists.linux-foundation.org>,
	"linuxppc-dev@lists.ozlabs.org" <linuxppc-dev@lists.ozlabs.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [RFC][PATCH 2/3] iommu/fsl: Add iommu domain attributes required by fsl PAMU driver.
Date: Thu, 20 Sep 2012 08:19:13 -0500	[thread overview]
Message-ID: <84F4C3DA-4B61-4D1D-9FB3-B3F520BFE022@kernel.crashing.org> (raw)
In-Reply-To: <C5ECD7A89D1DC44195F34B25E172658D1A49A2@039-SN2MPN1-013.039d.mgd.msft.net>


On Sep 20, 2012, at 4:46 AM, Sethi Varun-B16395 wrote:

> 
> 
>> -----Original Message-----
>> From: Wood Scott-B07421
>> Sent: Thursday, September 20, 2012 5:42 AM
>> To: Kumar Gala
>> Cc: Sethi Varun-B16395; joerg.roedel@amd.com; iommu@lists.linux-
>> foundation.org; linuxppc-dev@lists.ozlabs.org; linux-
>> kernel@vger.kernel.org; Sethi Varun-B16395
>> Subject: Re: [RFC][PATCH 2/3] iommu/fsl: Add iommu domain attributes
>> required by fsl PAMU driver.
>> 
>> On 09/19/2012 08:52:27 AM, Kumar Gala wrote:
>>> 
>>> On Sep 19, 2012, at 8:17 AM, <b16395@freescale.com>
>>> <b16395@freescale.com> wrote:
>>> 
>>>> From: Varun Sethi <Varun.Sethi@freescale.com>
>>>> 
>>>> Added the following domain attributes required by FSL PAMU driver:
>>>> 1. Subwindows field added to the iommu domain geometry attribute.
>>>> 2. Added new iommu stash attribute, which allows setting of the
>>>>  LIODN specific stash id parameter through IOMMU API.
>>>> 3. Added an attribute for enabling/disabling DMA to a particular
>>>>  memory window.
>>>> 
>>>> Signed-off-by: Varun Sethi <Varun.Sethi@freescale.com>
>>>> ---
>>>> include/linux/iommu.h |   30 ++++++++++++++++++++++++++++++
>>>> 1 files changed, 30 insertions(+), 0 deletions(-)
>>>> 
>>>> diff --git a/include/linux/iommu.h b/include/linux/iommu.h index
>>>> 7e83370..eaa40c6 100644
>>>> --- a/include/linux/iommu.h
>>>> +++ b/include/linux/iommu.h
>>>> @@ -44,6 +44,28 @@ struct iommu_domain_geometry {
>>>> 	dma_addr_t aperture_start; /* First address that can be
>>> mapped    */
>>>> 	dma_addr_t aperture_end;   /* Last address that can be
>>> mapped     */
>>>> 	bool force_aperture;       /* DMA only allowed in mappable
>>> range? */
>>>> +
>>>> +	/* The subwindows field indicates number of DMA subwindows
>>> supported
>>>> +	 * by the geometry. Following is the interpretation of
>>>> +	 * values for this field:
>>>> +	 * 0 : This implies that the supported geometry size is 1 MB
>>>> +         * with each subwindow size being 4KB. Thus number of
>>> subwindows
>>>> +	 * being = 1MB/4KB = 256.
>>>> +	 * 1 : Only one DMA window i.e. no subwindows.
>>>> +	 * value other than 0 or 1 would indicate actual number of
>>> subwindows.
>>>> +	 */
>>>> +	u32 subwindows;
>>>> +};
>>>> +
>>>> +/* This attribute corresponds to IOMMUs capable of generating
>>>> + * a stash transaction. A stash transaction is typically a
>>>> + * hardware initiated prefetch of data from memory to cache.
>>>> + * This attribute allows configuring stashig specific parameters
>>>> + * in the IOMMU hardware.
>>>> + */
>>>> +struct iommu_stash_attribute {
>>>> +	u32 	cpu;	/* cpu number */
>>>> +	u32 	cache;	/* cache to stash to: L1,L2,L3 */
>>> 
>>> seems like this should be enum instead of u32 for cache
>>> 
>>> With enum being something like:
>>> 
>>> enum iommu_attr_stash_cache {
>>> 	IOMMU_ATTR_CACHE_L1,
>>> 	IOMMU_ATTR_CACHE_L2,
>>> 	IOMMU_ATTR_CACHE_L3,
>>> };
>> 
>> Don't we want these structs to be usable via some VFIO ioctl?  In that
>> case they need to use fixed size types.
>> 
> Yes, this would be usable via vfio ioctl. But, then the caller should be
> aware of supported stash targets. May be I should add an interface for the caller,
> to query supported stash targets.

Guess the caller probably knows, but thinking we should move the #defines for valid values into this file out of pamu specific files.

- k

  reply	other threads:[~2012-09-20 13:19 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-19 13:17 [RFC][PATCH 0/3] iommu/fsl: Freescale PAMU driver and IOMMU API implementation b16395
2012-09-19 13:17 ` [RFC][PATCH 1/3] iommu/fsl: Store iommu domain information pointer in archdata b16395
2012-09-19 13:50   ` Kumar Gala
2012-10-04 16:30     ` Sethi Varun-B16395
2012-09-19 13:17 ` [RFC][PATCH 2/3] iommu/fsl: Add iommu domain attributes required by fsl PAMU driver b16395
2012-09-19 13:52   ` Kumar Gala
2012-09-20  0:12     ` Scott Wood
2012-09-20  9:46       ` Sethi Varun-B16395
2012-09-20 13:19         ` Kumar Gala [this message]
2012-09-19 13:17 ` [RFC][PATCH 3/3] iommu/fsl: Freescale PAMU driver and IOMMU API implementation b16395
2012-09-19 14:18   ` Kumar Gala
2012-09-19 13:49 ` [RFC][PATCH 0/3] " Kumar Gala
2012-09-20  0:14   ` Scott Wood

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=84F4C3DA-4B61-4D1D-9FB3-B3F520BFE022@kernel.crashing.org \
    --to=galak@kernel.crashing.org \
    --cc=B07421@freescale.com \
    --cc=B16395@freescale.com \
    --cc=iommu@lists.linux-foundation.org \
    --cc=joerg.roedel@amd.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.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 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®