[GIT PULL v3] updates to qbman (soc drivers) to support arm/arm64

Roy Pledge roy.pledge at nxp.com
Tue Jun 27 12:03:42 PDT 2017


On 6/27/2017 6:35 AM, Arnd Bergmann wrote:
> On Tue, Jun 27, 2017 at 11:10 AM, Russell King - ARM Linux
> <linux at armlinux.org.uk> wrote:
>> On Tue, Jun 27, 2017 at 11:05:38AM +0200, Arnd Bergmann wrote:
>>> On Tue, Jun 27, 2017 at 10:17 AM, Russell King - ARM Linux
>>> <linux at armlinux.org.uk> wrote:
>>>
>>> I wonder if doing memcpy_toio on the write-combining mapping
>>> will do what Roy wants and and up sending a single bus transaction
>>> for one descriptor most of the time, while fitting in with the ioremap_wc()
>>> interface and its __iomem pointers.
>>
>> Either the CE region needs __iomem pointers and proper accessors, or
>> it needs to be using memremap(offset, size, MEMREMAP_WC) and not use
>> the iomem accessors.
>
> Right, memremap() would work here as well. If there are no other constraints,
> using ioremap_wc and __iomem pointers would have the advantage of giving
> us a little more type safety, but it depends on what operations we actually
> need to do on the data.

I explained a bit in other threads so this is my plan for a respin
1) Have the Cache Enable areas mapped by memremap()
2) Make sure the __iomem is being respected for the Cache Inhibted areas
3) Get rid of the flush()/prefetch() ARM/ARM64 implementations - the 
calls will only have implementation for PPC.

Roy


>
>         Arnd
>




More information about the linux-arm-kernel mailing list