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 27472abb80SJohan Jonker - rockchip,rk3328-i2s 28472abb80SJohan Jonker - rockchip,rk3366-i2s 29472abb80SJohan Jonker - rockchip,rk3368-i2s 30472abb80SJohan Jonker - rockchip,rk3399-i2s 31472abb80SJohan Jonker - const: rockchip,rk3066-i2s 32472abb80SJohan Jonker 33472abb80SJohan Jonker reg: 34472abb80SJohan Jonker maxItems: 1 35472abb80SJohan Jonker 36472abb80SJohan Jonker interrupts: 37472abb80SJohan Jonker maxItems: 1 38472abb80SJohan Jonker 39472abb80SJohan Jonker clocks: 40472abb80SJohan Jonker items: 41472abb80SJohan Jonker - description: clock for I2S controller 42472abb80SJohan Jonker - description: clock for I2S BUS 43472abb80SJohan Jonker 44472abb80SJohan Jonker clock-names: 45472abb80SJohan Jonker items: 46472abb80SJohan Jonker - const: i2s_clk 47472abb80SJohan Jonker - const: i2s_hclk 48472abb80SJohan Jonker 49472abb80SJohan Jonker dmas: 50472abb80SJohan Jonker items: 51472abb80SJohan Jonker - description: TX DMA Channel 52472abb80SJohan Jonker - description: RX DMA Channel 53472abb80SJohan Jonker 54472abb80SJohan Jonker dma-names: 55472abb80SJohan Jonker items: 56472abb80SJohan Jonker - const: tx 57472abb80SJohan Jonker - const: rx 58472abb80SJohan Jonker 59472abb80SJohan Jonker rockchip,capture-channels: 60472abb80SJohan Jonker allOf: 61472abb80SJohan Jonker - $ref: /schemas/types.yaml#/definitions/uint32 62472abb80SJohan Jonker default: 2 63472abb80SJohan Jonker description: 64472abb80SJohan Jonker Max capture channels, if not set, 2 channels default. 65472abb80SJohan Jonker 66472abb80SJohan Jonker rockchip,playback-channels: 67472abb80SJohan Jonker allOf: 68472abb80SJohan Jonker - $ref: /schemas/types.yaml#/definitions/uint32 69472abb80SJohan Jonker default: 8 70472abb80SJohan Jonker description: 71472abb80SJohan Jonker Max playback channels, if not set, 8 channels default. 72472abb80SJohan Jonker 73472abb80SJohan Jonker rockchip,grf: 74472abb80SJohan Jonker $ref: /schemas/types.yaml#/definitions/phandle 75472abb80SJohan Jonker description: 76472abb80SJohan Jonker The phandle of the syscon node for the GRF register. 77472abb80SJohan Jonker Required property for controllers which support multi channel 78472abb80SJohan Jonker playback/capture. 79472abb80SJohan Jonker 80515d2757SJohan Jonker "#sound-dai-cells": 81515d2757SJohan Jonker const: 0 82515d2757SJohan Jonker 83472abb80SJohan Jonkerrequired: 84472abb80SJohan Jonker - compatible 85472abb80SJohan Jonker - reg 86472abb80SJohan Jonker - interrupts 87472abb80SJohan Jonker - clocks 88472abb80SJohan Jonker - clock-names 89472abb80SJohan Jonker - dmas 90472abb80SJohan Jonker - dma-names 91515d2757SJohan Jonker - "#sound-dai-cells" 92472abb80SJohan Jonker 93472abb80SJohan JonkeradditionalProperties: false 94472abb80SJohan Jonker 95472abb80SJohan Jonkerexamples: 96472abb80SJohan Jonker - | 97472abb80SJohan Jonker #include <dt-bindings/clock/rk3288-cru.h> 98472abb80SJohan Jonker #include <dt-bindings/interrupt-controller/arm-gic.h> 99472abb80SJohan Jonker #include <dt-bindings/interrupt-controller/irq.h> 100472abb80SJohan Jonker i2s@ff890000 { 101472abb80SJohan Jonker compatible = "rockchip,rk3288-i2s", "rockchip,rk3066-i2s"; 102472abb80SJohan Jonker reg = <0xff890000 0x10000>; 103472abb80SJohan Jonker interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 104472abb80SJohan Jonker clocks = <&cru SCLK_I2S0>, <&cru HCLK_I2S0>; 105472abb80SJohan Jonker clock-names = "i2s_clk", "i2s_hclk"; 106472abb80SJohan Jonker dmas = <&pdma1 0>, <&pdma1 1>; 107472abb80SJohan Jonker dma-names = "tx", "rx"; 108472abb80SJohan Jonker rockchip,capture-channels = <2>; 109472abb80SJohan Jonker rockchip,playback-channels = <8>; 110515d2757SJohan Jonker #sound-dai-cells = <0>; 111472abb80SJohan Jonker }; 112