All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marek Vasut <marex@denx.de>
To: "Russell King - ARM Linux" <linux@arm.linux.org.uk>
Cc: Cyrille Pitchen <cyrille.pitchen@atmel.com>,
	mark.rutland@arm.com, devicetree@vger.kernel.org,
	pawel.moll@arm.com, ijc+devicetree@hellion.org.uk,
	ben@decadent.org.uk, zajec5@gmail.com, nicolas.ferre@atmel.com,
	linux-kernel@vger.kernel.org, robh+dt@kernel.org,
	linux-spi@vger.kernel.org, juhosg@openwrt.org,
	broonie@kernel.org, linux-mtd@lists.infradead.org,
	galak@codeaurora.org, shijie.huang@intel.com,
	computersforpeace@gmail.com, dwmw2@infradead.org,
	linux-arm-kernel@lists.infradead.org, beanhuo@micron.com
Subject: Re: [PATCH linux-next v4 5/5] mtd: atmel-quadspi: add driver for Atmel QSPI controller
Date: Mon, 24 Aug 2015 15:15:44 +0200	[thread overview]
Message-ID: <201508241515.45036.marex@denx.de> (raw)
In-Reply-To: <20150824124924.GZ7557@n2100.arm.linux.org.uk>

On Monday, August 24, 2015 at 02:49:24 PM, Russell King - ARM Linux wrote:

Hi Russell,

> On Mon, Aug 24, 2015 at 01:03:51PM +0200, Marek Vasut wrote:
> > These are functions, not macros :)
> > 
> > btw is there any reason for these ? I'd say, just put the read*() and
> > write*() functions directly into the code and be done with it, it is
> > much less confusing.
> > 
> > Also, why do you use the _relaxed() versions of the functions ?
> 
> Now that the _relaxed() accessors are available throughout the kernel,
> everyone should be using the _relaxed() versions unless they need the
> properties of the non-relaxed versions.

You mean the memory barrier, right ?

> Remember that the non-relaxed
> versions are rather expensive on ARM due to the need to go all the way
> out to the L2 cache - it at least doubles the number of accesses for
> every read*/write*().

I think in case of this driver, we don't need the non-relaxed version
anywhere, right ? Thanks for the educational writeup :)

btw. is [1] still the current study material on the I/O accessor best
practices please ?

[1] http://permalink.gmane.org/gmane.linux.ports.arm.kernel/117644

Best regards,
Marek Vasut

WARNING: multiple messages have this Message-ID (diff)
From: marex@denx.de (Marek Vasut)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH linux-next v4 5/5] mtd: atmel-quadspi: add driver for Atmel QSPI controller
Date: Mon, 24 Aug 2015 15:15:44 +0200	[thread overview]
Message-ID: <201508241515.45036.marex@denx.de> (raw)
In-Reply-To: <20150824124924.GZ7557@n2100.arm.linux.org.uk>

On Monday, August 24, 2015 at 02:49:24 PM, Russell King - ARM Linux wrote:

Hi Russell,

> On Mon, Aug 24, 2015 at 01:03:51PM +0200, Marek Vasut wrote:
> > These are functions, not macros :)
> > 
> > btw is there any reason for these ? I'd say, just put the read*() and
> > write*() functions directly into the code and be done with it, it is
> > much less confusing.
> > 
> > Also, why do you use the _relaxed() versions of the functions ?
> 
> Now that the _relaxed() accessors are available throughout the kernel,
> everyone should be using the _relaxed() versions unless they need the
> properties of the non-relaxed versions.

You mean the memory barrier, right ?

> Remember that the non-relaxed
> versions are rather expensive on ARM due to the need to go all the way
> out to the L2 cache - it at least doubles the number of accesses for
> every read*/write*().

I think in case of this driver, we don't need the non-relaxed version
anywhere, right ? Thanks for the educational writeup :)

btw. is [1] still the current study material on the I/O accessor best
practices please ?

[1] http://permalink.gmane.org/gmane.linux.ports.arm.kernel/117644

Best regards,
Marek Vasut

  reply	other threads:[~2015-08-24 13:15 UTC|newest]

Thread overview: 70+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-24 10:13 [PATCH linux-next v4 0/5] add driver for Atmel QSPI controller Cyrille Pitchen
2015-08-24 10:13 ` Cyrille Pitchen
2015-08-24 10:13 ` Cyrille Pitchen
2015-08-24 10:13 ` Cyrille Pitchen
2015-08-24 10:13 ` [PATCH linux-next v4 1/5] mtd: spi-nor: notify (Q)SPI controller about protocol change Cyrille Pitchen
2015-08-24 10:13   ` Cyrille Pitchen
2015-08-24 10:13   ` Cyrille Pitchen
2015-08-24 10:16   ` Marek Vasut
2015-08-24 10:16     ` Marek Vasut
2015-08-24 10:13 ` [PATCH linux-next v4 2/5] Documentation: mtd: add a DT property to set the number of dummy cycles Cyrille Pitchen
2015-08-24 10:13   ` Cyrille Pitchen
2015-08-24 10:13   ` Cyrille Pitchen
2015-08-24 10:13   ` Cyrille Pitchen
2015-08-24 10:13 ` [PATCH linux-next v4 3/5] mtd: spi-nor: allow to tune " Cyrille Pitchen
2015-08-24 10:13   ` Cyrille Pitchen
2015-08-24 10:13   ` Cyrille Pitchen
2015-08-24 10:13   ` Cyrille Pitchen
2015-08-24 10:48   ` Marek Vasut
2015-08-24 10:48     ` Marek Vasut
2015-08-24 16:42     ` Cyrille Pitchen
2015-08-24 16:42       ` Cyrille Pitchen
2015-08-24 16:42       ` Cyrille Pitchen
2015-08-24 16:42       ` Cyrille Pitchen
2015-08-24 16:48       ` Marek Vasut
2015-08-24 16:48         ` Marek Vasut
2015-08-24 16:48         ` Marek Vasut
2015-08-24 10:13 ` [PATCH linux-next v4 4/5] Documentation: atmel-quadspi: add binding file for Atmel QSPI driver Cyrille Pitchen
2015-08-24 10:13   ` Cyrille Pitchen
2015-08-24 10:13   ` Cyrille Pitchen
2015-08-24 10:13   ` Cyrille Pitchen
2015-08-24 10:22   ` Marek Vasut
2015-08-24 10:22     ` Marek Vasut
2015-08-24 10:22     ` Marek Vasut
2015-08-24 10:14 ` [PATCH linux-next v4 5/5] mtd: atmel-quadspi: add driver for Atmel QSPI controller Cyrille Pitchen
2015-08-24 10:14   ` Cyrille Pitchen
2015-08-24 10:14   ` Cyrille Pitchen
2015-08-24 11:03   ` Marek Vasut
2015-08-24 11:03     ` Marek Vasut
2015-08-24 11:03     ` Marek Vasut
2015-08-24 12:49     ` Russell King - ARM Linux
2015-08-24 12:49       ` Russell King - ARM Linux
2015-08-24 12:49       ` Russell King - ARM Linux
2015-08-24 13:15       ` Marek Vasut [this message]
2015-08-24 13:15         ` Marek Vasut
2015-08-24 17:04     ` Cyrille Pitchen
2015-08-24 17:04       ` Cyrille Pitchen
2015-08-24 17:04       ` Cyrille Pitchen
2015-08-24 17:45       ` Marek Vasut
2015-08-24 17:45         ` Marek Vasut
2015-08-24 17:45         ` Marek Vasut
2015-08-25  9:46         ` Jonas Gorski
2015-08-25  9:46           ` Jonas Gorski
2015-08-25  9:46           ` Jonas Gorski
2015-08-25 10:21           ` Cyrille Pitchen
2015-08-25 10:21             ` Cyrille Pitchen
2015-08-25 10:21             ` Cyrille Pitchen
2015-08-25 10:17     ` Cyrille Pitchen
2015-08-25 10:17       ` Cyrille Pitchen
2015-08-25 10:17       ` Cyrille Pitchen
2015-08-25 10:22       ` Marek Vasut
2015-08-25 10:22         ` Marek Vasut
2015-08-25 10:22         ` Marek Vasut
2015-08-25 15:57         ` Brian Norris
2015-08-25 15:57           ` Brian Norris
2015-08-25 15:57           ` Brian Norris
2015-08-25  1:44   ` Bean Huo 霍斌斌 (beanhuo)
2015-08-25  1:44     ` Bean Huo 霍斌斌 (beanhuo)
2015-08-25 11:24     ` Cyrille Pitchen
2015-08-25 11:24       ` Cyrille Pitchen
2015-08-25 11:24       ` Cyrille Pitchen

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=201508241515.45036.marex@denx.de \
    --to=marex@denx.de \
    --cc=beanhuo@micron.com \
    --cc=ben@decadent.org.uk \
    --cc=broonie@kernel.org \
    --cc=computersforpeace@gmail.com \
    --cc=cyrille.pitchen@atmel.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dwmw2@infradead.org \
    --cc=galak@codeaurora.org \
    --cc=ijc+devicetree@hellion.org.uk \
    --cc=juhosg@openwrt.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.org \
    --cc=linux-spi@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=mark.rutland@arm.com \
    --cc=nicolas.ferre@atmel.com \
    --cc=pawel.moll@arm.com \
    --cc=robh+dt@kernel.org \
    --cc=shijie.huang@intel.com \
    --cc=zajec5@gmail.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.