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 23d5ceed03SSugar Zhang - rockchip,rk1808-i2s 24472abb80SJohan Jonker - rockchip,rk3036-i2s 25d5ceed03SSugar Zhang - rockchip,rk3128-i2s 26472abb80SJohan Jonker - rockchip,rk3188-i2s 27472abb80SJohan Jonker - rockchip,rk3228-i2s 28472abb80SJohan Jonker - rockchip,rk3288-i2s 29ab436c97SJohan Jonker - rockchip,rk3308-i2s 30472abb80SJohan Jonker - rockchip,rk3328-i2s 31472abb80SJohan Jonker - rockchip,rk3366-i2s 32472abb80SJohan Jonker - rockchip,rk3368-i2s 33472abb80SJohan Jonker - rockchip,rk3399-i2s 34d5ceed03SSugar Zhang - rockchip,rv1126-i2s 35472abb80SJohan Jonker - const: rockchip,rk3066-i2s 36472abb80SJohan Jonker 37472abb80SJohan Jonker reg: 38472abb80SJohan Jonker maxItems: 1 39472abb80SJohan Jonker 40472abb80SJohan Jonker interrupts: 41472abb80SJohan Jonker maxItems: 1 42472abb80SJohan Jonker 43472abb80SJohan Jonker clocks: 44472abb80SJohan Jonker items: 45472abb80SJohan Jonker - description: clock for I2S controller 46472abb80SJohan Jonker - description: clock for I2S BUS 47472abb80SJohan Jonker 48472abb80SJohan Jonker clock-names: 49472abb80SJohan Jonker items: 50472abb80SJohan Jonker - const: i2s_clk 51472abb80SJohan Jonker - const: i2s_hclk 52472abb80SJohan Jonker 53472abb80SJohan Jonker dmas: 54ab436c97SJohan Jonker minItems: 1 55ab436c97SJohan Jonker maxItems: 2 56472abb80SJohan Jonker 57472abb80SJohan Jonker dma-names: 58ab436c97SJohan Jonker oneOf: 59ab436c97SJohan Jonker - const: rx 60ab436c97SJohan Jonker - items: 61472abb80SJohan Jonker - const: tx 62472abb80SJohan Jonker - const: rx 63472abb80SJohan Jonker 64*d92c3d13SJudy Hsiao pinctrl-names: 65*d92c3d13SJudy Hsiao oneOf: 66*d92c3d13SJudy Hsiao - const: default 67*d92c3d13SJudy Hsiao - items: 68*d92c3d13SJudy Hsiao - const: bclk_on 69*d92c3d13SJudy Hsiao - const: bclk_off 70*d92c3d13SJudy Hsiao 712a79c31aSJohan Jonker power-domains: 722a79c31aSJohan Jonker maxItems: 1 732a79c31aSJohan Jonker 74296713a3SSugar Zhang reset-names: 75296713a3SSugar Zhang items: 76296713a3SSugar Zhang - const: reset-m 77296713a3SSugar Zhang - const: reset-h 78296713a3SSugar Zhang 79296713a3SSugar Zhang resets: 80296713a3SSugar Zhang maxItems: 2 81296713a3SSugar Zhang 82472abb80SJohan Jonker rockchip,capture-channels: 833d21a460SRob Herring $ref: /schemas/types.yaml#/definitions/uint32 84472abb80SJohan Jonker default: 2 85472abb80SJohan Jonker description: 86472abb80SJohan Jonker Max capture channels, if not set, 2 channels default. 87472abb80SJohan Jonker 88472abb80SJohan Jonker rockchip,playback-channels: 893d21a460SRob Herring $ref: /schemas/types.yaml#/definitions/uint32 90472abb80SJohan Jonker default: 8 91472abb80SJohan Jonker description: 92472abb80SJohan Jonker Max playback channels, if not set, 8 channels default. 93472abb80SJohan Jonker 94472abb80SJohan Jonker rockchip,grf: 95472abb80SJohan Jonker $ref: /schemas/types.yaml#/definitions/phandle 96472abb80SJohan Jonker description: 97472abb80SJohan Jonker The phandle of the syscon node for the GRF register. 98472abb80SJohan Jonker Required property for controllers which support multi channel 99472abb80SJohan Jonker playback/capture. 100472abb80SJohan Jonker 101515d2757SJohan Jonker "#sound-dai-cells": 102515d2757SJohan Jonker const: 0 103515d2757SJohan Jonker 104472abb80SJohan Jonkerrequired: 105472abb80SJohan Jonker - compatible 106472abb80SJohan Jonker - reg 107472abb80SJohan Jonker - interrupts 108472abb80SJohan Jonker - clocks 109472abb80SJohan Jonker - clock-names 110472abb80SJohan Jonker - dmas 111472abb80SJohan Jonker - dma-names 112515d2757SJohan Jonker - "#sound-dai-cells" 113472abb80SJohan Jonker 114472abb80SJohan JonkeradditionalProperties: false 115472abb80SJohan Jonker 116472abb80SJohan Jonkerexamples: 117472abb80SJohan Jonker - | 118472abb80SJohan Jonker #include <dt-bindings/clock/rk3288-cru.h> 119472abb80SJohan Jonker #include <dt-bindings/interrupt-controller/arm-gic.h> 120472abb80SJohan Jonker #include <dt-bindings/interrupt-controller/irq.h> 121472abb80SJohan Jonker i2s@ff890000 { 122472abb80SJohan Jonker compatible = "rockchip,rk3288-i2s", "rockchip,rk3066-i2s"; 123472abb80SJohan Jonker reg = <0xff890000 0x10000>; 124472abb80SJohan Jonker interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 125472abb80SJohan Jonker clocks = <&cru SCLK_I2S0>, <&cru HCLK_I2S0>; 126472abb80SJohan Jonker clock-names = "i2s_clk", "i2s_hclk"; 127472abb80SJohan Jonker dmas = <&pdma1 0>, <&pdma1 1>; 128472abb80SJohan Jonker dma-names = "tx", "rx"; 129472abb80SJohan Jonker rockchip,capture-channels = <2>; 130472abb80SJohan Jonker rockchip,playback-channels = <8>; 131515d2757SJohan Jonker #sound-dai-cells = <0>; 132472abb80SJohan Jonker }; 133