Message ID | 1593701576-28580-2-git-send-email-amittomer25@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Add MMC and DMA support for Actions S700 | expand |
On Thu, 02 Jul 2020 20:22:47 +0530, Amit Singh Tomar wrote: > Converts the device tree bindings for the Actions Semi Owl SoCs DMA > Controller over to YAML schemas. > > It also adds new compatible string "actions,s700-dma". > > Reviewed-by: Rob Herring <robh@kernel.org> > Signed-off-by: Amit Singh Tomar <amittomer25@gmail.com> > --- > Changes since v4: > * Added Rob's Reviewed-by tag. > * Re-order it from 05/10 to 01/10. > Changes since v3: > * No change. > Changes since v2: > * Addressed Rob's comments: > - removed unnecessary description. > - added unevaluatedProperties > - added relevant information about > dma-channels and dma-request > * Added power-domain property. > Change since v1: > * Updated the description field to reflect > only the necessary information. > * replaced the maxItems field with description for each > controller attribute(except interrupts). > * Replaced the clock macro with number to keep the example > as independent as possible. > --- > Documentation/devicetree/bindings/dma/owl-dma.txt | 47 ------------- > Documentation/devicetree/bindings/dma/owl-dma.yaml | 79 ++++++++++++++++++++++ > 2 files changed, 79 insertions(+), 47 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/dma/owl-dma.txt > create mode 100644 Documentation/devicetree/bindings/dma/owl-dma.yaml > My bot found errors running 'make dt_binding_check' on your patch: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/dma/owl-dma.example.dt.yaml: example-0: dma-controller@e0260000:reg:0: [0, 3760586752, 0, 4096] is too long See https://patchwork.ozlabs.org/patch/1321538 If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure dt-schema is up to date: pip3 install git+https://github.com/devicetree-org/dt-schema.git@master --upgrade Please check and re-submit.
Hi Rob, > If you already ran 'make dt_binding_check' and didn't see the above > error(s), then make sure dt-schema is up to date: > > pip3 install git+https://github.com/devicetree-org/dt-schema.git@master --upgrade > > Please check and re-submit. I wasn't able to reproduce it, even after updating the dt-schema. Kindly have a look at logs: https://pastebin.ubuntu.com/p/xTBNNyBdFv/ Thanks, -Amit
On Fri, Jul 3, 2020 at 12:48 PM Amit Tomer <amittomer25@gmail.com> wrote: > > Hi Rob, > > > > If you already ran 'make dt_binding_check' and didn't see the above > > error(s), then make sure dt-schema is up to date: > > > > pip3 install git+https://github.com/devicetree-org/dt-schema.git@master --upgrade > > > > Please check and re-submit. > > I wasn't able to reproduce it, even after updating the dt-schema. > Kindly have a look at logs: > > https://pastebin.ubuntu.com/p/xTBNNyBdFv/ Looks like, dtschema even after upgrade pointing to older commit "6a941d46b9f5". Wondering why it has not been pointing to latest commit "6a941d46b9f5" After upgrading the pip version for python3, and upgrading the dt-schema again https://pastebin.ubuntu.com/p/Rd9knQgvKH/ Issue is still reproduced. Thanks -Amit
On Fri, Jul 3, 2020 at 1:55 AM Amit Tomer <amittomer25@gmail.com> wrote: > > On Fri, Jul 3, 2020 at 12:48 PM Amit Tomer <amittomer25@gmail.com> wrote: > > > > Hi Rob, > > > > > > > If you already ran 'make dt_binding_check' and didn't see the above > > > error(s), then make sure dt-schema is up to date: > > > > > > pip3 install git+https://github.com/devicetree-org/dt-schema.git@master --upgrade > > > > > > Please check and re-submit. > > > > I wasn't able to reproduce it, even after updating the dt-schema. > > Kindly have a look at logs: > > > > https://pastebin.ubuntu.com/p/xTBNNyBdFv/ > > Looks like, dtschema even after upgrade pointing to older commit "6a941d46b9f5". > Wondering why it has not been pointing to latest commit "6a941d46b9f5" > > After upgrading the pip version for python3, and upgrading the dt-schema again > https://pastebin.ubuntu.com/p/Rd9knQgvKH/ > > Issue is still reproduced. If dtschema is changed, you need a clean tree as make doesn't track that changing. Specifically, processed-schema-examples.yaml needs to be removed. Rob
diff --git a/Documentation/devicetree/bindings/dma/owl-dma.txt b/Documentation/devicetree/bindings/dma/owl-dma.txt deleted file mode 100644 index 03e9bb12b75f..000000000000 --- a/Documentation/devicetree/bindings/dma/owl-dma.txt +++ /dev/null @@ -1,47 +0,0 @@ -* Actions Semi Owl SoCs DMA controller - -This binding follows the generic DMA bindings defined in dma.txt. - -Required properties: -- compatible: Should be "actions,s900-dma". -- reg: Should contain DMA registers location and length. -- interrupts: Should contain 4 interrupts shared by all channel. -- #dma-cells: Must be <1>. Used to represent the number of integer - cells in the dmas property of client device. -- dma-channels: Physical channels supported. -- dma-requests: Number of DMA request signals supported by the controller. - Refer to Documentation/devicetree/bindings/dma/dma.txt -- clocks: Phandle and Specifier of the clock feeding the DMA controller. - -Example: - -Controller: - dma: dma-controller@e0260000 { - compatible = "actions,s900-dma"; - reg = <0x0 0xe0260000 0x0 0x1000>; - interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>, - <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>, - <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>, - <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; - #dma-cells = <1>; - dma-channels = <12>; - dma-requests = <46>; - clocks = <&clock CLK_DMAC>; - }; - -Client: - -DMA clients connected to the Actions Semi Owl SoCs DMA controller must -use the format described in the dma.txt file, using a two-cell specifier -for each channel. - -The two cells in order are: -1. A phandle pointing to the DMA controller. -2. The channel id. - -uart5: serial@e012a000 { - ... - dma-names = "tx", "rx"; - dmas = <&dma 26>, <&dma 27>; - ... -}; diff --git a/Documentation/devicetree/bindings/dma/owl-dma.yaml b/Documentation/devicetree/bindings/dma/owl-dma.yaml new file mode 100644 index 000000000000..5577cd910781 --- /dev/null +++ b/Documentation/devicetree/bindings/dma/owl-dma.yaml @@ -0,0 +1,79 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/dma/owl-dma.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Actions Semi Owl SoCs DMA controller + +description: | + The OWL DMA is a general-purpose direct memory access controller capable of + supporting 10 and 12 independent DMA channels for S700 and S900 SoCs + respectively. + +maintainers: + - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> + +allOf: + - $ref: "dma-controller.yaml#" + +properties: + compatible: + enum: + - actions,s900-dma + - actions,s700-dma + + reg: + maxItems: 1 + + interrupts: + description: + controller supports 4 interrupts, which are freely assignable to the + DMA channels. + maxItems: 4 + + "#dma-cells": + const: 1 + + dma-channels: + maximum: 12 + + dma-requests: + maximum: 46 + + clocks: + maxItems: 1 + description: + Phandle and Specifier of the clock feeding the DMA controller. + + power-domains: + maxItems: 1 + +required: + - compatible + - reg + - interrupts + - "#dma-cells" + - dma-channels + - dma-requests + - clocks + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/arm-gic.h> + dma: dma-controller@e0260000 { + compatible = "actions,s900-dma"; + reg = <0x0 0xe0260000 0x0 0x1000>; + interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; + #dma-cells = <1>; + dma-channels = <12>; + dma-requests = <46>; + clocks = <&clock 22>; + }; + +...