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/ ? > + 0 or MICBIAS_OFF - MICBIAS output it not powered s/it/is/ > + 1 or MICBIAS_2_0V - MICBIAS output is powered to 2.0V > + 2 or MICBIAS_2_5V - MICBIAS output is powered to 2.5V > + 3 or MICBIAS_AVDD - MICBIAS output is connected to AVDD > + If this node is not mentioned or if the value is unknown, then > + micbias is set to 2.0V. Why does the dts write need to select these -- what prevents this getting selected dynamically? Cheers, Mark. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html