From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3E0B4C433E0 for ; Wed, 13 Jan 2021 07:45:44 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id EC49623333 for ; Wed, 13 Jan 2021 07:45:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726389AbhAMHp2 (ORCPT ); Wed, 13 Jan 2021 02:45:28 -0500 Received: from szxga05-in.huawei.com ([45.249.212.191]:11008 "EHLO szxga05-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726202AbhAMHp1 (ORCPT ); Wed, 13 Jan 2021 02:45:27 -0500 Received: from DGGEMS401-HUB.china.huawei.com (unknown [172.30.72.58]) by szxga05-in.huawei.com (SkyGuard) with ESMTP id 4DFzw04xzSzj5x6; Wed, 13 Jan 2021 15:43:44 +0800 (CST) Received: from [127.0.0.1] (10.174.176.220) by DGGEMS401-HUB.china.huawei.com (10.3.19.201) with Microsoft SMTP Server id 14.3.498.0; Wed, 13 Jan 2021 15:44:35 +0800 Subject: Re: [PATCH v3 2/3] dt-bindings: arm: hisilicon: Add binding for L3 cache controller To: Arnd Bergmann CC: Russell King , Greg Kroah-Hartman , Will Deacon , "Haojian Zhuang" , Arnd Bergmann , Rob Herring , Wei Xu , devicetree , linux-arm-kernel , linux-kernel References: <20210112015602.497-1-thunder.leizhen@huawei.com> <20210112015602.497-3-thunder.leizhen@huawei.com> From: "Leizhen (ThunderTown)" Message-ID: Date: Wed, 13 Jan 2021 15:44:34 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.7.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8" Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [10.174.176.220] X-CFilter-Loop: Reflected Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2021/1/12 21:55, Arnd Bergmann wrote: > On Tue, Jan 12, 2021 at 1:35 PM Leizhen (ThunderTown) > wrote: >> On 2021/1/12 16:46, Arnd Bergmann wrote: >>> On Tue, Jan 12, 2021 at 2:56 AM Zhen Lei 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 >>>> + >>>> +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". Sorry, Just received a response from the hardware developers, the SoC names need to be changed: hi1381 --> kunpeng509 hi1215 --> kunpeng506 So I want to rename the compatible string to "hisilicon,kunpeng-l3v1", Kunpeng L3 cache controller version 1. This is enough to distinguish other versions of cache controller. It also facilitates the naming of the config option and files. > > 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 > > . >