Commit fb5ab0e7 authored by Oder Chiou's avatar Oder Chiou Committed by Mark Brown
Browse files

ASoC: rt5645: add device tree support



Modify the RT5645 driver to parse platform data from device tree.
Write a DT binding document to describe those properties.

Signed-off-by: default avatarBard Liao <bardliao@realtek.com>
Signed-off-by: default avatarOder Chiou <oder_chiou@realtek.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 1fcb76db
Loading
Loading
Loading
Loading
+72 −0
Original line number Diff line number Diff line
RT5650/RT5645 audio CODEC

This device supports I2C only.

Required properties:

- compatible : One of "realtek,rt5645" or "realtek,rt5650".

- reg : The I2C address of the device.

- interrupts : The CODEC's interrupt output.

Optional properties:

- hp-detect-gpios:
  a GPIO spec for the external headphone detect pin. If jd-mode = 0,
  we will get the JD status by getting the value of hp-detect-gpios.

- realtek,in2-differential
  Boolean. Indicate MIC2 input are differential, rather than single-ended.

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

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

-- realtek,jd-mode : The JD mode of rt5645/rt5650
   0 : rt5645/rt5650 JD function is not used
   1 : Mode-0 (VDD=3.3V), two port jack detection
   2 : Mode-1 (VDD=3.3V), one port jack detection
   3 : Mode-2 (VDD=1.8V), one port jack detection

Pins on the device (for linking into audio routes) for RT5645/RT5650:

  * DMIC L1
  * DMIC R1
  * DMIC L2
  * DMIC R2
  * IN1P
  * IN1N
  * IN2P
  * IN2N
  * Haptic Generator
  * HPOL
  * HPOR
  * LOUTL
  * LOUTR
  * PDM1L
  * PDM1R
  * SPOL
  * SPOR

Example:

codec: rt5650@1a {
	compatible = "realtek,rt5650";
	reg = <0x1a>;
	hp-detect-gpios = <&gpio 19 0>;
	interrupt-parent = <&gpio>;
	interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
	realtek,dmic-en = "true";
	realtek,en-jd-func = "true";
	realtek,jd-mode = <3>;
};
 No newline at end of file