Linux Audio

Check our new training course

Embedded Linux Audio

Check our new training course
with Creative Commons CC-BY-SA
lecture materials

Bootlin logo

Elixir Cross Referencer

Loading...
RT5659/RT5658 audio CODEC

This device supports I2C only.

Required properties:

- compatible : One of "realtek,rt5659" or "realtek,rt5658".

- reg : The I2C address of the device.

- interrupts : The CODEC's interrupt output.

Optional properties:

- clocks: The phandle of the master clock to the CODEC
- clock-names: Should be "mclk"

- realtek,in1-differential
- realtek,in3-differential
- realtek,in4-differential
  Boolean. Indicate MIC1/3/4 input are differential, rather than single-ended.

- realtek,dmic1-data-pin
  0: dmic1 is not used
  1: using IN2N pin as dmic1 data pin
  2: using GPIO5 pin as dmic1 data pin
  3: using GPIO9 pin as dmic1 data pin
  4: using GPIO11 pin as dmic1 data pin

- realtek,dmic2-data-pin
  0: dmic2 is not used
  1: using IN2P pin as dmic2 data pin
  2: using GPIO6 pin as dmic2 data pin
  3: using GPIO10 pin as dmic2 data pin
  4: using GPIO12 pin as dmic2 data pin

- realtek,jd-src
  0: No JD is used
  1: using JD3 as JD source
  2: JD source for Intel HDA header

- realtek,ldo1-en-gpios : The GPIO that controls the CODEC's LDO1_EN pin.
- realtek,reset-gpios : The GPIO that controls the CODEC's RESET pin.

- sound-name-prefix: Please refer to name-prefix.yaml

- ports: A Codec may have a single or multiple I2S interfaces. These
  interfaces on Codec side can be described under 'ports' or 'port'.
  When the SoC or host device is connected to multiple interfaces of
  the Codec, the connectivity can be described using 'ports' property.
  If a single interface is used, then 'port' can be used. The usage
  depends on the platform or board design.
  Please refer to Documentation/devicetree/bindings/graph.txt

Pins on the device (for linking into audio routes) for RT5659/RT5658:

  * DMIC L1
  * DMIC R1
  * DMIC L2
  * DMIC R2
  * IN1P
  * IN1N
  * IN2P
  * IN2N
  * IN3P
  * IN3N
  * IN4P
  * IN4N
  * HPOL
  * HPOR
  * SPOL
  * SPOR
  * LOUTL
  * LOUTR
  * MONOOUT
  * PDML
  * PDMR
  * SPDIF

Example:

rt5659 {
	compatible = "realtek,rt5659";
	reg = <0x1b>;
	interrupt-parent = <&gpio>;
	interrupts = <TEGRA_GPIO(W, 3) IRQ_TYPE_LEVEL_HIGH>;
	realtek,ldo1-en-gpios =
		<&gpio TEGRA_GPIO(V, 3) GPIO_ACTIVE_HIGH>;
};