From: maxime.coquelin@st.com (Maxime Coquelin)
To: linux-arm-kernel@lists.infradead.org
Subject: *READ THIS IF YOUR SOC HAS A L2 CACHE* PL310 auxctrl settings
Date: Fri, 28 Mar 2014 13:51:27 +0100 [thread overview]
Message-ID: <5335704F.4090502@st.com> (raw)
In-Reply-To: <20140318112221.GV21483@n2100.arm.linux.org.uk>
On 03/18/2014 12:22 PM, Russell King - ARM Linux wrote:
> On Mon, Mar 17, 2014 at 09:00:03AM -0500, Rob Herring wrote:
>> On Sun, Mar 16, 2014 at 10:29 AM, Russell King - ARM Linux
>> <linux@arm.linux.org.uk> wrote:
>>> static struct l2x0_aux prima2_l2x0_aux __initconst = {
>>> .val = 2 << L2X0_AUX_CTRL_WAY_SIZE_SHIFT,
>>> .mask = 0,
>>> };
>>>
>>> static struct l2x0_aux marco_l2x0_aux __initconst = {
>>> .val = (2 << L2X0_AUX_CTRL_WAY_SIZE_SHIFT) |
>>> (1 << L2X0_AUX_CTRL_ASSOCIATIVITY_SHIFT),
>>> .mask = L2X0_AUX_CTRL_MASK,
>>
>> What I like about this is all the bits they are clearing and failing
>> to set. Shared override, prefetch, etc.
>
> It gets more fun when you see the full picture. Here's a table of the
> auxctrl settings that everyone uses. The "good" ones which leave the
> auxctrl register value alone are listed at the top.
>
> DT val mask
> arch/arm/mach-bcm/board_bcm281xx.c: Y 00000000 ffffffff
> arch/arm/mach-highbank/highbank.c: Y 00000000 ffffffff
> arch/arm/mach-imx/mach-vf610.c: Y 00000000 ffffffff
> arch/arm/mach-imx/system.c: Y 00000000 ffffffff
> arch/arm/mach-mvebu/armada-370-xp.c: Y 00000000 ffffffff
> arch/arm/mach-rockchip/rockchip.c: Y 00000000 ffffffff
> arch/arm/mach-socfpga/socfpga.c: Y 00000000 ffffffff
> arch/arm/mach-berlin/berlin.c: Y 70c00000 feffffff
> arch/arm/mach-cns3xxx/core.c: N 00540000 fe000fff
> arch/arm/mach-exynos/common.c: Y 7c470001 c200ffff
> arch/arm/mach-imx/mm-imx3.c: N 00030024 00000000
> arch/arm/mach-nomadik/cpu-8815.c: Y 00730249 fe000fff
> arch/arm/mach-omap2/omap4-common.c: Y aux_ctrl aux_mask
> arch/arm/mach-omap2/omap4-common.c: N aux_ctrl aux_mask
> arch/arm/mach-prima2/l2x0.c: Y aux->val aux->mask
> arch/arm/mach-realview/realview_pbx.c: N 02520000 c0000fff
> arch/arm/mach-realview/realview_pb1176.c: N 00730000 fe000fff
> arch/arm/mach-realview/realview_eb.c: N 00790000 fe000fff
> arch/arm/mach-realview/realview_pb11mp.c: N 00790000 fe000fff
> arch/arm/mach-shmobile/setup-r8a7779.c: N 40470000 82000fff
> arch/arm/mach-shmobile/board-kzm9g.c: N 40460000 82000fff
> arch/arm/mach-shmobile/board-kzm9g-reference.c: N 40460000 82000fff
> arch/arm/mach-shmobile/board-armadillo800eva.c: N 40440000 82000fff
> arch/arm/mach-shmobile/board-armadillo800eva-reference.c:N 40440000 82000fff
> arch/arm/mach-shmobile/setup-r8a7778.c: N 40470000 82000fff
> arch/arm/mach-spear/spear13xx.c: N 70a60001 fe00ffff
> arch/arm/mach-sti/board-dt.c: Y 30480000 c0000fff
For STiH416 SoC, the reset value of the AUX_CTRL register is 0x02000000.
So bits 19:17 = 0, whereas the expected value is bits 19:17 = 4.
IIRC, for the other STi SoCs, the reset value is the good one.
Note that on STi platforms, the kernel runs in Secure mode, so it can
write this register directly, without having to issue SMC call.
Regards,
Maxime
next prev parent reply other threads:[~2014-03-28 12:51 UTC|newest]
Thread overview: 76+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-14 14:48 PL310 errata workarounds Russell King - ARM Linux
2014-03-14 15:01 ` Russell King - ARM Linux
2014-03-14 16:02 ` Rob Herring
2014-03-14 17:57 ` Russell King - ARM Linux
2014-03-14 19:14 ` Rob Herring
2014-03-14 20:32 ` Russell King - ARM Linux
2014-03-19 21:22 ` Marek Vasut
2014-03-19 21:35 ` Rob Herring
2014-03-19 21:46 ` Russell King - ARM Linux
2014-03-19 21:54 ` Marek Vasut
2014-03-16 11:52 ` Russell King - ARM Linux
2014-03-17 15:04 ` Rob Herring
2014-03-17 15:37 ` Russell King - ARM Linux
2014-03-17 17:29 ` Catalin Marinas
2014-03-17 19:44 ` Russell King - ARM Linux
2014-03-17 21:09 ` Nicolas Pitre
2014-03-17 21:14 ` Russell King - ARM Linux
2014-03-17 21:54 ` Nicolas Pitre
2014-03-16 15:29 ` Russell King - ARM Linux
2014-03-17 14:00 ` Rob Herring
2014-03-17 14:40 ` Russell King - ARM Linux
2014-03-18 11:22 ` *READ THIS IF YOUR SOC HAS A L2 CACHE* PL310 auxctrl settings Russell King - ARM Linux
2014-03-28 12:51 ` Maxime Coquelin [this message]
2014-03-28 13:02 ` Russell King - ARM Linux
2014-03-28 13:32 ` Maxime Coquelin
2014-03-18 17:26 ` PL310 errata workarounds Russell King - ARM Linux
2014-03-19 21:52 ` Marek Vasut
2014-03-19 22:51 ` Russell King - ARM Linux
2014-03-19 23:05 ` FEC ethernet issues [Was: PL310 errata workarounds] Marek Vasut
2014-03-20 4:01 ` Marek Vasut
2014-03-20 22:27 ` Fabio Estevam
2014-03-20 23:06 ` Russell King - ARM Linux
2014-03-21 0:24 ` Troy Kisky
2014-03-21 1:18 ` Russell King - ARM Linux
2014-03-21 1:36 ` Fabio Estevam
2014-03-21 1:43 ` Fabio Estevam
2014-03-21 16:37 ` Bernd Faust
[not found] ` <CANBf9eNZB+BVBDkgWNxxGs-ndQ-mYCc6+bfVdS-8T-QLpSZ3GA@mail.gmail.com>
2014-03-21 17:32 ` Russell King - ARM Linux
2014-03-23 11:38 ` Bernd Faust
2014-03-23 13:44 ` Russell King - ARM Linux
2014-03-24 17:57 ` robert.daniels at vantagecontrols.com
2014-03-24 20:21 ` Marek Vasut
2014-03-24 22:37 ` robert.daniels at vantagecontrols.com
2014-03-24 23:44 ` Russell King - ARM Linux
2014-03-25 1:02 ` Marek Vasut
2014-03-25 23:10 ` Russell King - ARM Linux
2014-03-26 0:11 ` Russell King - ARM Linux
2014-04-01 9:26 ` Russell King - ARM Linux
2014-04-01 14:00 ` Eric Nelson
2014-04-01 17:29 ` Russell King - ARM Linux
2014-04-01 18:11 ` Eric Nelson
2014-04-02 2:26 ` fugang.duan at freescale.com
2014-04-01 19:38 ` robert.daniels at vantagecontrols.com
2014-04-01 22:51 ` Russell King - ARM Linux
2014-04-02 0:37 ` robert.daniels at vantagecontrols.com
2014-04-02 3:19 ` fugang.duan at freescale.com
2014-04-02 8:59 ` Russell King - ARM Linux
2014-04-02 9:40 ` fugang.duan at freescale.com
2014-04-02 10:46 ` Russell King - ARM Linux
2014-04-02 11:33 ` fugang.duan at freescale.com
2014-04-02 16:51 ` Russell King - ARM Linux
2014-04-03 2:41 ` fugang.duan at freescale.com
2014-04-03 8:56 ` Russell King - ARM Linux
2014-04-03 9:55 ` fugang.duan at freescale.com
2014-04-03 10:32 ` Russell King - ARM Linux
2014-04-03 13:36 ` Shawn Guo
2014-04-03 13:45 ` Russell King - ARM Linux
2014-04-03 14:00 ` Shawn Guo
2014-04-04 20:21 ` robert.daniels at vantagecontrols.com
2014-04-29 9:26 ` Jaccon Bastiaansen
[not found] ` <CAGzjT4d8H6YE6P6A1E4aHiPAenJFvZH01LHXaNzVwhF2MRBvWQ@mail.gmail.com>
2014-05-02 11:41 ` Russell King - ARM Linux
2014-05-08 9:23 ` Jaccon Bastiaansen
2014-03-21 15:50 ` PL310 errata workarounds Frank Li
2014-03-21 17:12 ` Russell King - ARM Linux
2014-03-17 16:32 ` Russell King - ARM Linux
2014-03-17 16:51 ` Russell King - ARM Linux
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=5335704F.4090502@st.com \
--to=maxime.coquelin@st.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.