Skip to content

ioremap_wc on arm64

Jayachandran C linux-arm-kernel 1 version New

Get series with b4
b4 am 20170522115349.GA82957@localhost

Versions newest first

  1. v1 Latest0 of 2 patches 0 repliesNew

Patches in v1 No applies recorded yet

None of the 2 patches the cover letter announces are in this archive.

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 0/2] ioremap_wc on arm64
Quoted 6 lines · Catalin Marinas
Quoted 5 lines · Jayachandran C

From its definition, the device "gather" attribute seems to be a better fit for implementing write combining mapping in ioremap_wc(). And on ThunderX2, Device GRE mapping has optimizations that makes it much faster than normal uncached mapping.

Quoted 6 lines
Quoted 3 lines

I am not sure of the reasoning behind the original decision to make ioremap_wc use "Normal Non-Cached" attribute, since all the other variants of ioremap use device attributes, and ioremap_wc looks like an exception.

The reason we kept it as Normal NC is that Device_GRE does not allow unaligned accesses.

There does not to be an expectation to have unaligned access on __iomem pointers. I also see that memremap can call ioremap_wc (which is a Normal mapping) or ioremap_wt(which is a Device mapping), so that is inconsistent as well.

Was this added for a specific use case? Also, do you think this patchset is acceptable?

Thanks,
JC.