Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

Merge branches 'topic/ad193x', 'topic/tlv320aic23', 'topic/tlv320aic32x4',...

Merge branches 'topic/ad193x', 'topic/tlv320aic23', 'topic/tlv320aic32x4', 'topic/wm8991', 'fix/si476x' and 'fix/88pm860' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-io
Loading
Loading
Loading
Loading
+30 −0
Original line number Diff line number Diff line
Texas Instruments - tlv320aic32x4 Codec module

The tlv320aic32x4 serial control bus communicates through I2C protocols

Required properties:
 - compatible: Should be "ti,tlv320aic32x4"
 - reg: I2C slave address
 - supply-*: Required supply regulators are:
    "iov" - digital IO power supply
    "ldoin" - LDO power supply
    "dv" - Digital core power supply
    "av" - Analog core power supply
    If you supply ldoin, dv and av are optional. Otherwise they are required
   See regulator/regulator.txt for more information about the detailed binding
   format.

Optional properties:
 - reset-gpios: Reset-GPIO phandle with args as described in gpio/gpio.txt
 - clocks/clock-names: Clock named 'mclk' for the master clock of the codec.
   See clock/clock-bindings.txt for information about the detailed format.


Example:

codec: tlv320aic32x4@18 {
	compatible = "ti,tlv320aic32x4";
	reg = <0x18>;
	clocks = <&clks 201>;
	clock-names = "mclk";
};
+15 −0
Original line number Diff line number Diff line
@@ -45,6 +45,11 @@
	((unsigned long)&(struct soc_mixer_control) \
	{.reg = xlreg, .rreg = xrreg, .shift = xshift, .rshift = xshift, \
	.max = xmax, .platform_max = xmax, .invert = xinvert})
#define SOC_DOUBLE_R_S_VALUE(xlreg, xrreg, xshift, xmin, xmax, xsign_bit, xinvert) \
	((unsigned long)&(struct soc_mixer_control) \
	{.reg = xlreg, .rreg = xrreg, .shift = xshift, .rshift = xshift, \
	.max = xmax, .min = xmin, .platform_max = xmax, .sign_bit = xsign_bit, \
	.invert = xinvert})
#define SOC_DOUBLE_R_RANGE_VALUE(xlreg, xrreg, xshift, xmin, xmax, xinvert) \
	((unsigned long)&(struct soc_mixer_control) \
	{.reg = xlreg, .rreg = xrreg, .shift = xshift, .rshift = xshift, \
@@ -152,6 +157,15 @@
		{.reg = xreg, .rreg = xrreg, \
		.shift = xshift, .rshift = xshift, \
		.max = xmax, .min = xmin} }
#define SOC_DOUBLE_R_S_TLV(xname, reg_left, reg_right, xshift, xmin, xmax, xsign_bit, xinvert, tlv_array) \
{	.iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = (xname),\
	.access = SNDRV_CTL_ELEM_ACCESS_TLV_READ |\
		 SNDRV_CTL_ELEM_ACCESS_READWRITE,\
	.tlv.p = (tlv_array), \
	.info = snd_soc_info_volsw, \
	.get = snd_soc_get_volsw, .put = snd_soc_put_volsw, \
	.private_value = SOC_DOUBLE_R_S_VALUE(reg_left, reg_right, xshift, \
					    xmin, xmax, xsign_bit, xinvert) }
#define SOC_DOUBLE_S8_TLV(xname, xreg, xmin, xmax, tlv_array) \
{	.iface  = SNDRV_CTL_ELEM_IFACE_MIXER, .name = (xname), \
	.access = SNDRV_CTL_ELEM_ACCESS_TLV_READ | \
@@ -1064,6 +1078,7 @@ struct soc_mixer_control {
	int min, max, platform_max;
	int reg, rreg;
	unsigned int shift, rshift;
	unsigned int sign_bit;
	unsigned int invert:1;
	unsigned int autodisable:1;
};
+1 −1
Original line number Diff line number Diff line
@@ -58,6 +58,6 @@ config SND_AT91_SOC_AFEB9260
	depends on ARCH_AT91 && ATMEL_SSC && ARCH_AT91 && MACH_AFEB9260 && SND_ATMEL_SOC
	select SND_ATMEL_SOC_PDC
	select SND_ATMEL_SOC_SSC
	select SND_SOC_TLV320AIC23
	select SND_SOC_TLV320AIC23_I2C
	help
	  Say Y here to support sound on AFEB9260 board.
+2 −1
Original line number Diff line number Diff line
@@ -68,7 +68,8 @@ config SND_BF5XX_SOC_AD193X
	tristate "SoC AD193X Audio support for Blackfin"
	depends on SND_BF5XX_I2S
	select SND_BF5XX_SOC_I2S
	select SND_SOC_AD193X
	select SND_SOC_AD193X_I2C if I2C
	select SND_SOC_AD193X_SPI if SPI_MASTER
	help
	  Say Y if you want to add support for AD193X codec on Blackfin.
	  This driver supports AD1936, AD1937, AD1938 and AD1939.
+1 −1
Original line number Diff line number Diff line
@@ -18,7 +18,7 @@ config SND_EP93XX_SOC_SNAPPERCL15
        tristate "SoC Audio support for Bluewater Systems Snapper CL15 module"
        depends on SND_EP93XX_SOC && MACH_SNAPPER_CL15
        select SND_EP93XX_SOC_I2S
        select SND_SOC_TLV320AIC23
        select SND_SOC_TLV320AIC23_I2C
        help
          Say Y or M here if you want to add support for I2S audio on the
          Bluewater Systems Snapper CL15 module.
Loading