Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp720838pxb; Thu, 5 Nov 2020 11:09:27 -0800 (PST) X-Google-Smtp-Source: ABdhPJyqXIWmZrvH19pKRPrA7HBIaNWa7pq5rH2YfEgPwk19880lSkzsIBt1fsYo0XBayu4ZgKu6 X-Received: by 2002:a17:906:3282:: with SMTP id 2mr3908308ejw.52.1604603367141; Thu, 05 Nov 2020 11:09:27 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1604603367; cv=none; d=google.com; s=arc-20160816; b=LFdiXotYBMkCBhoyN9QrIlKNJk048XvFMA8gzoruVdAmJnFze/eggW/4Apiu2vlq3b l0oJXX6RnKmfglLLi7nDjfOYldz+a+nrMlvXc2Mu6gHsBUPdZ5c0n9X5usIu+80a+IRr ZedEUYE63FuxHodXXWlY2TM/p/AHL7lppLhJmTDLCovKp94MTDNU0BFfZ8DbdZy5wyHv Xxh9j4nUPYZXmt0WCLLTMktnouDuodYWt8EWdyQ2KcwQyBqEUF238ch1g0OBozTJg23U K6IhX57zGnL9aiHSA46qUCgCK/TLSKqH1Pznyh2nddINJkYdhb8khdX68FlgjpAa2Xxs WF1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=/WFroUes3tjerQV/gKFC+1DAOPOUpnvK3ZLq++FNM3w=; b=SXhPITiJUZ3uTuel7GVAFnns9lXX5t6Ofd0VgZrsZgBexBdcUMCodQes8XrKmipkcA bU+GU+257q3h7eE/JuxnfLPWTkk58apGnfHhGcA5NG6vPMlgszNmubqPwS1s/+PRmxy/ 4PAkcZQnsMy8dhYsJCDRFCX73Ijheh3+LyUCvF/tOmAblSOizqLXVR3QV9BXGD9/XDZH qlz9/6Fzsb98bn1tV8dV2a8dv226X1SnKqKfAGn1kSlYpQtAM2Yr6ue4bvnQzY78NZa0 DtYAQFGlpsUEuLIVO7a7Ae3P0VioOsRYKQ4z92A4SxgMXT+poWPyweV+mJ2ajdfZ49cf RTtA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ov14si1763923ejb.245.2020.11.05.11.09.04; Thu, 05 Nov 2020 11:09:27 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731901AbgKETFL (ORCPT + 99 others); Thu, 5 Nov 2020 14:05:11 -0500 Received: from mail-ot1-f66.google.com ([209.85.210.66]:41446 "EHLO mail-ot1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726214AbgKETFL (ORCPT ); Thu, 5 Nov 2020 14:05:11 -0500 Received: by mail-ot1-f66.google.com with SMTP id n15so2428635otl.8; Thu, 05 Nov 2020 11:05:10 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=/WFroUes3tjerQV/gKFC+1DAOPOUpnvK3ZLq++FNM3w=; b=NlAnd1OcilWytOZaOIqFiYBNbxdkxqVudqLyC+y9097NwmodgqxFxp75NtIm8qfRXu 0AIWZfFi6AtngN5VHF5yMwzk1/bVI6zbGTckW9Uc3il8kWG8Syb0pcXyi+3Gb7bzZhM/ cZjUuC5y7bafhNZQvq1RdxMlAYr0ahO75sXeKKSYHTvnhZzSbUzI8JV/5tbDHPBqNGpX FXSGqPWw2cn9YzzlumR5LIVQ0RhsJCiLSh/LLfNZdV2WqagYXX9Kb1c6O9okd0tlqAdF jmHxXjp8RgqyJKoin9T4enxfrd/GBRq/17uHDsoCVr+/4Bzsjl8SLXpY8XcDqpYn64UH BX5A== X-Gm-Message-State: AOAM532AvIDmGKz9Rx1Haf0EpOH+oF1R6Qq+/hjgU9z30/WQ+8D508Fc sOMl5ewgOWRPTbzJi48ILVTJC5pHQPIl X-Received: by 2002:a9d:3b4:: with SMTP id f49mr2851240otf.188.1604603109677; Thu, 05 Nov 2020 11:05:09 -0800 (PST) Received: from xps15 (24-155-109-49.dyn.grandenetworks.net. [24.155.109.49]) by smtp.gmail.com with ESMTPSA id r24sm504639otq.77.2020.11.05.11.05.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Nov 2020 11:05:09 -0800 (PST) Received: (nullmailer pid 1642440 invoked by uid 1000); Thu, 05 Nov 2020 19:05:08 -0000 Date: Thu, 5 Nov 2020 13:05:08 -0600 From: Rob Herring To: Sameer Pujar Cc: devicetree@vger.kernel.org, thierry.reding@gmail.com, jonathanh@nvidia.com, vkoul@kernel.org, tglx@linutronix.de, jason@lakedaemon.net, maz@kernel.org, linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org, dmaengine@vger.kernel.org Subject: Re: [PATCH 4/4] dt-bindings: bus: Convert ACONNECT doc to json-schema Message-ID: <20201105190508.GB1633758@bogus> References: <1604571846-14037-1-git-send-email-spujar@nvidia.com> <1604571846-14037-5-git-send-email-spujar@nvidia.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1604571846-14037-5-git-send-email-spujar@nvidia.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Nov 05, 2020 at 03:54:06PM +0530, Sameer Pujar wrote: > Move ACONNECT documentation to YAML format. > > Signed-off-by: Sameer Pujar > --- > .../bindings/bus/nvidia,tegra210-aconnect.txt | 44 ----------- > .../bindings/bus/nvidia,tegra210-aconnect.yaml | 86 ++++++++++++++++++++++ > 2 files changed, 86 insertions(+), 44 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/bus/nvidia,tegra210-aconnect.txt > create mode 100644 Documentation/devicetree/bindings/bus/nvidia,tegra210-aconnect.yaml > > diff --git a/Documentation/devicetree/bindings/bus/nvidia,tegra210-aconnect.txt b/Documentation/devicetree/bindings/bus/nvidia,tegra210-aconnect.txt > deleted file mode 100644 > index 3108d03..0000000 > --- a/Documentation/devicetree/bindings/bus/nvidia,tegra210-aconnect.txt > +++ /dev/null > @@ -1,44 +0,0 @@ > -NVIDIA Tegra ACONNECT Bus > - > -The Tegra ACONNECT bus is an AXI switch which is used to connnect various > -components inside the Audio Processing Engine (APE). All CPU accesses to > -the APE subsystem go through the ACONNECT via an APB to AXI wrapper. > - > -Required properties: > -- compatible: Must be "nvidia,tegra210-aconnect". > -- clocks: Must contain the entries for the APE clock (TEGRA210_CLK_APE), > - and APE interface clock (TEGRA210_CLK_APB2APE). > -- clock-names: Must contain the names "ape" and "apb2ape" for the corresponding > - 'clocks' entries. > -- power-domains: Must contain a phandle that points to the audio powergate > - (namely 'aud') for Tegra210. > -- #address-cells: The number of cells used to represent physical base addresses > - in the aconnect address space. Should be 1. > -- #size-cells: The number of cells used to represent the size of an address > - range in the aconnect address space. Should be 1. > -- ranges: Mapping of the aconnect address space to the CPU address space. > - > -All devices accessed via the ACONNNECT are described by child-nodes. > - > -Example: > - > - aconnect@702c0000 { > - compatible = "nvidia,tegra210-aconnect"; > - clocks = <&tegra_car TEGRA210_CLK_APE>, > - <&tegra_car TEGRA210_CLK_APB2APE>; > - clock-names = "ape", "apb2ape"; > - power-domains = <&pd_audio>; > - > - #address-cells = <1>; > - #size-cells = <1>; > - ranges = <0x702c0000 0x0 0x702c0000 0x00040000>; > - > - > - child1 { > - ... > - }; > - > - child2 { > - ... > - }; > - }; > diff --git a/Documentation/devicetree/bindings/bus/nvidia,tegra210-aconnect.yaml b/Documentation/devicetree/bindings/bus/nvidia,tegra210-aconnect.yaml > new file mode 100644 > index 0000000..f0161bc > --- /dev/null > +++ b/Documentation/devicetree/bindings/bus/nvidia,tegra210-aconnect.yaml > @@ -0,0 +1,86 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/bus/nvidia,tegra210-aconnect.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: NVIDIA Tegra ACONNECT Bus > + > +description: | > + The Tegra ACONNECT bus is an AXI switch which is used to connnect various > + components inside the Audio Processing Engine (APE). All CPU accesses to > + the APE subsystem go through the ACONNECT via an APB to AXI wrapper. All > + devices accessed via the ACONNNECT are described by child-nodes. > + > +maintainers: > + - Jon Hunter > + > +properties: > + compatible: > + oneOf: > + - const: nvidia,tegra210-aconnect > + - items: > + - enum: > + - nvidia,tegra186-aconnect > + - nvidia,tegra194-aconnect > + - const: nvidia,tegra210-aconnect > + > + clocks: > + items: > + - description: Must contain the entry for APE clock > + - description: Must contain the entry for APE interface clock > + > + clock-names: > + items: > + - const: ape > + - const: apb2ape > + > + power-domains: > + maxItems: 1 > + > + "#address-cells": > + const: 1 > + > + "#size-cells": > + const: 1 > + > + ranges: true > + > +patternProperties: > + "^dma-controller(@[0-9a-f]+)?$": > + $ref: /schemas/dma/nvidia,tegra210-adma.yaml# > + "^interrupt-controller(@[0-9a-f]+)?$": > + $ref: /schemas/interrupt-controller/arm,gic.yaml# > + "^ahub(@[0-9a-f]+)?$": > + $ref: /schemas/sound/nvidia,tegra210-ahub.yaml# These all get applied already since they match on compatible strings. So having them here means the schema is applied twice. There's maybe some value to this if it's always going to be these 3 nodes. Also, the unit-addresses shouldn't be optional. I'd just do: "@[0-9a-f]+$": type: object > + > +required: > + - compatible > + - clocks > + - clock-names > + - power-domains > + - "#address-cells" > + - "#size-cells" > + - ranges > + > +additionalProperties: false > + > +examples: > + - | > + #include > + > + aconnect@702c0000 { > + compatible = "nvidia,tegra210-aconnect"; > + clocks = <&tegra_car TEGRA210_CLK_APE>, > + <&tegra_car TEGRA210_CLK_APB2APE>; > + clock-names = "ape", "apb2ape"; > + power-domains = <&pd_audio>; > + > + #address-cells = <1>; > + #size-cells = <1>; > + ranges = <0x702c0000 0x702c0000 0x00040000>; > + > + // Child device nodes follow ... > + }; > + > +... > -- > 2.7.4 >