linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@kernel.org>
To: "Leizhen (ThunderTown)" <thunder.leizhen@huawei.com>
Cc: Russell King <rmk+kernel@arm.linux.org.uk>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Will Deacon <will.deacon@arm.com>,
	Haojian Zhuang <haojian.zhuang@gmail.com>,
	Arnd Bergmann <arnd@arndb.de>, Rob Herring <robh+dt@kernel.org>,
	Wei Xu <xuwei5@hisilicon.com>,
	devicetree <devicetree@vger.kernel.org>,
	linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
	linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v3 2/3] dt-bindings: arm: hisilicon: Add binding for L3 cache controller
Date: Tue, 12 Jan 2021 14:55:02 +0100	[thread overview]
Message-ID: <CAK8P3a1jcg3CEP0QhtTP4gES9MHLdrHPZffkSxtxbr78FScrrg@mail.gmail.com> (raw)
In-Reply-To: <a11515e2-1fc6-be7d-f50c-8e3ad20f9e6c@huawei.com>

On Tue, Jan 12, 2021 at 1:35 PM Leizhen (ThunderTown)
<thunder.leizhen@huawei.com> wrote:
> On 2021/1/12 16:46, Arnd Bergmann wrote:
> > On Tue, Jan 12, 2021 at 2:56 AM Zhen Lei <thunder.leizhen@huawei.com> wrote:
> >
> >> +---
> >> +$id: http://devicetree.org/schemas/arm/hisilicon/l3cache.yaml#
> >> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> >> +
> >> +title: Hisilicon L3 cache controller
> >> +
> >> +maintainers:
> >> +  - Wei Xu <xuwei5@hisilicon.com>
> >> +
> >> +description: |
> >> +  The Hisilicon L3 outer cache controller supports a maximum of 36-bit physical
> >> +  addresses. The data cached in the L3 outer cache can be operated based on the
> >> +  physical address range or the entire cache.
> >> +
> >> +properties:
> >> +  compatible:
> >> +    items:
> >> +      - const: hisilicon,l3cache
> >> +
> >
> > The compatible string needs to be a little more specific, I'm sure
> > you cannot guarantee that this is the only L3 cache controller ever
> > designed in the past or future by HiSilicon.
> >
> > Normally when you have an IP block that is itself unnamed but that is specific
> > to one or a few SoCs but that has no na, the convention is to include the name
> > of the first SoC that contained it.
>
> Right, thanks for your suggestion, I will rename it to "hisilicon,hi1381-l3cache"
> and "hisilicon,hi1215-l3cache".

Sounds good.

> > Can you share which products actually use this L3 cache controller?
>
> This L3 cache controller is used on Hi1381 and Hi1215 board. I don't know where
> these two boards are used. Our company is too large. Software is delivered level
> by level. I'm only involved in the Kernel-related part.
>
> >
> > On a related note, what does the memory map look like on this chip?
>
> memory@a00000 {
>      device_type = "memory";
>      reg = <0x0 0xa00000 0x0 0x1aa00000>, <0x1 0xe0000000 0x0 0x1d000000>, <0x0 0x1f400000 0x0 0xb5c00000>;
> };
>
> Currently, the DTS is being maintained by ourselves, I'll try to upstream it later.
>
> > Do you support more than 4GB of total installed memory? If you
>
> Currently, the total size does not exceed 4 GB. However, the physical address is wider than 32 bits.

Ok, so it appears that the memory is actually contiguous in the first
3.5GB (with a few holes), plus the remaining 0.5GB being offset in
the physical memory by 4GB (starting at 0x1e0000000 instead of
0xe0000000), presumably to allow the use of 32-bit DMA addresses.

This works fine for the moment, but it does require support for
a nonlinear virt_to_phys()/phys_to_virt() translation after highmem
gets removed, and you would get at most 3.75GB anyway, so it
might be easier at that point to just drop the entire last block at
0x1e0000000, but this will depend on how well we get the 4G:4G
code to work, and whether the users will still need kernel updates for
this platform then.

     Arnd

  reply	other threads:[~2021-01-12 13:56 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-12  1:55 [PATCH v3 0/3] Add Hisilicon L3 cache controller support Zhen Lei
2021-01-12  1:56 ` [PATCH v3 1/3] ARM: LPAE: Use phys_addr_t instead of unsigned long in outercache hooks Zhen Lei
2021-01-12  1:56 ` [PATCH v3 2/3] dt-bindings: arm: hisilicon: Add binding for L3 cache controller Zhen Lei
2021-01-12  8:46   ` Arnd Bergmann
2021-01-12 12:35     ` Leizhen (ThunderTown)
2021-01-12 13:55       ` Arnd Bergmann [this message]
2021-01-13  7:44         ` Leizhen (ThunderTown)
2021-01-13  8:13           ` Leizhen (ThunderTown)
2021-01-13 11:15             ` Arnd Bergmann
2021-01-13 12:33               ` Leizhen (ThunderTown)
2021-01-12  1:56 ` [PATCH v3 3/3] ARM: Add Hisilicon L3 cache controller support Zhen Lei

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=CAK8P3a1jcg3CEP0QhtTP4gES9MHLdrHPZffkSxtxbr78FScrrg@mail.gmail.com \
    --to=arnd@kernel.org \
    --cc=arnd@arndb.de \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=haojian.zhuang@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rmk+kernel@arm.linux.org.uk \
    --cc=robh+dt@kernel.org \
    --cc=thunder.leizhen@huawei.com \
    --cc=will.deacon@arm.com \
    --cc=xuwei5@hisilicon.com \
    /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).