android_kernel_samsung_sm8650/sound/soc/intel/skylake
Jeeja KP b7d0254c51 ASoC: Intel: Skylake: Fix module load when module size > DMA buffer size
When module size > DMA buffer size, driver copies first chunk and waits
for the BDL complete interrupt. BDL complete interrupt never occurs and
wait time expires as module load IPC is not send to start the DMA from
DSP.

To fix the above issue need to follow the below steps:
1. After copying the first chunk, send the module load IPC to start the
DMA.
2. Wait for the BDL interrupt. Once interrupt is received, copy the
next chunk.
3. Continue step 2 till all bytes are copied.
4. When all the bytes are copied (bytes_left = 0), wait for module load
IPC response
5. Handled module load IPC response messages, check the load module IPC
response and wake up the thread to complete module load.

Signed-off-by: Jeeja KP <jeeja.kp@intel.com>
Acked-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2017-03-15 17:28:18 +00:00
..
bxt-sst.c ASoC: Intel: bxtn: Reload the firmware in case of D3 failure 2017-03-15 17:28:04 +00:00
Makefile ASoC: Intel: Skylake: Add strip extended manifest utility 2016-05-30 18:24:41 +01:00
skl-messages.c ASoC: Intel: Skylake: Remove get dsp_ops in cleanup routine 2017-03-15 17:28:15 +00:00
skl-nhlt.c ASoC: Intel: Skylake: Check device type to get endpoint configuration 2017-02-16 18:58:09 +00:00
skl-nhlt.h ASoC: Intel: Skylake: Add api to retrieve dmic array info from nhlt 2016-05-30 18:16:44 +01:00
skl-pcm.c ASoC: Intel: Skylake: Disable notifications at boot after DSP FW init 2017-03-15 17:28:11 +00:00
skl-sst-cldma.c ASoC: Intel: Skylake: Fix module load when module size > DMA buffer size 2017-03-15 17:28:18 +00:00
skl-sst-cldma.h ASoC: Intel: Skylake: Fix module load when module size > DMA buffer size 2017-03-15 17:28:18 +00:00
skl-sst-dsp.c ASoC: Intel: bxtn: Update DSP core state in D0 2017-03-15 17:28:01 +00:00
skl-sst-dsp.h ASoC: Intel: Skylake: Fix module load when module size > DMA buffer size 2017-03-15 17:28:18 +00:00
skl-sst-ipc.c ASoC: Intel: Skylake: Fix module load when module size > DMA buffer size 2017-03-15 17:28:18 +00:00
skl-sst-ipc.h ASoC: Intel: Skylake: Fix module load when module size > DMA buffer size 2017-03-15 17:28:18 +00:00
skl-sst-utils.c ASoC: Intel: Skylake: Fix a shift wrapping bug 2016-10-26 11:13:55 +01:00
skl-sst.c ASoC: Intel: Skylake: Fix module load when module size > DMA buffer size 2017-03-15 17:28:18 +00:00
skl-topology.c ASoC: Intel: Skylake: Fix not to stop src pipe in pre pmd event handler 2017-03-15 17:27:54 +00:00
skl-topology.h ASoC: Intel: Skylake: Clean up manifest info 2017-01-06 18:14:31 +00:00
skl-tplg-interface.h ASoC: Intel: Skylake: Clean up manifest info 2017-01-06 18:14:31 +00:00
skl.c ASoC: Intel: Skylake: Add Geminlake IDs 2017-02-16 18:58:09 +00:00
skl.h ASoC: Intel: Skylake: Check device type to get endpoint configuration 2017-02-16 18:58:09 +00:00