From: oss@buserror.net (Scott Wood)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 06/10] soc/qbman: Add ARM equivalent for flush_dcache_range()
Date: Fri, 27 Jan 2017 20:34:32 -0600 [thread overview]
Message-ID: <1485570872.9266.22.camel@buserror.net> (raw)
In-Reply-To: <CAK8P3a1Gd4bd7GjEp_a9WXc_mTPk0XmP7DH8aPWhbn2K3MMuDQ@mail.gmail.com>
On Fri, 2017-01-27 at 17:41 +0100, Arnd Bergmann wrote:
> On Thu, Jan 26, 2017 at 6:08 AM, Scott Wood <scott.wood@nxp.com> wrote:
> >
> > On 01/25/2017 03:20 PM, Arnd Bergmann wrote:
> > >
> > > On Monday, January 23, 2017 7:24:59 PM CET Roy Pledge wrote:
> >
> > >
> > > If this is normal RAM, you should be able to just write zeroes, and then
> > > do a dma_map_single() for initialization.
> > The DMA API on PPC currently has no way of knowing that the device
> > accesses this memory incoherently.
> Ah, this is because PPC doesn't use the 'dma-coherent' property on devices
> but just assumes that coherency is a global property of the platform,right?
Right.
> > If that were somehow fixed, we still couldn't use dma_map_single() as it
> > doesn't accept virtual addresses that come from memremap() or similar
> > dynamic mappings.??We'd have to convert the physical address to an array
> > of struct pages and pass each one to dma_map_page().
> Sorry for my ignorance, but where does the memory come from to start
> with? Is this in the normal linearly mapped RAM, in a carveout outside
> of the linear mapping but the same memory, or in some on-chip buffer?
It's RAM that comes from the device tree reserved memory mechanism
(drivers/of/of_reserved_mem.c). ?On a 32-bit kernel it is not guaranteed (or
likely) to be lowmem.
> > And even if we did all that, there would still be other manual cache
> > manipulation left in this driver, to deal with its cacheable register
> > interface.
> I thought we had concluded that "cacheable register" is something
> that cannot work reliably on ARM at all when this came up before.
> Any updates on that?
I'm not familiar with the details there... ?My understanding is that the
hardware people at NXP are convinced that it can work on these specific chips
due to implementation details.
-Scott
next prev parent reply other threads:[~2017-01-28 2:34 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-18 22:39 [PATCH 00/10] fsl/qbman: ARM Enablement Roy Pledge
2017-01-18 22:39 ` [PATCH 01/10] soc/qbman: Use portable mapping for the FQD reserved memory Roy Pledge
2017-01-18 22:39 ` [PATCH 02/10] soc/qbman: Drop set/clear_bits usage Roy Pledge
2017-01-18 22:39 ` [PATCH 03/10] soc/qbman: Drop L1_CACHE_BYTES compile time check Roy Pledge
2017-01-18 22:39 ` [PATCH 04/10] soc/qbman: Fix ARM32 typo Roy Pledge
2017-01-18 22:39 ` [PATCH 05/10] soc/qbman: Rework ioremap() calls for ARM/PPC Roy Pledge
2017-01-18 22:39 ` [PATCH 06/10] soc/qbman: Add ARM equivalent for flush_dcache_range() Roy Pledge
2017-01-18 23:12 ` Russell King - ARM Linux
2017-01-18 23:36 ` Scott Wood
2017-01-23 19:24 ` Roy Pledge
2017-01-25 21:20 ` Arnd Bergmann
2017-01-26 5:08 ` Scott Wood
2017-01-27 16:41 ` Arnd Bergmann
2017-01-28 2:34 ` Scott Wood [this message]
2017-01-30 15:31 ` Robin Murphy
2017-01-30 19:04 ` Roy Pledge
2017-02-01 13:03 ` Robin Murphy
2017-02-01 22:51 ` Scott Wood
2017-02-06 22:26 ` Roy Pledge
2017-02-06 22:37 ` Russell King - ARM Linux
2017-02-07 16:44 ` Roy Pledge
2017-02-07 18:25 ` Robin Murphy
2017-02-13 21:26 ` Roy Pledge
2017-03-16 0:43 ` Roy Pledge
2017-03-16 20:08 ` Scott Wood
2017-03-29 21:19 ` Roy Pledge
2017-01-30 15:19 ` Russell King - ARM Linux
2017-02-01 12:47 ` Arnd Bergmann
2017-02-01 23:16 ` Russell King - ARM Linux
2017-02-02 17:21 ` Roy Pledge
2017-01-30 15:04 ` Russell King - ARM Linux
2017-02-01 12:52 ` Arnd Bergmann
2017-01-30 15:12 ` Russell King - ARM Linux
2017-01-18 22:39 ` [PATCH 07/10] soc/qbman: add QMAN_REV32 Roy Pledge
2017-01-18 22:39 ` [PATCH 08/10] soc/qbman: different register offsets on ARM Roy Pledge
2017-01-18 22:39 ` [PATCH 09/10] soc/qbman: Add missing headers " Roy Pledge
2017-01-18 22:39 ` [PATCH 10/10] fsl/qbman: Enable FSL_LAYERSCAPE config " Roy Pledge
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=1485570872.9266.22.camel@buserror.net \
--to=oss@buserror.net \
--cc=linux-arm-kernel@lists.infradead.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;
as well as URLs for NNTP newsgroup(s).