[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a4aaf0a84ce0d48840d4c80af19bf4899667d330.camel@buserror.net>
Date: Mon, 16 Sep 2019 15:36:23 -0500
From: Scott Wood <oss@...error.net>
To: Christophe Leroy <christophe.leroy@....fr>,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Paul Mackerras <paulus@...ba.org>,
Michael Ellerman <mpe@...erman.id.au>,
galak@...nel.crashing.org
Cc: linux-kernel@...r.kernel.org, linuxppc-dev@...ts.ozlabs.org
Subject: Re: [PATCH v3 2/2] powerpc/83xx: map IMMR with a BAT.
On Mon, 2019-09-16 at 20:25 +0000, Christophe Leroy wrote:
> On mpc83xx with a QE, IMMR is 2Mbytes and aligned on 2Mbytes boundarie.
> On mpc83xx without a QE, IMMR is 1Mbyte and 1Mbyte aligned.
>
> Each driver will map a part of it to access the registers it needs.
> Some drivers will map the same part of IMMR as other drivers.
>
> In order to reduce TLB misses, map the full IMMR with a BAT. If it is
> 2Mbytes aligned, map 2Mbytes. If there is no QE, the upper part will
> remain unused, but it doesn't harm as it is mapped as guarded memory.
>
> When the IMMR is not aligned on a 2Mbytes boundarie, only map 1Mbyte.
>
> Signed-off-by: Christophe Leroy <christophe.leroy@....fr>
>
> ---
> v2:
> - use a fixmap area instead of playing with ioremap_bot
> - always map 2M unless IMMRBAR is only 1M aligned
>
> v3:
> - replaced __fix_to_virt() by fix_to_virt()
> ---
> arch/powerpc/include/asm/fixmap.h | 8 ++++++++
> arch/powerpc/platforms/83xx/misc.c | 11 +++++++++++
> 2 files changed, 19 insertions(+)
Acked-by: Scott Wood <oss@...error.net>
-Scott
Powered by blists - more mailing lists