Merge remote-tracking branches 'asoc/fix/davinci', 'asoc/fix/es8328', 'asoc/fix/fsl', 'asoc/fix/fsl-sai' and 'asoc/fix/intel' into asoc-linus
This commit is contained in:
commit
787b121db1
@ -205,18 +205,18 @@ static const struct snd_kcontrol_new es8328_right_line_controls =
|
||||
|
||||
/* Left Mixer */
|
||||
static const struct snd_kcontrol_new es8328_left_mixer_controls[] = {
|
||||
SOC_DAPM_SINGLE("Playback Switch", ES8328_DACCONTROL17, 8, 1, 0),
|
||||
SOC_DAPM_SINGLE("Left Bypass Switch", ES8328_DACCONTROL17, 7, 1, 0),
|
||||
SOC_DAPM_SINGLE("Right Playback Switch", ES8328_DACCONTROL18, 8, 1, 0),
|
||||
SOC_DAPM_SINGLE("Right Bypass Switch", ES8328_DACCONTROL18, 7, 1, 0),
|
||||
SOC_DAPM_SINGLE("Playback Switch", ES8328_DACCONTROL17, 7, 1, 0),
|
||||
SOC_DAPM_SINGLE("Left Bypass Switch", ES8328_DACCONTROL17, 6, 1, 0),
|
||||
SOC_DAPM_SINGLE("Right Playback Switch", ES8328_DACCONTROL18, 7, 1, 0),
|
||||
SOC_DAPM_SINGLE("Right Bypass Switch", ES8328_DACCONTROL18, 6, 1, 0),
|
||||
};
|
||||
|
||||
/* Right Mixer */
|
||||
static const struct snd_kcontrol_new es8328_right_mixer_controls[] = {
|
||||
SOC_DAPM_SINGLE("Left Playback Switch", ES8328_DACCONTROL19, 8, 1, 0),
|
||||
SOC_DAPM_SINGLE("Left Bypass Switch", ES8328_DACCONTROL19, 7, 1, 0),
|
||||
SOC_DAPM_SINGLE("Playback Switch", ES8328_DACCONTROL20, 8, 1, 0),
|
||||
SOC_DAPM_SINGLE("Right Bypass Switch", ES8328_DACCONTROL20, 7, 1, 0),
|
||||
SOC_DAPM_SINGLE("Left Playback Switch", ES8328_DACCONTROL19, 7, 1, 0),
|
||||
SOC_DAPM_SINGLE("Left Bypass Switch", ES8328_DACCONTROL19, 6, 1, 0),
|
||||
SOC_DAPM_SINGLE("Playback Switch", ES8328_DACCONTROL20, 7, 1, 0),
|
||||
SOC_DAPM_SINGLE("Right Bypass Switch", ES8328_DACCONTROL20, 6, 1, 0),
|
||||
};
|
||||
|
||||
static const char * const es8328_pga_sel[] = {
|
||||
|
@ -681,8 +681,8 @@ static int davinci_mcasp_set_tdm_slot(struct snd_soc_dai *dai,
|
||||
}
|
||||
|
||||
mcasp->tdm_slots = slots;
|
||||
mcasp->tdm_mask[SNDRV_PCM_STREAM_PLAYBACK] = rx_mask;
|
||||
mcasp->tdm_mask[SNDRV_PCM_STREAM_CAPTURE] = tx_mask;
|
||||
mcasp->tdm_mask[SNDRV_PCM_STREAM_PLAYBACK] = tx_mask;
|
||||
mcasp->tdm_mask[SNDRV_PCM_STREAM_CAPTURE] = rx_mask;
|
||||
mcasp->slot_width = slot_width;
|
||||
|
||||
return davinci_mcasp_set_ch_constraints(mcasp);
|
||||
@ -908,6 +908,14 @@ static int mcasp_i2s_hw_param(struct davinci_mcasp *mcasp, int stream,
|
||||
mcasp_set_bits(mcasp, DAVINCI_MCASP_RXFMT_REG, busel | RXORD);
|
||||
mcasp_mod_bits(mcasp, DAVINCI_MCASP_RXFMCTL_REG,
|
||||
FSRMOD(total_slots), FSRMOD(0x1FF));
|
||||
/*
|
||||
* If McASP is set to be TX/RX synchronous and the playback is
|
||||
* not running already we need to configure the TX slots in
|
||||
* order to have correct FSX on the bus
|
||||
*/
|
||||
if (mcasp_is_synchronous(mcasp) && !mcasp->channels)
|
||||
mcasp_mod_bits(mcasp, DAVINCI_MCASP_TXFMCTL_REG,
|
||||
FSXMOD(total_slots), FSXMOD(0x1FF));
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
@ -283,6 +283,8 @@ config SND_SOC_IMX_MC13783
|
||||
config SND_SOC_FSL_ASOC_CARD
|
||||
tristate "Generic ASoC Sound Card with ASRC support"
|
||||
depends on OF && I2C
|
||||
# enforce SND_SOC_FSL_ASOC_CARD=m if SND_AC97_CODEC=m:
|
||||
depends on SND_AC97_CODEC || SND_AC97_CODEC=n
|
||||
select SND_SOC_IMX_AUDMUX
|
||||
select SND_SOC_IMX_PCM_DMA
|
||||
select SND_SOC_FSL_ESAI
|
||||
|
@ -454,7 +454,8 @@ static int fsl_sai_trigger(struct snd_pcm_substream *substream, int cmd,
|
||||
* Rx sync with Tx clocks: Clear SYNC for Tx, set it for Rx.
|
||||
* Tx sync with Rx clocks: Clear SYNC for Rx, set it for Tx.
|
||||
*/
|
||||
regmap_update_bits(sai->regmap, FSL_SAI_TCR2, FSL_SAI_CR2_SYNC, 0);
|
||||
regmap_update_bits(sai->regmap, FSL_SAI_TCR2, FSL_SAI_CR2_SYNC,
|
||||
sai->synchronous[TX] ? FSL_SAI_CR2_SYNC : 0);
|
||||
regmap_update_bits(sai->regmap, FSL_SAI_RCR2, FSL_SAI_CR2_SYNC,
|
||||
sai->synchronous[RX] ? FSL_SAI_CR2_SYNC : 0);
|
||||
|
||||
|
@ -144,7 +144,7 @@ config SND_SOC_INTEL_SKYLAKE
|
||||
|
||||
config SND_SOC_INTEL_SKL_RT286_MACH
|
||||
tristate "ASoC Audio driver for SKL with RT286 I2S mode"
|
||||
depends on X86 && ACPI
|
||||
depends on X86 && ACPI && I2C
|
||||
select SND_SOC_INTEL_SST
|
||||
select SND_SOC_INTEL_SKYLAKE
|
||||
select SND_SOC_RT286
|
||||
|
@ -1240,6 +1240,7 @@ int skl_tplg_init(struct snd_soc_platform *platform, struct hdac_ext_bus *ebus)
|
||||
*/
|
||||
ret = snd_soc_tplg_component_load(&platform->component,
|
||||
&skl_tplg_ops, fw, 0);
|
||||
release_firmware(fw);
|
||||
if (ret < 0) {
|
||||
dev_err(bus->dev, "tplg component load failed%d\n", ret);
|
||||
return -EINVAL;
|
||||
|
Loading…
Reference in New Issue
Block a user