From: gregory.clement@free-electrons.com (Gregory CLEMENT)
To: linux-arm-kernel@lists.infradead.org
Subject: LPAE for outer caches functiopns (was Re: [RFC 3/6] arm: cache-l2x0: add support for Aurora L2 cache ctrl)
Date: Fri, 10 Aug 2012 17:02:50 +0200 [thread overview]
Message-ID: <5025229A.2090007@free-electrons.com> (raw)
In-Reply-To: <20120810144730.GG2066@mudshark.cambridge.arm.com>
On 08/10/2012 04:47 PM, Will Deacon wrote:
> On Thu, Aug 09, 2012 at 05:48:44PM +0100, Gregory CLEMENT wrote:
>> Hi Will,
>
> Hi Gregory,
>
>> You will find an updated version of this patch with LPAE support. I've
>> tested with and without LPAE selected.
Just a rectification, in fact I managed to build in both case, and to run
only without LPAE support. I didn't have the support for LPAE yet. I was
surprised that it worked out of the box, but in fact I tested the wrong
kernel! I realized this this morning.
>
> Thanks for the patches.
>
>> Now I get some warning during compilation: "initialization from
>> incompatible pointer type [enabled by default]"
>>
>> It is because the outer_cache_fns struct still embed functions with
>> unsigned long for address instead of phys_addr_t. You are aware of
>> it, as you started to work on it with your patch "ARM: 6671/1: LPAE:
>> use phys_addr_t instead of unsigned long in outercache functions".
>
> Correct, I just fixed up the wrapper functions in that patch since no outer
> cache implementations required >32 bits of physical address. You're the
> lucky guy with the first implementation of such a controller :)
>
>> So a first step would be to update the definitions in struct
>> outer_cache_fns and also in the files using this prototype, I found
>> only 4 files:
>>
>> git grep -w outer_.*_range arch/arm | grep = | cut -f 1| uniq
>> arch/arm/mm/cache-feroceon-l2.c:
>> arch/arm/mm/cache-l2x0.c:
>> arch/arm/mm/cache-tauros2.c:
>> arch/arm/mm/cache-xsc3l2.c:
>>
>> But it is not enough we also fixed the call to theses functions:
>> git grep -w outer_.*_range arch/arm | grep -v = | cut -f 1 -d: | uniq
>> arch/arm/include/asm/outercache.h
>> arch/arm/kernel/smp.c
>> arch/arm/kernel/suspend.c
>> arch/arm/mach-exynos/platsmp.c
>> arch/arm/mach-highbank/highbank.c
>> arch/arm/mach-msm/platsmp.c
>> arch/arm/mach-omap2/omap-secure.c
>> arch/arm/mach-ux500/platsmp.c
>> arch/arm/mm/dma-mapping.c
>> arch/arm/mm/fault-armv.c
>> arch/arm/plat-versatile/platsmp.c
>>
>> Most of them use __pa or directly __virt_to_phys, so once the patch
>> "[PATCH 03/22] ARM: LPAE: use phys_addr_t on virt <--> phys
>> conversion" will be merged the correct type will be used.
>
> Which patch is this? part of the keystone series?
yes it is!
>
>> Finally the last file which need some change will be
>> arch/arm/mm/dma-mapping.c.
>>
>> Does it sound correct?
>>
>> If it does, then I can prepare a patch for it.
>
> Yes please, that sounds like the right direction for this. We should use
> phys_addr_t wherever we're dealing with physical addresses.
>
> Cheers,
>
> Will
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
>
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
next prev parent reply other threads:[~2012-08-10 15:02 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-08 15:05 [RFC] Add support for Aurora L2 Cache Controller Gregory CLEMENT
2012-08-08 15:05 ` [RFC 1/6] arm: cache-l2x0: make outer_cache_fns a field of l2x0_of_data Gregory CLEMENT
2012-08-08 15:05 ` [RFC 2/6] arm: cache-l2x0: add an optional register to save/restore Gregory CLEMENT
2012-08-08 15:05 ` [RFC 5/6] arm: mvebu: add Aurora L2 Cache Controller to the DT Gregory CLEMENT
2012-08-08 15:06 ` [RFC 4/6] arm: mvebu: add L2 cache support Gregory CLEMENT
2012-08-08 15:06 ` [RFC 6/6] arm: l2x0: add aurora related properties to OF binding Gregory CLEMENT
2012-08-08 15:06 ` [RFC 3/6] arm: cache-l2x0: add support for Aurora L2 cache ctrl Gregory CLEMENT
2012-08-08 15:19 ` Will Deacon
2012-08-08 16:30 ` Gregory CLEMENT
2012-08-08 16:52 ` Gregory CLEMENT
2012-08-10 14:49 ` Will Deacon
2012-08-10 15:13 ` Gregory CLEMENT
2012-08-10 15:20 ` Will Deacon
2012-08-10 15:31 ` Gregory CLEMENT
2012-08-09 16:48 ` LPAE for outer caches functiopns (was Re: [RFC 3/6] arm: cache-l2x0: add support for Aurora L2 cache ctrl) Gregory CLEMENT
2012-08-09 16:49 ` [RFC 2 3/6] arm: cache-l2x0: add support for Aurora L2 cache ctrl Gregory CLEMENT
2012-08-10 14:47 ` LPAE for outer caches functiopns (was Re: [RFC 3/6] arm: cache-l2x0: add support for Aurora L2 cache ctrl) Will Deacon
2012-08-10 15:02 ` Gregory CLEMENT [this message]
2012-08-13 10:44 ` Will Deacon
2012-08-08 15:16 ` [RFC] Add support for Aurora L2 Cache Controller Catalin Marinas
2012-08-21 7:29 ` Gregory CLEMENT
2012-08-08 16:22 ` Gregory CLEMENT
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=5025229A.2090007@free-electrons.com \
--to=gregory.clement@free-electrons.com \
--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 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.