xref: /freebsd/sys/contrib/device-tree/Bindings/dma/qcom,gpi.yaml (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
15def4c47SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
25def4c47SEmmanuel Vadot%YAML 1.2
35def4c47SEmmanuel Vadot---
45def4c47SEmmanuel Vadot$id: http://devicetree.org/schemas/dma/qcom,gpi.yaml#
55def4c47SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
65def4c47SEmmanuel Vadot
75def4c47SEmmanuel Vadottitle: Qualcomm Technologies Inc GPI DMA controller
85def4c47SEmmanuel Vadot
95def4c47SEmmanuel Vadotmaintainers:
105def4c47SEmmanuel Vadot  - Vinod Koul <vkoul@kernel.org>
115def4c47SEmmanuel Vadot
125def4c47SEmmanuel Vadotdescription: |
135def4c47SEmmanuel Vadot  QCOM GPI DMA controller provides DMA capabilities for
145def4c47SEmmanuel Vadot  peripheral buses such as I2C, UART, and SPI.
155def4c47SEmmanuel Vadot
165def4c47SEmmanuel VadotallOf:
17cb7aa33aSEmmanuel Vadot  - $ref: dma-controller.yaml#
185def4c47SEmmanuel Vadot
195def4c47SEmmanuel Vadotproperties:
205def4c47SEmmanuel Vadot  compatible:
218bab661aSEmmanuel Vadot    oneOf:
228bab661aSEmmanuel Vadot      - enum:
235def4c47SEmmanuel Vadot          - qcom,sdm845-gpi-dma
247ef62cebSEmmanuel Vadot          - qcom,sm6350-gpi-dma
258bab661aSEmmanuel Vadot      - items:
268bab661aSEmmanuel Vadot          - enum:
27fac71e4eSEmmanuel Vadot              - qcom,qcm2290-gpi-dma
28cb7aa33aSEmmanuel Vadot              - qcom,qdu1000-gpi-dma
298bab661aSEmmanuel Vadot              - qcom,sc7280-gpi-dma
30*0e8011faSEmmanuel Vadot              - qcom,sdx75-gpi-dma
318bab661aSEmmanuel Vadot              - qcom,sm6115-gpi-dma
328bab661aSEmmanuel Vadot              - qcom,sm6375-gpi-dma
33d5b0e70fSEmmanuel Vadot              - qcom,sm8350-gpi-dma
34d5b0e70fSEmmanuel Vadot              - qcom,sm8450-gpi-dma
35cb7aa33aSEmmanuel Vadot              - qcom,sm8550-gpi-dma
368d13bc63SEmmanuel Vadot              - qcom,sm8650-gpi-dma
378d13bc63SEmmanuel Vadot              - qcom,x1e80100-gpi-dma
388bab661aSEmmanuel Vadot          - const: qcom,sm6350-gpi-dma
398bab661aSEmmanuel Vadot      - items:
408bab661aSEmmanuel Vadot          - enum:
418bab661aSEmmanuel Vadot              - qcom,sdm670-gpi-dma
42cb7aa33aSEmmanuel Vadot              - qcom,sm6125-gpi-dma
438bab661aSEmmanuel Vadot              - qcom,sm8150-gpi-dma
448bab661aSEmmanuel Vadot              - qcom,sm8250-gpi-dma
458bab661aSEmmanuel Vadot          - const: qcom,sdm845-gpi-dma
465def4c47SEmmanuel Vadot
475def4c47SEmmanuel Vadot  reg:
485def4c47SEmmanuel Vadot    maxItems: 1
495def4c47SEmmanuel Vadot
505def4c47SEmmanuel Vadot  interrupts:
515def4c47SEmmanuel Vadot    description:
525def4c47SEmmanuel Vadot      Interrupt lines for each GPI instance
53c9ccf3a3SEmmanuel Vadot    minItems: 1
545def4c47SEmmanuel Vadot    maxItems: 13
555def4c47SEmmanuel Vadot
565def4c47SEmmanuel Vadot  "#dma-cells":
575def4c47SEmmanuel Vadot    const: 3
585def4c47SEmmanuel Vadot    description: >
595def4c47SEmmanuel Vadot      DMA clients must use the format described in dma.txt, giving a phandle
605def4c47SEmmanuel Vadot      to the DMA controller plus the following 3 integer cells:
615def4c47SEmmanuel Vadot      - channel: if set to 0xffffffff, any available channel will be allocated
625def4c47SEmmanuel Vadot        for the client. Otherwise, the exact channel specified will be used.
635def4c47SEmmanuel Vadot      - seid: serial id of the client as defined in the SoC documentation.
645def4c47SEmmanuel Vadot      - client: type of the client as defined in dt-bindings/dma/qcom-gpi.h
655def4c47SEmmanuel Vadot
665def4c47SEmmanuel Vadot  iommus:
675def4c47SEmmanuel Vadot    maxItems: 1
685def4c47SEmmanuel Vadot
695def4c47SEmmanuel Vadot  dma-channels:
705def4c47SEmmanuel Vadot    maximum: 31
715def4c47SEmmanuel Vadot
725def4c47SEmmanuel Vadot  dma-channel-mask:
735def4c47SEmmanuel Vadot    maxItems: 1
745def4c47SEmmanuel Vadot
7584943d6fSEmmanuel Vadot  dma-coherent: true
7684943d6fSEmmanuel Vadot
775def4c47SEmmanuel Vadotrequired:
785def4c47SEmmanuel Vadot  - compatible
795def4c47SEmmanuel Vadot  - reg
805def4c47SEmmanuel Vadot  - interrupts
815def4c47SEmmanuel Vadot  - "#dma-cells"
825def4c47SEmmanuel Vadot  - iommus
835def4c47SEmmanuel Vadot  - dma-channels
845def4c47SEmmanuel Vadot  - dma-channel-mask
855def4c47SEmmanuel Vadot
865def4c47SEmmanuel VadotadditionalProperties: false
875def4c47SEmmanuel Vadot
885def4c47SEmmanuel Vadotexamples:
895def4c47SEmmanuel Vadot  - |
905def4c47SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
915def4c47SEmmanuel Vadot    #include <dt-bindings/dma/qcom-gpi.h>
925def4c47SEmmanuel Vadot    gpi_dma0: dma-controller@800000 {
932eb4d8dcSEmmanuel Vadot        compatible = "qcom,sdm845-gpi-dma";
945def4c47SEmmanuel Vadot        #dma-cells = <3>;
955def4c47SEmmanuel Vadot        reg = <0x00800000 0x60000>;
965def4c47SEmmanuel Vadot        iommus = <&apps_smmu 0x0016 0x0>;
975def4c47SEmmanuel Vadot        dma-channels = <13>;
985def4c47SEmmanuel Vadot        dma-channel-mask = <0xfa>;
995def4c47SEmmanuel Vadot        interrupts = <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
1005def4c47SEmmanuel Vadot                     <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>,
1015def4c47SEmmanuel Vadot                     <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>,
1025def4c47SEmmanuel Vadot                     <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>,
1035def4c47SEmmanuel Vadot                     <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>,
1045def4c47SEmmanuel Vadot                     <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>,
1055def4c47SEmmanuel Vadot                     <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>,
1065def4c47SEmmanuel Vadot                     <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>,
1075def4c47SEmmanuel Vadot                     <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>,
1085def4c47SEmmanuel Vadot                     <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>,
1095def4c47SEmmanuel Vadot                     <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>,
1105def4c47SEmmanuel Vadot                     <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>,
1115def4c47SEmmanuel Vadot                     <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>;
1125def4c47SEmmanuel Vadot    };
1135def4c47SEmmanuel Vadot
1145def4c47SEmmanuel Vadot...
115