Received: by 10.192.165.156 with SMTP id m28csp1322522imm; Wed, 18 Apr 2018 07:55:54 -0700 (PDT) X-Google-Smtp-Source: AIpwx4+QEGrRepT04dvXAXplsw1FK6+Y5LsvKSkDIZLPaMWzoYRPbqWDzNpw7s21rMs16EByIe6y X-Received: by 10.98.170.13 with SMTP id e13mr2276398pff.137.1524063354830; Wed, 18 Apr 2018 07:55:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1524063354; cv=none; d=google.com; s=arc-20160816; b=JL2pmZivthnHP2wJROE/xiC2wDqXcQ2fY0NPereHovl0nbeWmB/3AhebGjnKlAYTFc tJBWYK0/uM0LOLRCUaQtQ8Z5eylauopqMAZyqisY7n6SlWLyB1lgV4uoyQ08L4VDR5X+ Kx3B4xOYRuX65oT5MlSTZiNTKGgr0678d2YxLo5z+6rOxv1RBGQzU+aELJC+4ZFwP5+x epsayNX+NplUE67WMhppXXNvKoo1JZSPSi8xKr9J6AJ9C1avCwgHfr/ReYZ9GFMwReXr +6NwfEMeqNLvEmiJexNNhJ3NmHS8cd9xH4tTWybpsfIa2n6Qb32Lk1aoT+3KzjjD76QI pd4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dmarc-filter :arc-authentication-results; bh=RVdDkYK+PlfY5CWGFTZ9OnhrvVWsMAPzVj8/ocb6ww0=; b=tkUWbe2drDiD3Zty0SszUuWv8WyUCAVtiqkH14g74gLae8FnfYmK4T9p6UqHxICDeM MGZZkontAYniUxZmKcZ9Ou9fEQnwQthFJMi0OWou7CJ0BI81GrccuqQEwsRe4jr41vBN Yw2/2EcCrMcZJhXqMzouLterMpmdw3HBh/rYAS6/ltEeu9EzveBjtslTYRego9mI6j7r sU8CQfqoaKUHGJFNcFcA+VAm9j4pwx7ZnhGFrB7Q2mL+z/tgF6CFlYWAKZOo90Gm+p06 M7ctVXATSVrVHYOhmjJU7dHJrDyh+HxTft9TU1BU0Kovb0YL6g+70wWFY+PTB7Gc8+4D JiOw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x6si1160775pgv.430.2018.04.18.07.55.40; Wed, 18 Apr 2018 07:55:54 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753001AbeDROxX (ORCPT + 99 others); Wed, 18 Apr 2018 10:53:23 -0400 Received: from mail.kernel.org ([198.145.29.99]:41910 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752162AbeDROxV (ORCPT ); Wed, 18 Apr 2018 10:53:21 -0400 Received: from mail-qt0-f177.google.com (mail-qt0-f177.google.com [209.85.216.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id C730F217DF; Wed, 18 Apr 2018 14:53:20 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C730F217DF Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=robh@kernel.org Received: by mail-qt0-f177.google.com with SMTP id h4-v6so2053547qtn.13; Wed, 18 Apr 2018 07:53:20 -0700 (PDT) X-Gm-Message-State: ALQs6tAY3DWyY/VnK/q8kvZC7Qt7JZfulKHsW0Lu7tvxVVNHBPfgtgfD xYMnD9R0OBTdY4r1OSy/cQnjf3cjCC6uDNL2uQ== X-Received: by 2002:ac8:396f:: with SMTP id t44-v6mr2392657qtb.22.1524063199944; Wed, 18 Apr 2018 07:53:19 -0700 (PDT) MIME-Version: 1.0 Received: by 10.12.163.228 with HTTP; Wed, 18 Apr 2018 07:52:59 -0700 (PDT) In-Reply-To: <1d31f2d727d32922aaf98c345723229e@codeaurora.org> References: <1523390893-10904-1-git-send-email-rishabhb@codeaurora.org> <1523390893-10904-2-git-send-email-rishabhb@codeaurora.org> <20180416145912.ja7d2xd2kqiukrgl@rob-hp-laptop> <9a9ffe61f85dd28199bcc2d449097059@codeaurora.org> <1d31f2d727d32922aaf98c345723229e@codeaurora.org> From: Rob Herring Date: Wed, 18 Apr 2018 09:52:59 -0500 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v4 1/2] Documentation: Documentation for qcom, llcc To: Rishabh Bhatnagar Cc: "moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE" , linux-arm-msm , devicetree@vger.kernel.org, linux-arm@lists.infradead.org, "linux-kernel@vger.kernel.org" , Trilok Soni , Kyle Yan , ckadabi@codeaurora.org, Stanimir Varbanov , Evan Green Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Apr 17, 2018 at 5:12 PM, wrote: > On 2018-04-17 10:43, rishabhb@codeaurora.org wrote: >> >> On 2018-04-16 07:59, Rob Herring wrote: >>> >>> On Tue, Apr 10, 2018 at 01:08:12PM -0700, Rishabh Bhatnagar wrote: >>>> >>>> Documentation for last level cache controller device tree bindings, >>>> client bindings usage examples. >>> >>> >>> "Documentation: Documentation ..."? That wastes a lot of the subject >>> line... The preferred prefix is "dt-bindings: ..." >>> >>>> >>>> Signed-off-by: Channagoud Kadabi >>>> Signed-off-by: Rishabh Bhatnagar >>>> --- >>>> .../devicetree/bindings/arm/msm/qcom,llcc.txt | 58 >>>> ++++++++++++++++++++++ >>>> 1 file changed, 58 insertions(+) >>>> create mode 100644 >>>> Documentation/devicetree/bindings/arm/msm/qcom,llcc.txt >>>> >>>> diff --git a/Documentation/devicetree/bindings/arm/msm/qcom,llcc.txt >>>> b/Documentation/devicetree/bindings/arm/msm/qcom,llcc.txt >>>> new file mode 100644 >>>> index 0000000..497cf0f >>>> --- /dev/null >>>> +++ b/Documentation/devicetree/bindings/arm/msm/qcom,llcc.txt >>>> @@ -0,0 +1,58 @@ >>>> +== Introduction== >>>> + >>>> +LLCC (Last Level Cache Controller) provides last level of cache memory >>>> in SOC, >>>> +that can be shared by multiple clients. Clients here are different >>>> cores in the >>>> +SOC, the idea is to minimize the local caches at the clients and >>>> migrate to >>>> +common pool of memory >>>> + >>>> +Properties: >>>> +- compatible: >>>> + Usage: required >>>> + Value type: >>>> + Definition: must be "qcom,sdm845-llcc" >>>> + >>>> +- reg: >>>> + Usage: required >>>> + Value Type: >>>> + Definition: must be addresses and sizes of the LLCC registers >>> >>> >>> How many address ranges? >>> >> It consists of just one address range. I'll edit the definition to make >> it more clear. >>>> >>>> + >>>> +- #cache-cells: >>> >>> >>> This is all written as it is a common binding, but it is not one. >>> >>> You already have most of the configuration data for each client in the >>> driver, I think I'd just put the client connection there too. Is there >>> any variation of this for a given SoC? >>> >> #cache-cells and max-slices won't change for a given SOC. So you want me >> to hard-code in the driver itself? >> > I can use of_parse_phandle_with_fixed_args function and fix the number of > args as 1 instead of keeping #cache-cells here in DT. Does that look fine? No, I'm saying why even put cache-slices properties in DT to begin with? You could just define client id's within the kernel and clients can use those instead of getting the id from the DT. I have a couple of hesitations with putting this into the DT. First, I think a cache is just one aspect of describing the interconnect between masters and memory (and there's been discussions on interconnect bindings too) and any binding needs to consider all of the aspects of the interconnect. Second, I'd expect this cache architecture will change SoC to SoC and the binding here is pretty closely tied to the current cache implementation (e.g. slices). If there were a bunch of SoCs with the same design and just different client IDs (like interrupt IDs), then I'd feel differently. Rob