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 592a79c31aSJohan Jonker power-domains: 602a79c31aSJohan Jonker maxItems: 1 612a79c31aSJohan Jonker 62472abb80SJohan Jonker rockchip,capture-channels: 63472abb80SJohan Jonker allOf: 64472abb80SJohan Jonker - $ref: /schemas/types.yaml#/definitions/uint32 65472abb80SJohan Jonker default: 2 66472abb80SJohan Jonker description: 67472abb80SJohan Jonker Max capture channels, if not set, 2 channels default. 68472abb80SJohan Jonker 69472abb80SJohan Jonker rockchip,playback-channels: 70472abb80SJohan Jonker allOf: 71472abb80SJohan Jonker - $ref: /schemas/types.yaml#/definitions/uint32 72472abb80SJohan Jonker default: 8 73472abb80SJohan Jonker description: 74472abb80SJohan Jonker Max playback channels, if not set, 8 channels default. 75472abb80SJohan Jonker 76472abb80SJohan Jonker rockchip,grf: 77472abb80SJohan Jonker $ref: /schemas/types.yaml#/definitions/phandle 78472abb80SJohan Jonker description: 79472abb80SJohan Jonker The phandle of the syscon node for the GRF register. 80472abb80SJohan Jonker Required property for controllers which support multi channel 81472abb80SJohan Jonker playback/capture. 82472abb80SJohan Jonker 83515d2757SJohan Jonker "#sound-dai-cells": 84515d2757SJohan Jonker const: 0 85515d2757SJohan Jonker 86472abb80SJohan Jonkerrequired: 87472abb80SJohan Jonker - compatible 88472abb80SJohan Jonker - reg 89472abb80SJohan Jonker - interrupts 90472abb80SJohan Jonker - clocks 91472abb80SJohan Jonker - clock-names 92472abb80SJohan Jonker - dmas 93472abb80SJohan Jonker - dma-names 94515d2757SJohan Jonker - "#sound-dai-cells" 95472abb80SJohan Jonker 96472abb80SJohan JonkeradditionalProperties: false 97472abb80SJohan Jonker 98472abb80SJohan Jonkerexamples: 99472abb80SJohan Jonker - | 100472abb80SJohan Jonker #include <dt-bindings/clock/rk3288-cru.h> 101472abb80SJohan Jonker #include <dt-bindings/interrupt-controller/arm-gic.h> 102472abb80SJohan Jonker #include <dt-bindings/interrupt-controller/irq.h> 103472abb80SJohan Jonker i2s@ff890000 { 104472abb80SJohan Jonker compatible = "rockchip,rk3288-i2s", "rockchip,rk3066-i2s"; 105472abb80SJohan Jonker reg = <0xff890000 0x10000>; 106472abb80SJohan Jonker interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 107472abb80SJohan Jonker clocks = <&cru SCLK_I2S0>, <&cru HCLK_I2S0>; 108472abb80SJohan Jonker clock-names = "i2s_clk", "i2s_hclk"; 109472abb80SJohan Jonker dmas = <&pdma1 0>, <&pdma1 1>; 110472abb80SJohan Jonker dma-names = "tx", "rx"; 111472abb80SJohan Jonker rockchip,capture-channels = <2>; 112472abb80SJohan Jonker rockchip,playback-channels = <8>; 113515d2757SJohan Jonker #sound-dai-cells = <0>; 114472abb80SJohan Jonker }; 115