All of lore.kernel.org
 help / color / mirror / Atom feed
From: Scott Wood <scottwood@freescale.com>
To: Timur Tabi <timur@freescale.com>
Cc: Varun Sethi <Varun.Sethi@freescale.com>,
	joerg.roedel@amd.com, iommu@lists.linux-foundation.org,
	linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 3/4 v4] iommu/fsl: Add iommu domain attributes required by fsl PAMU driver.
Date: Mon, 5 Nov 2012 16:21:14 -0600	[thread overview]
Message-ID: <1352154074.28279.9@snotra> (raw)
In-Reply-To: <50983966.4080805@freescale.com> (from timur@freescale.com on Mon Nov  5 16:10:46 2012)

On 11/05/2012 04:10:46 PM, Timur Tabi wrote:
> Varun Sethi wrote:
> > 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>
> > ---
> > changes in v4:
> > - Updated comment explaining subwindows(as mentioned by Scott).
> > change in v3:
> > -renamed the stash attribute targets
> >  include/linux/iommu.h |   36 ++++++++++++++++++++++++++++++++++++
> >  1 files changed, 36 insertions(+), 0 deletions(-)
> >
> > diff --git a/include/linux/iommu.h b/include/linux/iommu.h
> > index f3b99e1..e72f5e5 100644
> > --- a/include/linux/iommu.h
> > +++ b/include/linux/iommu.h
> > @@ -44,6 +44,34 @@ 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? */
> > +
> > +	/**
> 
> /** is used by kerneldoc to indicate a kerneldoc-style comment.   
> Normal
> comments should start with just "/*".
> 
> > +	 * There could be a single contiguous window tha maps the entire
> > +	 * geometry or it could be split in to multiple subwindows.
> > +	 * Subwindows allow for supporting physically discontiguous  
> mappings.
> > +	 * This attribute indicates number of DMA subwindows supported  
> by
> > +	 * the geometry. If there is a single window that maps the  
> entire
> > +	 * geometry, attribute must be set to "1". A value of "0"  
> implies
> > +	 * that there are 256 subwindows each of size 4K. Value other  
> than
> > +	 * "0" or "1" indicates the actual number of subwindows.
> > +	 */
> > +	u32 subwindows;
> 
> Why is this a sized integer?

The whole struct should be fixed size integers, if we're going to  
eventually expose this via VFIO.

> > +/* cache stash targets */
> > +#define IOMMU_ATTR_CACHE_L1 1
> > +#define IOMMU_ATTR_CACHE_L2 2
> > +#define IOMMU_ATTR_CACHE_L3 3
> 
> This seems kinda silly.  The value of the enum is in the enum name.

There might be less obvious members of this enum in the future -- this  
is a generic API and should make as few assumptions about the hardware  
as possible.

> > +
> > +/* 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 */
> >  };
> >
> >  struct iommu_domain {
> > @@ -60,6 +88,14 @@ struct iommu_domain {
> >  enum iommu_attr {
> >  	DOMAIN_ATTR_MAX,
> >  	DOMAIN_ATTR_GEOMETRY,
> > +	/* Set the IOMMU hardware stashing
> > +	 * parameters.
> > +	 */
> > +	DOMAIN_ATTR_STASH,
> > +	/* Explicity enable/disable DMA for a
> > +         * particular memory window.
> > +         */
> > +	DOMAIN_ATTR_ENABLE,

Whitespace and comment style.

-Scott

WARNING: multiple messages have this Message-ID (diff)
From: Scott Wood <scottwood@freescale.com>
To: Timur Tabi <timur@freescale.com>
Cc: Varun Sethi <Varun.Sethi@freescale.com>,
	iommu@lists.linux-foundation.org, linuxppc-dev@lists.ozlabs.org,
	linux-kernel@vger.kernel.org, joerg.roedel@amd.com
Subject: Re: [PATCH 3/4 v4] iommu/fsl: Add iommu domain attributes required by fsl PAMU driver.
Date: Mon, 5 Nov 2012 16:21:14 -0600	[thread overview]
Message-ID: <1352154074.28279.9@snotra> (raw)
In-Reply-To: <50983966.4080805@freescale.com> (from timur@freescale.com on Mon Nov  5 16:10:46 2012)

On 11/05/2012 04:10:46 PM, Timur Tabi wrote:
> Varun Sethi wrote:
> > 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>
> > ---
> > changes in v4:
> > - Updated comment explaining subwindows(as mentioned by Scott).
> > change in v3:
> > -renamed the stash attribute targets
> >  include/linux/iommu.h |   36 ++++++++++++++++++++++++++++++++++++
> >  1 files changed, 36 insertions(+), 0 deletions(-)
> >
> > diff --git a/include/linux/iommu.h b/include/linux/iommu.h
> > index f3b99e1..e72f5e5 100644
> > --- a/include/linux/iommu.h
> > +++ b/include/linux/iommu.h
> > @@ -44,6 +44,34 @@ struct iommu_domain_geometry {
> >  	dma_addr_t aperture_start; /* First address that can be =20
> mapped    */
> >  	dma_addr_t aperture_end;   /* Last address that can be =20
> mapped     */
> >  	bool force_aperture;       /* DMA only allowed in mappable =20
> range? */
> > +
> > +	/**
>=20
> /** is used by kerneldoc to indicate a kerneldoc-style comment.  =20
> Normal
> comments should start with just "/*".
>=20
> > +	 * There could be a single contiguous window tha maps the entire
> > +	 * geometry or it could be split in to multiple subwindows.
> > +	 * Subwindows allow for supporting physically discontiguous =20
> mappings.
> > +	 * This attribute indicates number of DMA subwindows supported =20
> by
> > +	 * the geometry. If there is a single window that maps the =20
> entire
> > +	 * geometry, attribute must be set to "1". A value of "0" =20
> implies
> > +	 * that there are 256 subwindows each of size 4K. Value other =20
> than
> > +	 * "0" or "1" indicates the actual number of subwindows.
> > +	 */
> > +	u32 subwindows;
>=20
> Why is this a sized integer?

The whole struct should be fixed size integers, if we're going to =20
eventually expose this via VFIO.

> > +/* cache stash targets */
> > +#define IOMMU_ATTR_CACHE_L1 1
> > +#define IOMMU_ATTR_CACHE_L2 2
> > +#define IOMMU_ATTR_CACHE_L3 3
>=20
> This seems kinda silly.  The value of the enum is in the enum name.

There might be less obvious members of this enum in the future -- this =20
is a generic API and should make as few assumptions about the hardware =20
as possible.

> > +
> > +/* 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 */
> >  };
> >
> >  struct iommu_domain {
> > @@ -60,6 +88,14 @@ struct iommu_domain {
> >  enum iommu_attr {
> >  	DOMAIN_ATTR_MAX,
> >  	DOMAIN_ATTR_GEOMETRY,
> > +	/* Set the IOMMU hardware stashing
> > +	 * parameters.
> > +	 */
> > +	DOMAIN_ATTR_STASH,
> > +	/* Explicity enable/disable DMA for a
> > +         * particular memory window.
> > +         */
> > +	DOMAIN_ATTR_ENABLE,

Whitespace and comment style.

-Scott=

WARNING: multiple messages have this Message-ID (diff)
From: Scott Wood <scottwood@freescale.com>
To: Timur Tabi <timur@freescale.com>
Cc: Varun Sethi <Varun.Sethi@freescale.com>, <joerg.roedel@amd.com>,
	<iommu@lists.linux-foundation.org>,
	<linuxppc-dev@lists.ozlabs.org>, <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 3/4 v4] iommu/fsl: Add iommu domain attributes required by fsl PAMU driver.
Date: Mon, 5 Nov 2012 16:21:14 -0600	[thread overview]
Message-ID: <1352154074.28279.9@snotra> (raw)
In-Reply-To: <50983966.4080805@freescale.com> (from timur@freescale.com on Mon Nov  5 16:10:46 2012)

On 11/05/2012 04:10:46 PM, Timur Tabi wrote:
> Varun Sethi wrote:
> > 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>
> > ---
> > changes in v4:
> > - Updated comment explaining subwindows(as mentioned by Scott).
> > change in v3:
> > -renamed the stash attribute targets
> >  include/linux/iommu.h |   36 ++++++++++++++++++++++++++++++++++++
> >  1 files changed, 36 insertions(+), 0 deletions(-)
> >
> > diff --git a/include/linux/iommu.h b/include/linux/iommu.h
> > index f3b99e1..e72f5e5 100644
> > --- a/include/linux/iommu.h
> > +++ b/include/linux/iommu.h
> > @@ -44,6 +44,34 @@ 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? */
> > +
> > +	/**
> 
> /** is used by kerneldoc to indicate a kerneldoc-style comment.   
> Normal
> comments should start with just "/*".
> 
> > +	 * There could be a single contiguous window tha maps the entire
> > +	 * geometry or it could be split in to multiple subwindows.
> > +	 * Subwindows allow for supporting physically discontiguous  
> mappings.
> > +	 * This attribute indicates number of DMA subwindows supported  
> by
> > +	 * the geometry. If there is a single window that maps the  
> entire
> > +	 * geometry, attribute must be set to "1". A value of "0"  
> implies
> > +	 * that there are 256 subwindows each of size 4K. Value other  
> than
> > +	 * "0" or "1" indicates the actual number of subwindows.
> > +	 */
> > +	u32 subwindows;
> 
> Why is this a sized integer?

The whole struct should be fixed size integers, if we're going to  
eventually expose this via VFIO.

> > +/* cache stash targets */
> > +#define IOMMU_ATTR_CACHE_L1 1
> > +#define IOMMU_ATTR_CACHE_L2 2
> > +#define IOMMU_ATTR_CACHE_L3 3
> 
> This seems kinda silly.  The value of the enum is in the enum name.

There might be less obvious members of this enum in the future -- this  
is a generic API and should make as few assumptions about the hardware  
as possible.

> > +
> > +/* 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 */
> >  };
> >
> >  struct iommu_domain {
> > @@ -60,6 +88,14 @@ struct iommu_domain {
> >  enum iommu_attr {
> >  	DOMAIN_ATTR_MAX,
> >  	DOMAIN_ATTR_GEOMETRY,
> > +	/* Set the IOMMU hardware stashing
> > +	 * parameters.
> > +	 */
> > +	DOMAIN_ATTR_STASH,
> > +	/* Explicity enable/disable DMA for a
> > +         * particular memory window.
> > +         */
> > +	DOMAIN_ATTR_ENABLE,

Whitespace and comment style.

-Scott

  reply	other threads:[~2012-11-05 22:21 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-05 11:19 [PATCH 0/4] iommu/fsl: Freescale PAMU driver and IOMMU API implementation Varun Sethi
2012-11-05 11:19 ` Varun Sethi
2012-11-05 11:19 ` [PATCH 1/4 v2] iommu/fsl: Store iommu domain information pointer in archdata Varun Sethi
2012-11-05 11:19   ` Varun Sethi
2012-11-05 11:19   ` [PATCH 3/4 v4] iommu/fsl: Add iommu domain attributes required by fsl PAMU driver Varun Sethi
2012-11-05 11:19     ` Varun Sethi
2012-11-05 11:19     ` [PATCH 4/4 v4] iommu/fsl: Freescale PAMU driver and IOMMU API implementation Varun Sethi
2012-11-05 11:19       ` Varun Sethi
     [not found]       ` <1352114361-25192-4-git-send-email-Varun.Sethi-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2012-11-05 23:04         ` Timur Tabi
2012-11-05 23:04           ` Timur Tabi
2012-11-05 23:04           ` Timur Tabi
2012-11-05 23:11           ` Scott Wood
2012-11-05 23:11             ` Scott Wood
2012-11-05 23:11             ` Scott Wood
     [not found]     ` <1352114361-25192-3-git-send-email-Varun.Sethi-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2012-11-05 22:10       ` [PATCH 3/4 v4] iommu/fsl: Add iommu domain attributes required by fsl PAMU driver Timur Tabi
2012-11-05 22:10         ` Timur Tabi
2012-11-05 22:10         ` Timur Tabi
2012-11-05 22:21         ` Scott Wood [this message]
2012-11-05 22:21           ` Scott Wood
2012-11-05 22:21           ` Scott Wood
2012-11-05 23:56     ` Scott Wood
2012-11-05 23:56       ` Scott Wood
2012-11-05 23:56       ` Scott Wood
2012-11-05 22:05 ` [PATCH 0/4] iommu/fsl: Freescale PAMU driver and IOMMU API implementation Timur Tabi
2012-11-05 22:05   ` Timur Tabi
2012-11-05 22:05   ` Timur Tabi

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=1352154074.28279.9@snotra \
    --to=scottwood@freescale.com \
    --cc=Varun.Sethi@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 \
    --cc=timur@freescale.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.