Re: [PATCH v4] ASoC: tlv320aic31xx: Add basic codec driver implementation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 03/10/2014 02:09 PM, Mark Rutland wrote:
On Mon, Mar 10, 2014 at 08:52:21AM +0000, Jyri Sarha wrote:
This commit adds a bare bones driver support for TLV320AIC31XX family
audio codecs. The driver adds basic stereo playback trough headphone
and speaker outputs and mono capture trough microphone inputs.

The driver is currently missing support at least for mini DSP features
and jack detection. I have tested the driver only on TLV320AIC3111,
but based on the data sheets TLV320AIC3100, TLV320AIC3110, and
TLV320AIC3120 should work Ok too.

The base for the implementation was taken from:
git@xxxxxxxxxxxxx:ti-codecs/ti-codecs.git ajitk/topics/k3.10.1-aic31xx
-branch at commit 77504eba0294764e9e63b4a0c696b44db187cd13.

Signed-off-by: Jyri Sarha <jsarha@xxxxxx>
---
  .../devicetree/bindings/sound/tlv320aic31xx.txt    |   61 +
  include/dt-bindings/sound/tlv320aic31xx-micbias.h  |    9 +
  sound/soc/codecs/Kconfig                           |    4 +
  sound/soc/codecs/Makefile                          |    2 +
  sound/soc/codecs/tlv320aic31xx.c                   | 1343 ++++++++++++++++++++
  sound/soc/codecs/tlv320aic31xx.h                   |  258 ++++
  6 files changed, 1677 insertions(+)
  create mode 100644 Documentation/devicetree/bindings/sound/tlv320aic31xx.txt
  create mode 100644 include/dt-bindings/sound/tlv320aic31xx-micbias.h
  create mode 100644 sound/soc/codecs/tlv320aic31xx.c
  create mode 100644 sound/soc/codecs/tlv320aic31xx.h

diff --git a/Documentation/devicetree/bindings/sound/tlv320aic31xx.txt b/Documentation/devicetree/bindings/sound/tlv320aic31xx.txt
new file mode 100644
index 0000000..0109df1
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/tlv320aic31xx.txt
@@ -0,0 +1,61 @@
+Texas Instruments - tlv320aic31xx Codec module
+
+The tlv320aic31xx serial control bus communicates through I2C protocols
+
+Required properties:
+
+- compatible - "string" - One of:
+    "ti,tlv320aic310x" - Generic TLV320AIC31xx with mono speaker amp
+    "ti,tlv320aic311x" - Generic TLV320AIC31xx with stereo speaker amp
+    "ti,tlv320aic3100" - TLV320AIC3100 (mono speaker amp, no MiniDSP)
+    "ti,tlv320aic3110" - TLV320AIC3110 (stereo speaker amp, no MiniDSP)
+    "ti,tlv320aic3120" - TLV320AIC3120 (mono speaker amp, MiniDSP)
+    "ti,tlv320aic3111" - TLV320AIC3111 (stereo speaker amp, MiniDSP)
+
+- reg - <int> -  I2C slave address
+
+
+Optional properties:
+
+- gpio-reset - gpio pin number used for codec reset

I believe calling this reset-gpio would be more in keeping with the gpio
bindings.

I'd get rid of "pin number" from the description. GPIOs are referred to
with phandle + gpio-specifier pairs, and this makes it sound like a
single integer value.

+- ai31xx-micbias-vg - MicBias Voltage setting

This name is a bit terse. Perhaps s/vg/voltage/ ?


This parameter name is symmetric to already existing "ai3x-micbias-vg" in tlv320aic3x driver. Well... that is not a very good reason for not to change it. I'll change that to the next version of the patch.

+        0 or MICBIAS_OFF - MICBIAS output it not powered

s/it/is/


To be fixed.

Best regards,
Jyri
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux