1*13a7d9e9SGeert Uytterhoeven# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*13a7d9e9SGeert Uytterhoeven%YAML 1.2 3*13a7d9e9SGeert Uytterhoeven--- 4*13a7d9e9SGeert Uytterhoeven$id: http://devicetree.org/schemas/sound/ti,pcm3168a.yaml# 5*13a7d9e9SGeert Uytterhoeven$schema: http://devicetree.org/meta-schemas/core.yaml# 6*13a7d9e9SGeert Uytterhoeven 7*13a7d9e9SGeert Uytterhoeventitle: Texas Instruments PCM3168A Audio Codec 8*13a7d9e9SGeert Uytterhoeven 9*13a7d9e9SGeert Uytterhoevenmaintainers: 10*13a7d9e9SGeert Uytterhoeven - Damien Horsley <Damien.Horsley@imgtec.com> 11*13a7d9e9SGeert Uytterhoeven - Geert Uytterhoeven <geert+renesas@glider.be> 12*13a7d9e9SGeert Uytterhoeven - Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> 13*13a7d9e9SGeert Uytterhoeven 14*13a7d9e9SGeert Uytterhoevendescription: 15*13a7d9e9SGeert Uytterhoeven The Texas Instruments PCM3168A is a 24-bit Multi-channel Audio CODEC with 16*13a7d9e9SGeert Uytterhoeven 96/192kHz sampling rate, supporting both SPI and I2C bus access. 17*13a7d9e9SGeert Uytterhoeven 18*13a7d9e9SGeert Uytterhoevenproperties: 19*13a7d9e9SGeert Uytterhoeven compatible: 20*13a7d9e9SGeert Uytterhoeven const: ti,pcm3168a 21*13a7d9e9SGeert Uytterhoeven 22*13a7d9e9SGeert Uytterhoeven reg: 23*13a7d9e9SGeert Uytterhoeven maxItems: 1 24*13a7d9e9SGeert Uytterhoeven 25*13a7d9e9SGeert Uytterhoeven clocks: 26*13a7d9e9SGeert Uytterhoeven items: 27*13a7d9e9SGeert Uytterhoeven - description: System clock input 28*13a7d9e9SGeert Uytterhoeven 29*13a7d9e9SGeert Uytterhoeven clock-names: 30*13a7d9e9SGeert Uytterhoeven items: 31*13a7d9e9SGeert Uytterhoeven - const: scki 32*13a7d9e9SGeert Uytterhoeven 33*13a7d9e9SGeert Uytterhoeven reset-gpios: 34*13a7d9e9SGeert Uytterhoeven items: 35*13a7d9e9SGeert Uytterhoeven - description: | 36*13a7d9e9SGeert Uytterhoeven GPIO line connected to the active-low RST pin of the codec. 37*13a7d9e9SGeert Uytterhoeven RST = low: device power-down 38*13a7d9e9SGeert Uytterhoeven RST = high: device is enabled 39*13a7d9e9SGeert Uytterhoeven 40*13a7d9e9SGeert Uytterhoeven "#sound-dai-cells": 41*13a7d9e9SGeert Uytterhoeven enum: [0, 1] 42*13a7d9e9SGeert Uytterhoeven 43*13a7d9e9SGeert Uytterhoeven VDD1-supply: 44*13a7d9e9SGeert Uytterhoeven description: Digital power supply regulator 1 (+3.3V) 45*13a7d9e9SGeert Uytterhoeven 46*13a7d9e9SGeert Uytterhoeven VDD2-supply: 47*13a7d9e9SGeert Uytterhoeven description: Digital power supply regulator 2 (+3.3V) 48*13a7d9e9SGeert Uytterhoeven 49*13a7d9e9SGeert Uytterhoeven VCCAD1-supply: 50*13a7d9e9SGeert Uytterhoeven description: ADC power supply regulator 1 (+5V) 51*13a7d9e9SGeert Uytterhoeven 52*13a7d9e9SGeert Uytterhoeven VCCAD2-supply: 53*13a7d9e9SGeert Uytterhoeven description: ADC power supply regulator 2 (+5V) 54*13a7d9e9SGeert Uytterhoeven 55*13a7d9e9SGeert Uytterhoeven VCCDA1-supply: 56*13a7d9e9SGeert Uytterhoeven description: DAC power supply regulator 1 (+5V) 57*13a7d9e9SGeert Uytterhoeven 58*13a7d9e9SGeert Uytterhoeven VCCDA2-supply: 59*13a7d9e9SGeert Uytterhoeven description: DAC power supply regulator 2 (+5V) 60*13a7d9e9SGeert Uytterhoeven 61*13a7d9e9SGeert Uytterhoeven ports: 62*13a7d9e9SGeert Uytterhoeven $ref: audio-graph-port.yaml#/definitions/port-base 63*13a7d9e9SGeert Uytterhoeven properties: 64*13a7d9e9SGeert Uytterhoeven port@0: 65*13a7d9e9SGeert Uytterhoeven $ref: audio-graph-port.yaml# 66*13a7d9e9SGeert Uytterhoeven description: Audio input port. 67*13a7d9e9SGeert Uytterhoeven 68*13a7d9e9SGeert Uytterhoeven port@1: 69*13a7d9e9SGeert Uytterhoeven $ref: audio-graph-port.yaml# 70*13a7d9e9SGeert Uytterhoeven description: Audio output port. 71*13a7d9e9SGeert Uytterhoeven 72*13a7d9e9SGeert Uytterhoevenrequired: 73*13a7d9e9SGeert Uytterhoeven - compatible 74*13a7d9e9SGeert Uytterhoeven - reg 75*13a7d9e9SGeert Uytterhoeven - clocks 76*13a7d9e9SGeert Uytterhoeven - clock-names 77*13a7d9e9SGeert Uytterhoeven - VDD1-supply 78*13a7d9e9SGeert Uytterhoeven - VDD2-supply 79*13a7d9e9SGeert Uytterhoeven - VCCAD1-supply 80*13a7d9e9SGeert Uytterhoeven - VCCAD2-supply 81*13a7d9e9SGeert Uytterhoeven - VCCDA1-supply 82*13a7d9e9SGeert Uytterhoeven - VCCDA2-supply 83*13a7d9e9SGeert Uytterhoeven 84*13a7d9e9SGeert UytterhoevenadditionalProperties: false 85*13a7d9e9SGeert Uytterhoeven 86*13a7d9e9SGeert Uytterhoevenexamples: 87*13a7d9e9SGeert Uytterhoeven - | 88*13a7d9e9SGeert Uytterhoeven #include <dt-bindings/gpio/gpio.h> 89*13a7d9e9SGeert Uytterhoeven 90*13a7d9e9SGeert Uytterhoeven i2c { 91*13a7d9e9SGeert Uytterhoeven #address-cells = <1>; 92*13a7d9e9SGeert Uytterhoeven #size-cells = <0>; 93*13a7d9e9SGeert Uytterhoeven 94*13a7d9e9SGeert Uytterhoeven pcm3168a: audio-codec@44 { 95*13a7d9e9SGeert Uytterhoeven compatible = "ti,pcm3168a"; 96*13a7d9e9SGeert Uytterhoeven reg = <0x44>; 97*13a7d9e9SGeert Uytterhoeven reset-gpios = <&gpio0 4 GPIO_ACTIVE_LOW>; 98*13a7d9e9SGeert Uytterhoeven clocks = <&clk_core 42>; 99*13a7d9e9SGeert Uytterhoeven clock-names = "scki"; 100*13a7d9e9SGeert Uytterhoeven VDD1-supply = <&supply3v3>; 101*13a7d9e9SGeert Uytterhoeven VDD2-supply = <&supply3v3>; 102*13a7d9e9SGeert Uytterhoeven VCCAD1-supply = <&supply5v0>; 103*13a7d9e9SGeert Uytterhoeven VCCAD2-supply = <&supply5v0>; 104*13a7d9e9SGeert Uytterhoeven VCCDA1-supply = <&supply5v0>; 105*13a7d9e9SGeert Uytterhoeven VCCDA2-supply = <&supply5v0>; 106*13a7d9e9SGeert Uytterhoeven }; 107*13a7d9e9SGeert Uytterhoeven }; 108