1472abb80SJohan Jonker# SPDX-License-Identifier: GPL-2.0 2472abb80SJohan Jonker%YAML 1.2 3472abb80SJohan Jonker--- 4472abb80SJohan Jonker$id: http://devicetree.org/schemas/sound/rockchip-i2s.yaml# 5472abb80SJohan Jonker$schema: http://devicetree.org/meta-schemas/core.yaml# 6472abb80SJohan Jonker 7472abb80SJohan Jonkertitle: Rockchip I2S controller 8472abb80SJohan Jonker 9472abb80SJohan Jonkerdescription: 10472abb80SJohan Jonker The I2S bus (Inter-IC sound bus) is a serial link for digital 11472abb80SJohan Jonker audio data transfer between devices in the system. 12472abb80SJohan Jonker 13472abb80SJohan Jonkermaintainers: 14472abb80SJohan Jonker - Heiko Stuebner <heiko@sntech.de> 15472abb80SJohan Jonker 16472abb80SJohan Jonkerproperties: 17472abb80SJohan Jonker compatible: 18472abb80SJohan Jonker oneOf: 19472abb80SJohan Jonker - const: rockchip,rk3066-i2s 20472abb80SJohan Jonker - items: 21472abb80SJohan Jonker - enum: 22472abb80SJohan Jonker - rockchip,px30-i2s 23472abb80SJohan Jonker - rockchip,rk3036-i2s 24472abb80SJohan Jonker - rockchip,rk3188-i2s 25472abb80SJohan Jonker - rockchip,rk3228-i2s 26472abb80SJohan Jonker - rockchip,rk3288-i2s 27ab436c97SJohan Jonker - rockchip,rk3308-i2s 28472abb80SJohan Jonker - rockchip,rk3328-i2s 29472abb80SJohan Jonker - rockchip,rk3366-i2s 30472abb80SJohan Jonker - rockchip,rk3368-i2s 31472abb80SJohan Jonker - rockchip,rk3399-i2s 32472abb80SJohan Jonker - const: rockchip,rk3066-i2s 33472abb80SJohan Jonker 34472abb80SJohan Jonker reg: 35472abb80SJohan Jonker maxItems: 1 36472abb80SJohan Jonker 37472abb80SJohan Jonker interrupts: 38472abb80SJohan Jonker maxItems: 1 39472abb80SJohan Jonker 40472abb80SJohan Jonker clocks: 41472abb80SJohan Jonker items: 42472abb80SJohan Jonker - description: clock for I2S controller 43472abb80SJohan Jonker - description: clock for I2S BUS 44472abb80SJohan Jonker 45472abb80SJohan Jonker clock-names: 46472abb80SJohan Jonker items: 47472abb80SJohan Jonker - const: i2s_clk 48472abb80SJohan Jonker - const: i2s_hclk 49472abb80SJohan Jonker 50472abb80SJohan Jonker dmas: 51ab436c97SJohan Jonker minItems: 1 52ab436c97SJohan Jonker maxItems: 2 53472abb80SJohan Jonker 54472abb80SJohan Jonker dma-names: 55ab436c97SJohan Jonker oneOf: 56ab436c97SJohan Jonker - const: rx 57ab436c97SJohan Jonker - items: 58472abb80SJohan Jonker - const: tx 59472abb80SJohan Jonker - const: rx 60472abb80SJohan Jonker 612a79c31aSJohan Jonker power-domains: 622a79c31aSJohan Jonker maxItems: 1 632a79c31aSJohan Jonker 64472abb80SJohan Jonker rockchip,capture-channels: 65472abb80SJohan Jonker allOf: 66472abb80SJohan Jonker - $ref: /schemas/types.yaml#/definitions/uint32 67472abb80SJohan Jonker default: 2 68472abb80SJohan Jonker description: 69472abb80SJohan Jonker Max capture channels, if not set, 2 channels default. 70472abb80SJohan Jonker 71472abb80SJohan Jonker rockchip,playback-channels: 72472abb80SJohan Jonker allOf: 73472abb80SJohan Jonker - $ref: /schemas/types.yaml#/definitions/uint32 74472abb80SJohan Jonker default: 8 75472abb80SJohan Jonker description: 76472abb80SJohan Jonker Max playback channels, if not set, 8 channels default. 77472abb80SJohan Jonker 78472abb80SJohan Jonker rockchip,grf: 79472abb80SJohan Jonker $ref: /schemas/types.yaml#/definitions/phandle 80472abb80SJohan Jonker description: 81472abb80SJohan Jonker The phandle of the syscon node for the GRF register. 82472abb80SJohan Jonker Required property for controllers which support multi channel 83472abb80SJohan Jonker playback/capture. 84472abb80SJohan Jonker 85515d2757SJohan Jonker "#sound-dai-cells": 86515d2757SJohan Jonker const: 0 87515d2757SJohan Jonker 88472abb80SJohan Jonkerrequired: 89472abb80SJohan Jonker - compatible 90472abb80SJohan Jonker - reg 91472abb80SJohan Jonker - interrupts 92472abb80SJohan Jonker - clocks 93472abb80SJohan Jonker - clock-names 94472abb80SJohan Jonker - dmas 95472abb80SJohan Jonker - dma-names 96515d2757SJohan Jonker - "#sound-dai-cells" 97472abb80SJohan Jonker 98472abb80SJohan JonkeradditionalProperties: false 99472abb80SJohan Jonker 100472abb80SJohan Jonkerexamples: 101472abb80SJohan Jonker - | 102472abb80SJohan Jonker #include <dt-bindings/clock/rk3288-cru.h> 103472abb80SJohan Jonker #include <dt-bindings/interrupt-controller/arm-gic.h> 104472abb80SJohan Jonker #include <dt-bindings/interrupt-controller/irq.h> 105472abb80SJohan Jonker i2s@ff890000 { 106472abb80SJohan Jonker compatible = "rockchip,rk3288-i2s", "rockchip,rk3066-i2s"; 107472abb80SJohan Jonker reg = <0xff890000 0x10000>; 108472abb80SJohan Jonker interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 109472abb80SJohan Jonker clocks = <&cru SCLK_I2S0>, <&cru HCLK_I2S0>; 110472abb80SJohan Jonker clock-names = "i2s_clk", "i2s_hclk"; 111472abb80SJohan Jonker dmas = <&pdma1 0>, <&pdma1 1>; 112472abb80SJohan Jonker dma-names = "tx", "rx"; 113472abb80SJohan Jonker rockchip,capture-channels = <2>; 114472abb80SJohan Jonker rockchip,playback-channels = <8>; 115515d2757SJohan Jonker #sound-dai-cells = <0>; 116472abb80SJohan Jonker }; 117