xref: /openbmc/linux/Documentation/devicetree/bindings/sound/intel,keembay-i2s.yaml (revision 0547dece8dcbb80983b3c37ad20ceca76a1f06a5)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2# Copyright 2020 Intel Corporation
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/sound/intel,keembay-i2s.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Intel KeemBay I2S Device Tree Bindings
9
10maintainers:
11  - Sia, Jee Heng <jee.heng.sia@intel.com>
12
13description: |
14 Intel KeemBay I2S
15
16properties:
17  compatible:
18    enum:
19      - intel,keembay-i2s
20      - intel,keembay-tdm
21
22  "#sound-dai-cells":
23    const: 0
24
25  reg:
26    items:
27      - description: I2S registers
28      - description: I2S gen configuration
29
30  reg-names:
31    items:
32      - const: i2s-regs
33      - const: i2s_gen_cfg
34
35  interrupts:
36    maxItems: 1
37
38  clocks:
39    items:
40      - description: Bus Clock
41      - description: Module Clock
42
43  clock-names:
44    items:
45      - const: osc
46      - const: apb_clk
47
48  dmas:
49    items:
50      - description: DMA TX channel
51      - description: DMA RX channel
52
53  dma-names:
54    items:
55      - const: tx
56      - const: rx
57
58required:
59  - compatible
60  - "#sound-dai-cells"
61  - reg
62  - clocks
63  - clock-names
64  - interrupts
65
66additionalProperties: false
67
68examples:
69  - |
70     #include <dt-bindings/interrupt-controller/arm-gic.h>
71     #include <dt-bindings/interrupt-controller/irq.h>
72     #define KEEM_BAY_PSS_AUX_I2S3
73     #define KEEM_BAY_PSS_I2S3
74     i2s3: i2s@20140000 {
75         compatible = "intel,keembay-i2s";
76         #sound-dai-cells = <0>;
77         reg = <0x20140000 0x200>, /* I2S registers */
78               <0x202a00a4 0x4>; /* I2S gen configuration */
79         reg-names = "i2s-regs", "i2s_gen_cfg";
80         interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
81         clock-names = "osc", "apb_clk";
82         clocks = <&scmi_clk KEEM_BAY_PSS_AUX_I2S3>, <&scmi_clk KEEM_BAY_PSS_I2S3>;
83         dmas = <&axi_dma0 29 &axi_dma0 33>;
84         dma-names = "tx", "rx";
85     };
86