linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: robh@kernel.org (Rob Herring)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 1/3] ARM: uniphier: add outer cache support
Date: Tue, 8 Sep 2015 19:06:27 -0500	[thread overview]
Message-ID: <55EF7803.2010004@kernel.org> (raw)
In-Reply-To: <CACRpkdan0+rywnSR8Rs=aw63QAm3nN99ujqPcZwfpoh4_Dwc-w@mail.gmail.com>

On 09/08/2015 08:09 AM, Linus Walleij wrote:
> On Fri, Aug 28, 2015 at 12:24 PM, Masahiro Yamada
> <yamada.masahiro@socionext.com> wrote:
>> 2015-08-26 22:39 GMT+09:00 Linus Walleij <linus.walleij@linaro.org>:
> 
>>> cache-unified and cache-level are *not* optional and should be required.
>>
>> "cache-unified" is mentioned in "3.7.3 Internal (L1) Cache Properties"
>> (Table 3-8),
>> but it is not in "3.8 Multi-level and Shared Caches" (Table 3-9)
>>
>> Are the rules in Table 3-8 also applied for L2?
> 
> Your guess is as good as mine unless someone involved in
> actually writing that spec says something :/

Maybe you'd have to be crazy to have Harvard cache for 2nd+ level. I've
got no clue. Doesn't hurt to have it.

> 
>>> (I'm just assuming this cache is unified, anything else would be baffling.)
>>
>> In fact, unified/harvard is configurable thru a register of this cache
>> controller.
> 
> Jesus Christ.

Hardware designers either hate software folks or ensure our job security.

> 
>> It is usually used as a unified cached, though.
> 
> I would, too.
> 
>> So,I am planning to use the same compatible for L2 and L3, like this:
>>
>>
>>        l2-cache at 500c0000 {
>>                compatible = "socionext,uniphier-cache";
>>                reg = <0x500c0000 0x2000>, <0x503c0100 0x8>,
>>                      <0x506c0000 0x400>;
>>                cache-unified;
>>                cache-level = <2>;
>>                next-level-cache = <&L2>;

Next level of the L2 is the L2?

>>                cache-size = <0x200000>;
>>                cache-sets = <256>;
>>                cache-line-size = <128>;
>>             };
>>
>>        /* Not all of UniPhier SoCs have L3 cache */
>>        l3-cache at 500c8000 {
>>                compatible = "socionext,uniphier-cache";
>>                reg = <0x500c8000 0x2000>, <0x503c8100 0x8>,
>>                      <0x506c8000 0x400>;
>>                cache-unified;
>>                cache-level = <3>;
>>                cache-size = <0x400000>;
>>                cache-sets = <256>;
>>                cache-line-size = <256>;
>>        };
> 
> This LooksGoodToMe.
> 
>> The Table 3-9 in ePAPR v1.1 says
>> the compatible should be "cache", but I do not think it makes sense here.
> 
> Agree.

It could be useful for finding all cache nodes, but we've generally
failed to use it, so at this point it doesn't matter.

Rob

  reply	other threads:[~2015-09-09  0:06 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-24  2:18 [PATCH 0/3] ARM: uniphier: add outer cache support and rework SMP operations Masahiro Yamada
2015-08-24  2:18 ` [PATCH 1/3] ARM: uniphier: add outer cache support Masahiro Yamada
2015-08-24  2:29   ` Joe Perches
2015-08-24  2:58     ` Masahiro Yamada
2015-08-24 19:59   ` Arnd Bergmann
2015-08-26  1:38     ` Masahiro Yamada
2015-08-26 12:52       ` Arnd Bergmann
2015-08-28  8:59         ` Masahiro Yamada
2015-08-28  9:44         ` Russell King - ARM Linux
2015-08-26 13:39   ` Linus Walleij
2015-08-28 10:24     ` Masahiro Yamada
2015-09-08 13:09       ` Linus Walleij
2015-09-09  0:06         ` Rob Herring [this message]
2015-08-24  2:18 ` [PATCH 2/3] ARM: uniphier: rework SMP operations to use trampoline code Masahiro Yamada
2015-08-24  2:18 ` [PATCH 3/3] ARM: dts: uniphier: add outer cache controller nodes Masahiro Yamada
2015-08-24 21:47 ` [PATCH 0/3] ARM: uniphier: add outer cache support and rework SMP operations Olof Johansson
2015-08-25  1:50   ` Masahiro Yamada
2015-08-25  3:05     ` Olof Johansson
2015-08-25  3:19       ` Viresh Kumar

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=55EF7803.2010004@kernel.org \
    --to=robh@kernel.org \
    --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).