~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/sound/ti,tlv320adcx140.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 # SPDX-License-Identifier: (GPL-2.0+ OR BSD-2-Clause)
  2 # Copyright (C) 2019 Texas Instruments Incorporated
  3 %YAML 1.2
  4 ---
  5 $id: http://devicetree.org/schemas/sound/ti,tlv320adcx140.yaml#
  6 $schema: http://devicetree.org/meta-schemas/core.yaml#
  7 
  8 title: Texas Instruments TLV320ADCX140 Quad Channel Analog-to-Digital Converter
  9 
 10 maintainers:
 11   - Andrew Davis <afd@ti.com>
 12 
 13 description: |
 14   The TLV320ADCX140 are multichannel (4-ch analog recording or 8-ch digital
 15   PDM microphones recording), high-performance audio, analog-to-digital
 16   converter (ADC) with analog inputs supporting up to 2V RMS. The TLV320ADCX140
 17   family supports line and  microphone Inputs, and offers a programmable
 18   microphone bias or supply voltage generation.
 19 
 20   Specifications can be found at:
 21     https://www.ti.com/lit/ds/symlink/tlv320adc3140.pdf
 22     https://www.ti.com/lit/ds/symlink/tlv320adc5140.pdf
 23     https://www.ti.com/lit/ds/symlink/tlv320adc6140.pdf
 24 
 25 properties:
 26   compatible:
 27     enum:
 28       - ti,tlv320adc3140
 29       - ti,tlv320adc5140
 30       - ti,tlv320adc6140
 31 
 32   reg:
 33     maxItems: 1
 34     description: |
 35       I2C address of the device can be one of these 0x4c, 0x4d, 0x4e or 0x4f
 36 
 37   reset-gpios:
 38     maxItems: 1
 39     description: |
 40       GPIO used for hardware reset.
 41 
 42   areg-supply:
 43     description: |
 44       Regulator with AVDD at 3.3V.  If not defined then the internal regulator
 45       is enabled.
 46 
 47   ti,mic-bias-source:
 48     description: |
 49       Indicates the source for MIC Bias.
 50       0 - Mic bias is set to VREF
 51       1 - Mic bias is set to VREF × 1.096
 52       6 - Mic bias is set to AVDD
 53     $ref: /schemas/types.yaml#/definitions/uint32
 54     enum: [0, 1, 6]
 55 
 56   ti,vref-source:
 57     description: |
 58       Indicates the source for MIC Bias.
 59       0 - Set VREF to 2.75V
 60       1 - Set VREF to 2.5V
 61       2 - Set VREF to 1.375V
 62     $ref: /schemas/types.yaml#/definitions/uint32
 63     enum: [0, 1, 2]
 64 
 65   ti,pdm-edge-select:
 66     description: |
 67        Defines the PDMCLK sampling edge configuration for the PDM inputs.  This
 68        array is defined as <PDMIN1 PDMIN2 PDMIN3 PDMIN4>.
 69 
 70        0 - (default) Odd channel is latched on the negative edge and even
 71        channel is latched on the positive edge.
 72        1 - Odd channel is latched on the positive edge and even channel is
 73        latched on the negative edge.
 74 
 75        PDMIN1 - PDMCLK latching edge used for channel 1 and 2 data
 76        PDMIN2 - PDMCLK latching edge used for channel 3 and 4 data
 77        PDMIN3 - PDMCLK latching edge used for channel 5 and 6 data
 78        PDMIN4 - PDMCLK latching edge used for channel 7 and 8 data
 79 
 80     $ref: /schemas/types.yaml#/definitions/uint32-array
 81     minItems: 1
 82     maxItems: 4
 83     items:
 84       maximum: 1
 85     default: [0, 0, 0, 0]
 86 
 87   ti,gpi-config:
 88     description: |
 89        Defines the configuration for the general purpose input pins (GPI).
 90        The array is defined as <GPI1 GPI2 GPI3 GPI4>.
 91 
 92        0 - (default) disabled
 93        1 - GPIX is configured as a general-purpose input (GPI)
 94        2 - GPIX is configured as a master clock input (MCLK)
 95        3 - GPIX is configured as an ASI input for daisy-chain (SDIN)
 96        4 - GPIX is configured as a PDM data input for channel 1 and channel
 97             (PDMDIN1)
 98        5 - GPIX is configured as a PDM data input for channel 3 and channel
 99             (PDMDIN2)
100        6 - GPIX is configured as a PDM data input for channel 5 and channel
101             (PDMDIN3)
102        7 - GPIX is configured as a PDM data input for channel 7 and channel
103             (PDMDIN4)
104 
105     $ref: /schemas/types.yaml#/definitions/uint32-array
106     minItems: 1
107     maxItems: 4
108     items:
109       maximum: 7
110     default: [0, 0, 0, 0]
111 
112   ti,gpio-config:
113     description: |
114        Defines the configuration and output drive for the General Purpose
115        Input and Output pin (GPIO1). Its value is a pair, the first value is for
116        the configuration type and the second value is for the output drive
117        type. The array is defined as <GPIO1_CFG GPIO1_DRV>
118 
119        configuration for the GPIO pin can be one of the following:
120        0 - disabled
121        1 - GPIO1 is configured as a general-purpose output (GPO)
122        2 - (default) GPIO1 is configured as a device interrupt output (IRQ)
123        3 - GPIO1 is configured as a secondary ASI output (SDOUT2)
124        4 - GPIO1 is configured as a PDM clock output (PDMCLK)
125        8 - GPIO1 is configured as an input to control when MICBIAS turns on or
126            off (MICBIAS_EN)
127        9 - GPIO1 is configured as a general-purpose input (GPI)
128        10 - GPIO1 is configured as a master clock input (MCLK)
129        11 - GPIO1 is configured as an ASI input for daisy-chain (SDIN)
130        12 - GPIO1 is configured as a PDM data input for channel 1 and channel 2
131             (PDMDIN1)
132        13 - GPIO1 is configured as a PDM data input for channel 3 and channel 4
133             (PDMDIN2)
134        14 - GPIO1 is configured as a PDM data input for channel 5 and channel 6
135             (PDMDIN3)
136        15 - GPIO1 is configured as a PDM data input for channel 7 and channel 8
137             (PDMDIN4)
138 
139        output drive type for the GPIO pin can be one of the following:
140        0 - Hi-Z output
141        1 - Drive active low and active high
142        2 - (default) Drive active low and weak high
143        3 - Drive active low and Hi-Z
144        4 - Drive weak low and active high
145        5 - Drive Hi-Z and active high
146 
147     $ref: /schemas/types.yaml#/definitions/uint32-array
148     minItems: 2
149     maxItems: 2
150     items:
151       maximum: 15
152     default: [2, 2]
153 
154   ti,asi-tx-drive:
155     type: boolean
156     description: |
157       When set the device will set the Tx ASI output to a Hi-Z state for unused
158       data cycles. Default is to drive the output low on unused ASI cycles.
159 
160 patternProperties:
161   '^ti,gpo-config-[1-4]$':
162     $ref: /schemas/types.yaml#/definitions/uint32-array
163     description: |
164        Defines the configuration and output driver for the general purpose
165        output pins (GPO).  These values are pairs, the first value is for the
166        configuration type and the second value is for the output drive type.
167        The array is defined as <GPO_CFG GPO_DRV>
168 
169        GPO output configuration can be one of the following:
170 
171        0 - (default) disabled
172        1 - GPOX is configured as a general-purpose output (GPO)
173        2 - GPOX is configured as a device interrupt output (IRQ)
174        3 - GPOX is configured as a secondary ASI output (SDOUT2)
175        4 - GPOX is configured as a PDM clock output (PDMCLK)
176 
177        GPO output drive configuration for the GPO pins can be one of the following:
178 
179        0d - (default) Hi-Z output
180        1d - Drive active low and active high
181        2d - Drive active low and weak high
182        3d - Drive active low and Hi-Z
183        4d - Drive weak low and active high
184        5d - Drive Hi-Z and active high
185 
186 required:
187   - compatible
188   - reg
189 
190 additionalProperties: false
191 
192 examples:
193   - |
194     #include <dt-bindings/gpio/gpio.h>
195     i2c {
196       #address-cells = <1>;
197       #size-cells = <0>;
198       codec: codec@4c {
199         compatible = "ti,tlv320adc5140";
200         reg = <0x4c>;
201         ti,mic-bias-source = <6>;
202         ti,pdm-edge-select = <0 1 0 1>;
203         ti,gpi-config = <4 5 6 7>;
204         ti,gpio-config = <10 2>;
205         ti,gpo-config-1 = <0 0>;
206         ti,gpo-config-2 = <0 0>;
207         reset-gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
208       };
209     };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php