linux/sound/soc/fsl
Zidan Wang 3e3f8bd569 ASoC: fsl_sai: fix no frame clk in master mode
After several open/close sai test with ctrl+c, there will be
I/O error. The SAI can't work anymore, can't recover. There
will be no frame clock. With adding the software reset in
trigger stop, the issue can be fixed.

This is a hardware bug/errata and reset is the only option.

According to the reference manual, the software reset doesn't
reset any control register but only internal hardware logics
such as bit clock generator, status flags, and FIFO pointers.
(Our purpose is just to reset the clock generator while the
software reset is the only way to do that.)

Since slave mode doesn't use the clock generator, only apply
the reset procedure to the master mode.

For asynchronous mode, TX will not be reset when RX is still
running. In this case, i can't reproduce this issue.

Signed-off-by: Zidan Wang <zidan.wang@freescale.com>
Acked-by: Nicolin Chen <nicoleotsuka@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2015-12-18 15:58:23 +00:00
..
efika-audio-fabric.c
eukrea-tlv320.c ASoC: fsl: fix typos for sound/soc/fsl/* 2015-08-12 13:36:58 +01:00
fsl_asrc_dma.c ASoC: fsl_sarc_dma: Check pair before using it 2014-08-04 15:48:41 +01:00
fsl_asrc.c ASoC: fsl: fsl_asrc: Check for clk_prepare_enable() error 2015-07-07 13:31:52 +01:00
fsl_asrc.h ASoC: fsl_asrc: Use dev_name() for registering the irq 2014-12-30 11:27:07 +00:00
fsl_dma.c ASoC: fsl: fsl_dma: Use true/false for boolean init 2015-05-11 16:13:36 +01:00
fsl_dma.h
fsl_esai.c ASoC: fsl: Use #ifdef instead of #if for CONFIG_PM_SLEEP 2015-10-26 11:08:00 +09:00
fsl_esai.h ASoC: fsl_esai: Fix incorrect xDC field width of xCCR registers 2014-12-30 11:29:19 +00:00
fsl_sai.c ASoC: fsl_sai: fix no frame clk in master mode 2015-12-18 15:58:23 +00:00
fsl_sai.h Merge remote-tracking branches 'asoc/topic/fsi', 'asoc/topic/fsl', 'asoc/topic/fsl-asrc', 'asoc/topic/fsl-card' and 'asoc/topic/fsl-sai' into asoc-next 2015-08-30 15:53:56 +01:00
fsl_spdif.c ASoC: fsl_spdif: Add driver suspend and resume to support MEGA Fast 2015-10-05 17:26:17 +01:00
fsl_spdif.h ASoC: fsl_spdif: Add support for output sample rates 96kHz and 192kHz 2014-06-17 15:36:54 +01:00
fsl_ssi_dbg.c ASoC: fsl-ssi: Move debugging to seperate file 2014-05-20 23:02:26 +01:00
fsl_ssi.c Merge remote-tracking branches 'asoc/topic/dwc', 'asoc/topic/es8328', 'asoc/topic/fsl' and 'asoc/topic/fsl-card' into asoc-next 2015-10-26 11:16:03 +09:00
fsl_ssi.h ASoC: fsl-ssi: Use regmap 2014-06-01 11:55:08 +01:00
fsl_utils.c ASoC: fsl: Remove fsl_asoc_xlate_tdm_slot_mask() 2015-01-14 19:04:56 +00:00
fsl_utils.h ASoC: fsl: Remove fsl_asoc_xlate_tdm_slot_mask() 2015-01-14 19:04:56 +00:00
fsl-asoc-card.c Merge remote-tracking branches 'asoc/topic/dwc', 'asoc/topic/es8328', 'asoc/topic/fsl' and 'asoc/topic/fsl-card' into asoc-next 2015-10-26 11:16:03 +09:00
imx-audmux.c ASoC: fsl: Constify platform_device_id 2015-05-01 17:51:43 +01:00
imx-audmux.h
imx-es8328.c ASoC: imx-es8328: Register jacks at the card level 2015-03-04 17:09:52 +00:00
imx-mc13783.c ASoC: fsl: imx-mc13783: Simplify trivial if-return sequence 2015-05-11 16:13:45 +01:00
imx-pcm-dma.c ASoC: fsl: Add dedicated DMA buffer size for each cpu dai 2015-07-07 13:16:12 +01:00
imx-pcm-fiq.c ASoC: fsl: imx-pcm-fiq: Remove unneeded 'out' label 2014-02-24 14:41:15 +09:00
imx-pcm.h ASoC: fsl: Add dedicated DMA buffer size for each cpu dai 2015-07-07 13:16:12 +01:00
imx-sgtl5000.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
imx-spdif.c ASoC: imx-spdif: add snd_soc_pm_ops for spdif machine driver 2015-10-05 17:25:45 +01:00
imx-ssi.c ASoC: imx-ssi: Fix DAI hardware signal inversions 2015-09-29 17:28:33 +01:00
imx-ssi.h ASoC: fsl: imx-ssi: omit ssi counter to avoid harm in unbalanced situation 2013-12-02 11:57:02 +00:00
imx-wm8962.c ASoC: imx-wm8962: Add a missing error check 2015-06-10 18:33:11 +01:00
Kconfig ASoC: fsl: Add the audio interface acronyms in Kconfig text 2015-04-10 18:30:53 +01:00
Makefile ASoC: fsl: add imx-es8328 machine driver 2014-08-16 17:18:07 -05:00
mpc5200_dma.c ASoC: mpc5200_dma: Don't overwrite ac97 device private_data 2014-11-18 15:26:05 +00:00
mpc5200_dma.h
mpc5200_psc_ac97.c ASoC: fsl: constify of_device_id array 2015-03-22 18:02:56 +00:00
mpc5200_psc_ac97.h
mpc5200_psc_i2s.c ASoC: fsl: constify of_device_id array 2015-03-22 18:02:56 +00:00
mpc8610_hpcd.c powerpc/fsl: Move fsl_guts.h out of arch/powerpc 2015-10-21 18:05:50 -05:00
mx27vis-aic32x4.c ASoC: mx27vis-aci32x4: Use static DAI format setup 2015-01-06 17:34:27 +00:00
p1022_ds.c powerpc/fsl: Move fsl_guts.h out of arch/powerpc 2015-10-21 18:05:50 -05:00
p1022_rdk.c powerpc/fsl: Move fsl_guts.h out of arch/powerpc 2015-10-21 18:05:50 -05:00
pcm030-audio-fabric.c ASoC: fsl: constify of_device_id array 2015-03-22 18:02:56 +00:00
phycore-ac97.c
wm1133-ev1.c ASoC: wm1133-ev1: Use card DAPM context to access widgets 2015-04-12 12:42:34 +01:00