diff options
author | Xinyu Chen <xinyu.chen@freescale.com> | 2011-11-18 15:11:35 +0800 |
---|---|---|
committer | Xinyu Chen <xinyu.chen@freescale.com> | 2011-11-18 15:11:35 +0800 |
commit | b92410aeb51ed48429b59395b7966dbdf616b854 (patch) | |
tree | f6df7b89c40da66630e5672ef0b0488b048a3731 /sound | |
parent | 1e71c6ba95b0386fda935d022c8f6bba8ed94bce (diff) | |
parent | c7f6e5da736db878ae58b123f28010c9355337aa (diff) |
Merge commit 'rel_imx_2.6.38_11.11.00_RC1' into imx_2.6.38_android
Conflicts:
arch/arm/mach-mx6/board-mx6q_sabrelite.c
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/codecs/sgtl5000.c | 11 | ||||
-rw-r--r-- | sound/soc/imx/Kconfig | 4 | ||||
-rw-r--r-- | sound/soc/imx/imx-ssi.c | 7 |
3 files changed, 13 insertions, 9 deletions
diff --git a/sound/soc/codecs/sgtl5000.c b/sound/soc/codecs/sgtl5000.c index 485a9d1cd472..d7500e7717c6 100644 --- a/sound/soc/codecs/sgtl5000.c +++ b/sound/soc/codecs/sgtl5000.c @@ -940,7 +940,9 @@ static int sgtl5000_pcm_hw_params(struct snd_pcm_substream *substream, return -EINVAL; } - snd_soc_update_bits(codec, SGTL5000_CHIP_I2S_CTRL, i2s_ctl, i2s_ctl); + snd_soc_update_bits(codec, SGTL5000_CHIP_I2S_CTRL, + SGTL5000_I2S_DLEN_MASK | SGTL5000_I2S_SCLKFREQ_MASK, + i2s_ctl); return 0; } @@ -1351,7 +1353,7 @@ static int sgtl5000_set_power_regs(struct snd_soc_codec *codec) vag = (vag - SGTL5000_ANA_GND_BASE) / SGTL5000_ANA_GND_STP; snd_soc_update_bits(codec, SGTL5000_CHIP_REF_CTRL, - vag << SGTL5000_ANA_GND_SHIFT, + SGTL5000_ANA_GND_MASK, vag << SGTL5000_ANA_GND_SHIFT); /* set line out VAG to vddio / 2, in range (0.8v, 1.675v) */ @@ -1366,9 +1368,8 @@ static int sgtl5000_set_power_regs(struct snd_soc_codec *codec) SGTL5000_LINE_OUT_GND_STP; snd_soc_update_bits(codec, SGTL5000_CHIP_LINE_OUT_CTRL, - vag << SGTL5000_LINE_OUT_GND_SHIFT | - SGTL5000_LINE_OUT_CURRENT_360u << - SGTL5000_LINE_OUT_CURRENT_SHIFT, + SGTL5000_LINE_OUT_GND_MASK | + SGTL5000_LINE_OUT_CURRENT_MASK, vag << SGTL5000_LINE_OUT_GND_SHIFT | SGTL5000_LINE_OUT_CURRENT_360u << SGTL5000_LINE_OUT_CURRENT_SHIFT); diff --git a/sound/soc/imx/Kconfig b/sound/soc/imx/Kconfig index 0a2c2dadd2f9..f3788b5bc9fb 100644 --- a/sound/soc/imx/Kconfig +++ b/sound/soc/imx/Kconfig @@ -48,7 +48,7 @@ config SND_SOC_PHYCORE_AC97 config SND_SOC_IMX_SGTL5000 tristate "SoC Audio support for i.MX boards with sgtl5000" - depends on MACH_MX35_3DS || MACH_MX51_BABBAGE || MACH_MX6Q_SABRELITE + depends on I2C && (MACH_MX35_3DS || MACH_MX51_BABBAGE || MACH_MX6Q_SABRELITE) select SND_SOC_SGTL5000 select SND_MXC_SOC_MX2 help @@ -57,7 +57,7 @@ config SND_SOC_IMX_SGTL5000 config SND_SOC_IMX_CS42888 tristate "SoC Audio support for i.MX boards with cs42888" - depends on MACH_MX6Q_ARM2 || MACH_MX53_ARD + depends on I2C && (MACH_MX6Q_ARM2 || MACH_MX53_ARD) select SND_SOC_CS42888 select SND_MXC_SOC_MX2 help diff --git a/sound/soc/imx/imx-ssi.c b/sound/soc/imx/imx-ssi.c index 9dfbd2087e2c..8cf85b06b780 100644 --- a/sound/soc/imx/imx-ssi.c +++ b/sound/soc/imx/imx-ssi.c @@ -53,6 +53,9 @@ #include "imx-ssi.h" #define SSI_SACNT_DEFAULT (SSI_SACNT_AC97EN | SSI_SACNT_FV) +#define IMX_SSI_FORMATS \ + (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3LE | \ + SNDRV_PCM_FMTBIT_S24_LE) /* * SSI Network Mode or TDM slots configuration. @@ -465,13 +468,13 @@ static struct snd_soc_dai_driver imx_ssi_dai = { .channels_min = 1, .channels_max = 2, .rates = SNDRV_PCM_RATE_8000_96000, - .formats = SNDRV_PCM_FMTBIT_S16_LE, + .formats = IMX_SSI_FORMATS, }, .capture = { .channels_min = 1, .channels_max = 2, .rates = SNDRV_PCM_RATE_8000_96000, - .formats = SNDRV_PCM_FMTBIT_S16_LE, + .formats = IMX_SSI_FORMATS, }, .ops = &imx_ssi_pcm_dai_ops, }; |