From: robin.murphy@arm.com (Robin Murphy)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 1/2] ARM: realview: Fix PBX-A9 cache description
Date: Fri, 15 Jul 2016 18:45:32 +0100	[thread overview]
Message-ID: <5789213C.4060306@arm.com> (raw)
In-Reply-To: <dbf8749c4af9aa5ffb85e961b7ae09ffeefa7f2a.1468583959.git.robin.murphy@arm.com>
On 15/07/16 13:19, Robin Murphy wrote:
> Clearly QEMU is very permissive in how its PL310 model may be set up,
> but the real hardware turns out to be far more particular about things
> actually being correct. Fix up the DT description so that the real
> thing actually boots:
> 
> - The arm,data-latency and arm,tag-latency properties need 3 cells to
>   be valid, otherwise we end up retaining the default 8-cycle latencies
>   which leads pretty quickly to lockup.
> - The arm,dirty-latency property is only relevant to L210/L220, so get
>   rid of it.
> - The cache geometry override also leads to lockup and/or general
>   misbehaviour. Irritatingly, the manual doesn't state the actual PL310
>   configuration, but based on the boardfile code and poking registers
>   from the Boot Monitor, it would seem to be 8 sets of 16KB ways.
FWIW, after an afternoon of bothering people I've tracked down the
original spec for the test chip, and can confirm that the configuration
is indeed 8x16KB with parity disabled.
Robin.
> With that, we can successfully boot to enjoy the fun of mismatched FPUs...
> 
> Signed-off-by: Robin Murphy <robin.murphy@arm.com>
> ---
>  arch/arm/boot/dts/arm-realview-pbx-a9.dts | 9 ++++-----
>  1 file changed, 4 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/arm-realview-pbx-a9.dts b/arch/arm/boot/dts/arm-realview-pbx-a9.dts
> index db808f92dd79..90d00b407f85 100644
> --- a/arch/arm/boot/dts/arm-realview-pbx-a9.dts
> +++ b/arch/arm/boot/dts/arm-realview-pbx-a9.dts
> @@ -70,13 +70,12 @@
>  		 * associativity as these may be erroneously set
>  		 * up by boot loader(s).
>  		 */
> -		cache-size = <1048576>; // 1MB
> -		cache-sets = <4096>;
> +		cache-size = <131072>; // 128KB
> +		cache-sets = <512>;
>  		cache-line-size = <32>;
>  		arm,parity-disable;
> -		arm,tag-latency = <1>;
> -		arm,data-latency = <1 1>;
> -		arm,dirty-latency = <1>;
> +		arm,tag-latency = <1 1 1>;
> +		arm,data-latency = <1 1 1>;
>  	};
>  
>  	scu: scu at 1f000000 {
> 
next prev parent reply	other threads:[~2016-07-15 17:45 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-15 12:19 [PATCH 1/2] ARM: realview: Fix PBX-A9 cache description Robin Murphy
2016-07-15 12:19 ` [PATCH 2/2] ARM: realview: Extend PBX family memory description Robin Murphy
2016-07-22 15:06   ` Linus Walleij
2016-07-22 18:00     ` Robin Murphy
2016-07-15 17:45 ` Robin Murphy [this message]
2016-07-21 15:00 ` [PATCH 1/2] ARM: realview: Fix PBX-A9 cache description Mark Rutland
2016-07-22 15:02 ` Linus Walleij
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=5789213C.4060306@arm.com \
    --to=robin.murphy@arm.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).