Commit ab99d987 authored by Mark Brown's avatar Mark Brown
Browse files

Merge remote-tracking branch 'asoc/topic/msm8916' into asoc-next

parents a5ef8ca6 56026714
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
Device-Tree bindings for Digital microphone (DMIC) codec

This device support generic PDM digital microphone.

Required properties:
	- compatible: should be "dmic-codec".

Optional properties:
	- dmicen-gpios: GPIO specifier for dmic to control start and stop

Example node:

	dmic_codec: dmic@0 {
		compatible = "dmic-codec";
		dmicen-gpios = <&gpio4 3 GPIO_ACTIVE_HIGH>;
	};
+17 −1
Original line number Diff line number Diff line
@@ -31,8 +31,22 @@ Required properties
 - vdd-cdc-io-supply: phandle to VDD_CDC_IO regulator DT node.
 - vdd-cdc-tx-rx-cx-supply: phandle to VDD_CDC_TX/RX/CX regulator DT node.
 - vdd-micbias-supply: phandle of VDD_MICBIAS supply's regulator DT node.

Optional Properties:
 - qcom,mbhc-vthreshold-low: Array of 5 threshold voltages in mV for 5 buttons
			     detection on headset when the mbhc is powered up
			     by internal current source, this is a low power.
 - qcom,mbhc-vthreshold-high: Array of 5 thresold voltages in mV for 5 buttons
			      detection on headset when mbhc is powered up
			       from micbias.
- qcom,micbias-lvl:  Voltage (mV) for Mic Bias
- qcom,hphl-jack-type-normally-open: boolean, present if hphl pin on jack is a
				     NO (Normally Open). If not specified, then
				     its assumed that hphl pin on jack is NC
				     (Normally Closed).
- qcom,gnd-jack-type-normally-open: boolean, present if gnd pin on jack is
				    NO (Normally Open). If not specified, then
				    its assumed that gnd pin on jack is NC
				    (Normally Closed).
- qcom,micbias1-ext-cap: boolean, present if micbias1 has external capacitor
			 connected.
- qcom,micbias2-ext-cap: boolean, present if micbias2 has external capacitor
@@ -48,6 +62,8 @@ spmi_bus {
		reg-names = "pmic-codec-core";
		clocks = <&gcc GCC_CODEC_DIGCODEC_CLK>;
		clock-names = "mclk";
		qcom,mbhc-vthreshold-low = <75 150 237 450 500>;
		qcom,mbhc-vthreshold-high = <75 150 237 450 500>;
		interrupt-parent = <&spmi_bus>;
		interrupts = <0x1 0xf0 0x0 IRQ_TYPE_NONE>,
			     <0x1 0xf0 0x1 IRQ_TYPE_NONE>,
+33 −0
Original line number Diff line number Diff line
RT274 audio CODEC

This device supports I2C only.

Required properties:

- compatible : "realtek,rt274".

- reg : The I2C address of the device.

Optional properties:

- interrupts : The CODEC's interrupt output.


Pins on the device (for linking into audio routes) for RT274:

  * DMIC1 Pin
  * DMIC2 Pin
  * MIC
  * LINE1
  * LINE2
  * HPO Pin
  * SPDIF
  * LINE3

Example:

codec: rt274@1c {
	compatible = "realtek,rt274";
	reg = <0x1c>;
	interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
};
+1 −1
Original line number Diff line number Diff line
@@ -1355,7 +1355,7 @@ static struct regmap *pm860x_get_regmap(struct device *dev)
	return pm860x->regmap;
}

static struct snd_soc_codec_driver soc_codec_dev_pm860x = {
static const struct snd_soc_codec_driver soc_codec_dev_pm860x = {
	.probe		= pm860x_probe,
	.remove		= pm860x_remove,
	.set_bias_level	= pm860x_set_bias_level,
+8 −1
Original line number Diff line number Diff line
@@ -71,7 +71,7 @@ config SND_SOC_ALL_CODECS
	select SND_SOC_DA732X if I2C
	select SND_SOC_DA9055 if I2C
	select SND_SOC_DIO2125
	select SND_SOC_DMIC
	select SND_SOC_DMIC if GPIOLIB
	select SND_SOC_ES8316 if I2C
	select SND_SOC_ES8328_SPI if SPI_MASTER
	select SND_SOC_ES8328_I2C if I2C
@@ -114,6 +114,7 @@ config SND_SOC_ALL_CODECS
	select SND_SOC_PCM5102A
	select SND_SOC_PCM512x_I2C if I2C
	select SND_SOC_PCM512x_SPI if SPI_MASTER
	select SND_SOC_RT274 if I2C
	select SND_SOC_RT286 if I2C
	select SND_SOC_RT298 if I2C
	select SND_SOC_RT5514 if I2C
@@ -716,11 +717,17 @@ config SND_SOC_RL6231

config SND_SOC_RL6347A
	tristate
	default y if SND_SOC_RT274=y
	default y if SND_SOC_RT286=y
	default y if SND_SOC_RT298=y
	default m if SND_SOC_RT274=m
	default m if SND_SOC_RT286=m
	default m if SND_SOC_RT298=m

config SND_SOC_RT274
	tristate
	depends on I2C

config SND_SOC_RT286
	tristate
	depends on I2C
Loading