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=-10.1 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham 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 9555BC433DF for ; Mon, 19 Oct 2020 21:35:58 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 432B52231B for ; Mon, 19 Oct 2020 21:35:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1603143358; bh=7rWiWzgA9wKIkWUkDIwC6hwhxqSaMvODtEodbVedwQw=; h=Date:From:To:Cc:Subject:References:In-Reply-To:List-ID:From; b=QGYczihxq2Y2e9Q0plrgvyytMDdOOHeve4S1qgJ5Bnd/WzZR6e1KP/O/4tdn90weV uOAak8ntQdDwFcDgzm1NiA2P6usjA940OH7+4nbfqFO9P86OMeyaMhUWorasAjvNIy 01DZ2ABpBAEN98YoY2bc4qna4hFs8h5rkqouH5h0= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1733087AbgJSVf6 (ORCPT ); Mon, 19 Oct 2020 17:35:58 -0400 Received: from mail-ot1-f66.google.com ([209.85.210.66]:38297 "EHLO mail-ot1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1733083AbgJSVf5 (ORCPT ); Mon, 19 Oct 2020 17:35:57 -0400 Received: by mail-ot1-f66.google.com with SMTP id i12so1241405ota.5; Mon, 19 Oct 2020 14:35:56 -0700 (PDT) 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=wq50Mb/F/oxAEgzIXcCwuhWbqhRyeY4LxsDWfofHpoE=; b=OVlekGw5KAhl42U5G7A+LnHyVWRKekMJQR/ucTN7fJw4Qg5JGZgaSomzyZ6y5zDgt6 THGSlBmMOmLcVQcR8UwjgcoFXwyqPrIHCe0anJagL8u6Zy9FIS2NS085bTIIDG16xz/I 3yss1vLYr97HQOFPxzJN/3msr99PKIyY9OfEflxGC4EK6LRTb2yXqIQB61tmKolH+32X 8l5aoUzG8qN5YlnEqOu3sOX+4CYFmWxVpgfg4S9um++o/LMr/ApESIcQQ3CO5SPCVPTo vzCv8n05DdvhVFbXwh6yv49XRHJq7tk7DpE34WGX31AN2kNkBkZGPni1UG8zzgfuzfTx /ZYg== X-Gm-Message-State: AOAM532W39h329RYApC/r3SZyysDUzeK7kEeag4W0jTzWd7i1TTs41jy 4a9pkfW5TU7z4nCZiqEffQ== X-Google-Smtp-Source: ABdhPJxcXeQGKTXSObfQfM+2b4XCMOYKHj5m477c/30EM5xf1HmSvzPVXIvNTPM0wRyCELFn4fMv0A== X-Received: by 2002:a05:6830:148b:: with SMTP id s11mr1342208otq.214.1603143356110; Mon, 19 Oct 2020 14:35:56 -0700 (PDT) Received: from xps15 (24-155-109-49.dyn.grandenetworks.net. [24.155.109.49]) by smtp.gmail.com with ESMTPSA id t20sm323566oot.22.2020.10.19.14.35.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Oct 2020 14:35:55 -0700 (PDT) Received: (nullmailer pid 3642188 invoked by uid 1000); Mon, 19 Oct 2020 21:35:53 -0000 Date: Mon, 19 Oct 2020 16:35:53 -0500 From: Rob Herring To: "Ramuthevar,Vadivel MuruganX" Cc: vigneshr@ti.com, tudor.ambarus@microchip.com, broonie@kernel.org, linux-kernel@vger.kernel.org, linux-spi@vger.kernel.org, devicetree@vger.kernel.org, miquel.raynal@bootlin.com, simon.k.r.goldschmidt@gmail.com, dinguyen@kernel.org, richard@nod.at, cheol.yong.kim@intel.com, qi-ming.wu@intel.com Subject: Re: [PATCH v1 2/6] dt-bindings: spi: Convert cadence-quadspi.txt to cadence-quadspi.yaml Message-ID: <20201019213553.GA3630580@bogus> References: <20201016093138.28871-1-vadivel.muruganx.ramuthevar@linux.intel.com> <20201016093138.28871-3-vadivel.muruganx.ramuthevar@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20201016093138.28871-3-vadivel.muruganx.ramuthevar@linux.intel.com> Precedence: bulk List-ID: X-Mailing-List: linux-spi@vger.kernel.org On Fri, Oct 16, 2020 at 05:31:34PM +0800, Ramuthevar,Vadivel MuruganX wrote: > From: Ramuthevar Vadivel Murugan > > Convert the cadence-quadspi.txt documentation to cadence-quadspi.yaml > remove the cadence-quadspi.txt from Documentation/devicetree/bindings/spi/ > > Signed-off-by: Ramuthevar Vadivel Murugan > --- > .../devicetree/bindings/spi/cadence-quadspi.txt | 67 ---------- > .../devicetree/bindings/spi/cadence-quadspi.yaml | 148 +++++++++++++++++++++ > 2 files changed, 148 insertions(+), 67 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/spi/cadence-quadspi.txt > create mode 100644 Documentation/devicetree/bindings/spi/cadence-quadspi.yaml > > diff --git a/Documentation/devicetree/bindings/spi/cadence-quadspi.txt b/Documentation/devicetree/bindings/spi/cadence-quadspi.txt > deleted file mode 100644 > index 945be7d5b236..000000000000 > --- a/Documentation/devicetree/bindings/spi/cadence-quadspi.txt > +++ /dev/null > @@ -1,67 +0,0 @@ > -* Cadence Quad SPI controller > - > -Required properties: > -- compatible : should be one of the following: > - Generic default - "cdns,qspi-nor". > - For TI 66AK2G SoC - "ti,k2g-qspi", "cdns,qspi-nor". > - For TI AM654 SoC - "ti,am654-ospi", "cdns,qspi-nor". > -- reg : Contains two entries, each of which is a tuple consisting of a > - physical address and length. The first entry is the address and > - length of the controller register set. The second entry is the > - address and length of the QSPI Controller data area. > -- interrupts : Unit interrupt specifier for the controller interrupt. > -- clocks : phandle to the Quad SPI clock. > -- cdns,fifo-depth : Size of the data FIFO in words. > -- cdns,fifo-width : Bus width of the data FIFO in bytes. > -- cdns,trigger-address : 32-bit indirect AHB trigger address. > - > -Optional properties: > -- cdns,is-decoded-cs : Flag to indicate whether decoder is used or not. > -- cdns,rclk-en : Flag to indicate that QSPI return clock is used to latch > - the read data rather than the QSPI clock. Make sure that QSPI return > - clock is populated on the board before using this property. > - > -Optional subnodes: > -Subnodes of the Cadence Quad SPI controller are spi slave nodes with additional > -custom properties: > -- cdns,read-delay : Delay for read capture logic, in clock cycles > -- cdns,tshsl-ns : Delay in nanoseconds for the length that the master > - mode chip select outputs are de-asserted between > - transactions. > -- cdns,tsd2d-ns : Delay in nanoseconds between one chip select being > - de-activated and the activation of another. > -- cdns,tchsh-ns : Delay in nanoseconds between last bit of current > - transaction and deasserting the device chip select > - (qspi_n_ss_out). > -- cdns,tslch-ns : Delay in nanoseconds between setting qspi_n_ss_out low > - and first bit transfer. > -- resets : Must contain an entry for each entry in reset-names. > - See ../reset/reset.txt for details. > -- reset-names : Must include either "qspi" and/or "qspi-ocp". > - > -Example: > - > - qspi: spi@ff705000 { > - compatible = "cdns,qspi-nor"; > - #address-cells = <1>; > - #size-cells = <0>; > - reg = <0xff705000 0x1000>, > - <0xffa00000 0x1000>; > - interrupts = <0 151 4>; > - clocks = <&qspi_clk>; > - cdns,is-decoded-cs; > - cdns,fifo-depth = <128>; > - cdns,fifo-width = <4>; > - cdns,trigger-address = <0x00000000>; > - resets = <&rst QSPI_RESET>, <&rst QSPI_OCP_RESET>; > - reset-names = "qspi", "qspi-ocp"; > - > - flash0: n25q00@0 { > - ... > - cdns,read-delay = <4>; > - cdns,tshsl-ns = <50>; > - cdns,tsd2d-ns = <50>; > - cdns,tchsh-ns = <4>; > - cdns,tslch-ns = <4>; > - }; > - }; > diff --git a/Documentation/devicetree/bindings/spi/cadence-quadspi.yaml b/Documentation/devicetree/bindings/spi/cadence-quadspi.yaml > new file mode 100644 > index 000000000000..6ed8122a1326 > --- /dev/null > +++ b/Documentation/devicetree/bindings/spi/cadence-quadspi.yaml > @@ -0,0 +1,148 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/spi/cadence-quadspi.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Cadence Quad SPI controller > + > +maintainers: > + - Vadivel Murugan > + > +allOf: > + - $ref: "spi-controller.yaml#" > + > +properties: > + compatible: > + items: > + - const: cdns,qspi-nor > + - const: ti,k2g-qspi, cdns,qspi-nor > + - const: ti,am654-ospi, cdns,qspi-nor This says that compatible must be: compatible = "cdns,qspi-nor", "ti,k2g-qspi, cdns,qspi-nor", "ti,am654-ospi, cdns,qspi-nor"; You need 'oneOf' here. > + > + description: > + Should be one of the above supported compatible strings. Drop. > + optional properties > + "cdns,is-decoded-cs" - Flag to indicate whether decoder is used or not. > + "cdns,rclk-en" - Flag to indicate that QSPI return clock is used to latch > + the read data rather than the QSPI clock. Make sure that QSPI return > + clock is populated on the board before using this property. Needs to be actual schema properties. > + > + reg: > + maxItems: 2 > + > + description: > + Contains two entries, each of which is a tuple consisting of a > + physical address and length. The first entry is the address and > + length of the controller register set. The second entry is the > + address and length of the QSPI Controller data area. reg: items: - description: the controller register set - description: the controller data area > + > + interrupts: > + maxItems: 1 > + description: > + Unit interrupt specifier for the controller interrupt. Drop description. > + > + clocks: > + maxItems: 1 > + description: > + phandle to the Quad SPI clock. Drop description. > + > + cdns,fifo-depth: > + description: > + Size of the data FIFO in words. > + allOf: Don't need allOf here now. > + - $ref: "/schemas/types.yaml#/definitions/uint32" > + - enum: [ 128, 256 ] > + - default: 128 > + > + cdns,fifo-width: > + $ref: /schemas/types.yaml#/definitions/uint32 > + description: > + Bus width of the data FIFO in bytes. > + multipleOf: 4 minimum/maximum? > + > + cdns,trigger-address: > + $ref: /schemas/types.yaml#/definitions/uint32 > + description: > + 32-bit indirect AHB trigger address. > + > + resets: How many (maxItems)? > + description: > + Must contain an entry for each entry in reset-names. > + See ../reset/reset.txt for details. Drop. > + > + reset-names: > + description: > + Must include either "qspi" and/or "qspi-ocp". Needs to be schema constraints. > + > +# subnode's properties > +patternProperties: > + "@[0-9a-f]+$": > + type: object > + description: > + flash device uses the subnodes below defined properties. > + > + cdns,read-delay: > + $ref: /schemas/types.yaml#/definitions/uint32 > + description: > + Delay for read capture logic, in clock cycles. > + > + cdns,tshsl-ns: > + description: | > + Delay in nanoseconds for the length that the master mode chip select > + outputs are de-asserted between transactions. > + > + cdns,tsd2d-ns: > + description: | > + Delay in nanoseconds between one chip select being de-activated > + and the activation of another. > + > + cdns,tchsh-ns: > + description: | > + Delay in nanoseconds between last bit of current transaction and > + deasserting the device chip select (qspi_n_ss_out). > + > + cdns,tslch-ns: > + description: | > + Delay in nanoseconds between setting qspi_n_ss_out low and > + first bit transfer. > + > +required: > + - compatible > + - reg > + - interrupts > + - clocks > + - cdns,fifo-depth > + - cdns,fifo-width > + - cdns,trigger-address > + - resets > + - reset-names additionalProperties: false > + > +examples: > + - | > + qspi: spi@ff705000 { > + compatible = "cadence,qspi"; > + #address-cells = <1>; > + #size-cells = <0>; > + reg = <0xff705000 0x1000>, > + <0xffa00000 0x1000>; > + interrupts = <0 151 4>; > + clocks = <&qspi_clk>; > + cdns,fifo-depth = <128>; > + cdns,fifo-width = <4>; > + cdns,trigger-address = <0x00000000>; > + resets = <&rst 0x1>, <&rst 0x2>; > + reset-names = "qspi", "qspi-ocp"; > + > + flash@0 { > + compatible = "jedec,spi-nor"; > + reg = <0x0>; > + cdns,read-delay = <4>; > + cdns,tshsl-ns = <50>; > + cdns,tsd2d-ns = <50>; > + cdns,tchsh-ns = <4>; > + cdns,tslch-ns = <4>; > + }; > + > + }; > + > +... > -- > 2.11.0 >