Commit b72f1343 authored by Takashi Iwai's avatar Takashi Iwai

Merge branch 'fix/asoc' into for-linus

parents 1c583063 3cc4e53f
...@@ -205,6 +205,7 @@ int __pxa2xx_pcm_open(struct snd_pcm_substream *substream) ...@@ -205,6 +205,7 @@ int __pxa2xx_pcm_open(struct snd_pcm_substream *substream)
if (!rtd->dma_desc_array) if (!rtd->dma_desc_array)
goto err1; goto err1;
rtd->dma_ch = -1;
runtime->private_data = rtd; runtime->private_data = rtd;
return 0; return 0;
......
...@@ -778,7 +778,7 @@ static int dac33_prepare_chip(struct snd_pcm_substream *substream) ...@@ -778,7 +778,7 @@ static int dac33_prepare_chip(struct snd_pcm_substream *substream)
if (dac33->fifo_mode) { if (dac33->fifo_mode) {
/* Generic for all FIFO modes */ /* Generic for all FIFO modes */
/* 50-51 : ASRC Control registers */ /* 50-51 : ASRC Control registers */
dac33_write(codec, DAC33_ASRC_CTRL_A, (1 << 4)); /* div=2 */ dac33_write(codec, DAC33_ASRC_CTRL_A, DAC33_SRCLKDIV(1));
dac33_write(codec, DAC33_ASRC_CTRL_B, 1); /* ??? */ dac33_write(codec, DAC33_ASRC_CTRL_B, 1); /* ??? */
/* Write registers 0x34 and 0x35 (MSB, LSB) */ /* Write registers 0x34 and 0x35 (MSB, LSB) */
...@@ -1038,11 +1038,7 @@ static int dac33_set_dai_fmt(struct snd_soc_dai *codec_dai, ...@@ -1038,11 +1038,7 @@ static int dac33_set_dai_fmt(struct snd_soc_dai *codec_dai,
case SND_SOC_DAIFMT_DSP_A: case SND_SOC_DAIFMT_DSP_A:
aictrl_a |= DAC33_AFMT_DSP; aictrl_a |= DAC33_AFMT_DSP;
aictrl_b &= ~DAC33_DATA_DELAY_MASK; aictrl_b &= ~DAC33_DATA_DELAY_MASK;
aictrl_b |= DAC33_DATA_DELAY(1); /* 1 bit delay */ aictrl_b |= DAC33_DATA_DELAY(0);
break;
case SND_SOC_DAIFMT_DSP_B:
aictrl_a |= DAC33_AFMT_DSP;
aictrl_b &= ~DAC33_DATA_DELAY_MASK; /* No delay */
break; break;
case SND_SOC_DAIFMT_RIGHT_J: case SND_SOC_DAIFMT_RIGHT_J:
aictrl_a |= DAC33_AFMT_RIGHT_J; aictrl_a |= DAC33_AFMT_RIGHT_J;
...@@ -1066,7 +1062,7 @@ static void dac33_init_chip(struct snd_soc_codec *codec) ...@@ -1066,7 +1062,7 @@ static void dac33_init_chip(struct snd_soc_codec *codec)
{ {
/* 44-46: DAC Control Registers */ /* 44-46: DAC Control Registers */
/* A : DAC sample rate Fsref/1.5 */ /* A : DAC sample rate Fsref/1.5 */
dac33_write(codec, DAC33_DAC_CTRL_A, DAC33_DACRATE(1)); dac33_write(codec, DAC33_DAC_CTRL_A, DAC33_DACRATE(0));
/* B : DAC src=normal, not muted */ /* B : DAC src=normal, not muted */
dac33_write(codec, DAC33_DAC_CTRL_B, DAC33_DACSRCR_RIGHT | dac33_write(codec, DAC33_DAC_CTRL_B, DAC33_DACSRCR_RIGHT |
DAC33_DACSRCL_LEFT); DAC33_DACSRCL_LEFT);
......
...@@ -74,7 +74,7 @@ static void wait_for_dc_servo(struct snd_soc_codec *codec) ...@@ -74,7 +74,7 @@ static void wait_for_dc_servo(struct snd_soc_codec *codec)
msleep(1); msleep(1);
reg = snd_soc_read(codec, WM8993_DC_SERVO_READBACK_0); reg = snd_soc_read(codec, WM8993_DC_SERVO_READBACK_0);
dev_dbg(codec->dev, "DC servo: %x\n", reg); dev_dbg(codec->dev, "DC servo: %x\n", reg);
} while (reg & WM8993_DCS_DATAPATH_BUSY); } while (reg & WM8993_DCS_DATAPATH_BUSY && count < 400);
if (reg & WM8993_DCS_DATAPATH_BUSY) if (reg & WM8993_DCS_DATAPATH_BUSY)
dev_err(codec->dev, "Timed out waiting for DC Servo\n"); dev_err(codec->dev, "Timed out waiting for DC Servo\n");
......
config SND_IMX_SOC config SND_IMX_SOC
tristate "SoC Audio for Freescale i.MX CPUs" tristate "SoC Audio for Freescale i.MX CPUs"
depends on ARCH_MXC && BROKEN depends on ARCH_MXC
select SND_PCM select SND_PCM
select FIQ select FIQ
select SND_SOC_AC97_BUS select SND_SOC_AC97_BUS
......
...@@ -32,6 +32,7 @@ config SND_SOC_SH4_SIU ...@@ -32,6 +32,7 @@ config SND_SOC_SH4_SIU
select DMA_ENGINE select DMA_ENGINE
select DMADEVICES select DMADEVICES
select SH_DMAE select SH_DMAE
select FW_LOADER
## ##
## Boards ## Boards
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment