linux/sound/soc
Daniel Mack 737e370a57
ASoC: pxa-ssp: allow more flexible setup order
The pxa-ssp driver currently assumes that .set_fmt() is called before
.set_clkdiv(), .set_pll() etc.

Commit a8bd0ee558 ("ASoC: raumfeld: Use static DAI format setup") broke
support for Raumfeld hardware (and possible other PXA based ones) because
it effectively changed the order of these calls. Also, as the call to
.set_fmt() is now done at probe time, the port clock is not yet enabled.

To fix this, strip all hardware register access code from the .set_fmt()
callback and memorize the desired value, so we can use it from the
.hw_params() callback. Also make the .set_fmt() callback less destructive
by reading all registers that it writes to in the beginning and only
masking out the bits that it possibly fiddles with.

Signed-off-by: Daniel Mack <daniel@zonque.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
2018-05-22 11:57:16 +01:00
..
adi
amd ASoC: amd: dma driver changes for bt i2s instance 2018-05-21 16:19:45 +01:00
atmel ASoC: atmel: simplify getting .drvdata 2018-04-19 15:40:30 +01:00
au1x ASoC: au1x: dma: replace platform to component 2018-02-12 11:45:36 +00:00
bcm ASoC: Remove depends on HAS_DMA in case of platform dependency 2018-04-18 11:17:09 +01:00
cirrus ASoC: cirrus: i2s: IRQ-based stream watchdog 2018-05-11 11:27:33 +09:00
codecs ASoC: pcm512x: Add ACPI support 2018-05-18 17:46:03 +01:00
davinci ASoC: davinci-mcasp: Only disable inactive serializer 2018-05-17 15:46:22 +09:00
dwc Merge remote-tracking branches 'asoc/topic/dwc', 'asoc/topic/es7134', 'asoc/topic/es8316', 'asoc/topic/es8328' and 'asoc/topic/fsl' into asoc-next 2018-03-28 10:29:36 +08:00
fsl ASoC: fsl_spdif: Switch to SPDX identifier 2018-05-03 10:29:14 +09:00
generic
hisilicon ASoC: hisilicon: fix spelling mistake: "uknown" -> "unknown" 2018-05-13 10:08:11 +09:00
img ASoC: pistachio: replace codec to component 2018-02-12 11:08:03 +00:00
intel ASoC: intel: skylake: fix spelling mistake: "Homogenous" -> "Homogeneous" 2018-05-21 11:54:54 +01:00
jz4740
kirkwood ASoC: Remove depends on HAS_DMA in case of platform dependency 2018-04-18 11:17:09 +01:00
mediatek ASoC: mediatek: add the .probe() callback in mt2701_afe_pcm_dai_component 2018-05-02 05:52:32 +09:00
mxs Merge remote-tracking branches 'asoc/topic/mtk', 'asoc/topic/mxs', 'asoc/topic/mxs-sgtl5000', 'asoc/topic/nau8540' and 'asoc/topic/nau8824' into asoc-next 2018-01-26 15:27:22 +00:00
nuc900 ASoC: nuc900-pcm: replace platform to component 2018-02-12 11:45:37 +00:00
omap ASoC: omap: sdma-pcm: Correction for the include files 2018-05-17 13:28:58 +09:00
pxa ASoC: pxa-ssp: allow more flexible setup order 2018-05-22 11:57:16 +01:00
qcom ASoC: qcom: apq8096: Add db820c machine driver 2018-05-21 16:43:12 +01:00
rockchip Merge remote-tracking branches 'asoc/topic/rt5645', 'asoc/topic/rt5651', 'asoc/topic/rt5659' and 'asoc/topic/rt5660' into asoc-next 2018-03-28 10:30:29 +08:00
samsung Merge remote-tracking branches 'asoc/topic/wm8991', 'asoc/topic/wm8994', 'asoc/topic/wm8995', 'asoc/topic/wm8996' and 'asoc/topic/wm9081' into asoc-next 2018-03-28 10:31:54 +08:00
sh ASoC: sh: Update menu title and platform dependency 2018-04-20 17:52:49 +01:00
sirf ASoC: sirf: remove duplicated bit-wise or of USP_RXFIFO_THD_INT 2018-02-26 10:19:20 +00:00
spear
sti
stm ASoC: stm32: sai: Add support of S/PDIF playback 2018-02-26 11:19:04 +00:00
sunxi Merge remote-tracking branches 'asoc/topic/sta529', 'asoc/topic/sti-sas', 'asoc/topic/stm32', 'asoc/topic/sun4i' and 'asoc/topic/sun8i' into asoc-next 2018-03-28 10:30:49 +08:00
tegra ASoC: wm8903: replace codec to component 2018-02-12 09:41:37 +00:00
txx9 ASoC: txx9aclc: replace platform to component 2018-02-12 11:45:38 +00:00
uniphier ASoC: uniphier: add digital output volume for UniPhier sound system 2018-05-09 18:40:39 +09:00
ux500 ASoC: ux500: add MODULE_LICENSE tag 2018-01-10 16:42:10 +00:00
xtensa ASoC: xtfpga-i2s: replace platform to component 2018-02-12 11:45:32 +00:00
zte ASoC: zte: remove duplicate includes 2018-05-17 15:46:22 +09:00
Kconfig ASoC: remove blackfin drivers 2018-03-14 09:35:29 -07:00
Makefile ASoC: remove codec reg_cache 2018-05-09 18:38:23 +09:00
soc-ac97.c ASoC: ac97: replace codec to component 2018-02-12 09:37:29 +00:00
soc-acpi.c ASoC: Intel - Convert to use acpi_dev_get_first_match_name() 2018-01-12 21:20:29 +00:00
soc-compress.c ASoC: compress: Fix up some trivial formatting issues 2018-05-11 12:24:31 +09:00
soc-core.c ASoC: soc-core: remove legacy_dai_naming from snd_soc_register_dais() 2018-05-09 18:40:09 +09:00
soc-dapm.c Merge remote-tracking branches 'asoc/topic/sirf-audio', 'asoc/topic/sn95031', 'asoc/topic/soc-dapm', 'asoc/topic/spdif_receiver' and 'asoc/topic/spdif_transmitter' into asoc-next 2018-03-28 10:30:40 +08:00
soc-devres.c ASoC: Remove platform code now everything is componentised 2018-04-26 12:24:43 +01:00
soc-generic-dmaengine-pcm.c ASoC: Revert "ASoC: soc-generic-dmaengine-pcm: Fix error handling" 2018-02-26 19:59:31 +00:00
soc-io.c ASoC: remove Codec related code 2018-05-09 18:39:07 +09:00
soc-jack.c ASoC: remove Codec related code 2018-05-09 18:39:07 +09:00
soc-ops.c ASoC: change mask in snd_soc_get/put_volsw_sx to unsigned int 2018-01-03 12:32:04 +00:00
soc-pcm.c ASoC: core: fix return code in error message 2018-05-21 11:55:03 +01:00
soc-topology.c Merge branch 'asoc-4.17' into asoc-4.18 for compress dependencies 2018-04-26 12:24:28 +01:00
soc-utils.c ASoC: soc-utils: replace codec to component 2018-02-12 11:46:14 +00:00