- 23 8月, 2017 1 次提交
-
-
由 Subhransu S. Prusty 提交于
For some dsp init error path, irq and few more resources are not freed. This results in oops. So, fix it by freeing up the resources on ipc_init failure. Signed-off-by: NSubhransu S. Prusty <subhransu.s.prusty@intel.com> Acked-By: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 16 8月, 2017 1 次提交
-
-
由 Bhumika Goyal 提交于
Make these const as they are only used during a copy operation. Done using Coccinelle. Signed-off-by: NBhumika Goyal <bhumirks@gmail.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 03 8月, 2017 2 次提交
-
-
由 Guneshwor Singh 提交于
Move ipc_init() from helper function to respective platform's dsp_init() as ipc_init() per platform can be different. Signed-off-by: NGuneshwor Singh <guneshwor.o.singh@intel.com> Acked-By: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Dharageswari R 提交于
Number of dsp cores may differ for different platforms hence adding it in dsp ops. Signed-off-by: NDharageswari R <dharageswari.r@intel.com> Signed-off-by: NGuneshwor Singh <guneshwor.o.singh@intel.com> Acked-By: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 30 6月, 2017 1 次提交
-
-
由 Guneshwor Singh 提交于
SRAM address and memory window size differ for different platforms. So add members to sst_addr structure and initialize them in the respective dsp_init(). Signed-off-by: NGuneshwor Singh <guneshwor.o.singh@intel.com> Acked-By: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 26 4月, 2017 4 次提交
-
-
由 Sodhi, VunnyX 提交于
Kabylake platform expects modules in a library manifest. After loading base firmware library manifest is loaded using load library IPC. This is followed by module load using load multiple modules IPC. Signed-off-by: NSodhi, VunnyX <vunnyx.sodhi@intel.com> Signed-off-by: NG Kranthi <gudishax.kranthikumar@intel.com> Signed-off-by: NSubhransu S. Prusty <subhransu.s.prusty@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Subhransu S. Prusty 提交于
For audio kabylake is same as skylake except the module load approach. This patch registers different dsp_fw_ops for kabylake and next patch adds the module load support for kabylake. Signed-off-by: NSubhransu S. Prusty <subhransu.s.prusty@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 G Kranthi 提交于
Kabylake also uses code loader dma for module load and library load. skl_transfer_module can be reused. Modify the arguments to include library index to be passed to lib load ipc and module/lib check to use correct ipc for lib/module load. Signed-off-by: NG Kranthi <gudishax.kranthikumar@intel.com> Signed-off-by: NSubhransu S. Prusty <subhransu.s.prusty@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 G Kranthi 提交于
Some skl sst context are not dependent of platform and initializing them independently for each platform can lead to errors. So optimize by moving them to a helper function and platform specific init code can call this. Signed-off-by: NG Kranthi <gudishax.kranthikumar@intel.com> Signed-off-by: NSubhransu S. Prusty <subhransu.s.prusty@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 29 3月, 2017 1 次提交
-
-
由 Vinod Koul 提交于
A module may have multiple instances in DSP, so unload only when usage count is zero. Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 16 3月, 2017 1 次提交
-
-
由 Jeeja KP 提交于
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: NJeeja KP <jeeja.kp@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 07 1月, 2017 1 次提交
-
-
由 Jeeja KP 提交于
Saved firmware ctx was not never released, so release Firmware ctx in cleanup routine. Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Acked-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 25 9月, 2016 1 次提交
-
-
由 Colin Ian King 提交于
Trival fix, some dev_* messages are missing a \n, so add it. Signed-off-by: NColin Ian King <colin.king@canonical.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 08 8月, 2016 3 次提交
-
-
由 Vinod Koul 提交于
The firmware manifest contains UUIDs which needs to be passed only once. So use the newly introduced is_first_boot flag to distinguish and parse these only once. Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Senthilnathan Veppur 提交于
For additional library parsing, we need to pass firmware to be loaded and not use the pointer in context. Also, Library module IDs are combination of library index and module ID in manifest. So add the additional arguments of firmware and library offset to snd_skl_parse_uuids(). Signed-off-by: NSenthilnathan Veppur <senthilnathanx.veppur@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Vinod Koul 提交于
The DSP instance creation also loads the firmware on DSPs. For library load the firmware names come from topology so can't be loaded at object creation. So split the firmware load and object creation. FW load is now called after topology init in platform probe. Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 22 6月, 2016 2 次提交
-
-
由 Jayachandran B 提交于
Add multicore DSP support in Skylake DSP operations. Signed-off-by: NJayachandran B <jayachandran.b@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Jayachandran B 提交于
The DSP can have more than one cores. In that case the secondary core has to be managed by the driver. This patch adds the changes to driver infrastructure to support multiple core. A new object skl_dsp_cores is introduced to support multiple core. Helpers skl_dsp_get_core() skl_dsp_put_core() help to managed the cores. Many of the power_up/down and DSP APIs take additional argument of core_id. The primary core, 0 is always powered up first and then on demand second core. Signed-off-by: NJayachandran B <jayachandran.b@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 15 6月, 2016 1 次提交
-
-
由 Vinod Koul 提交于
While clearing loaded module count, we should check first to see if module list is NULL or not. Some distributions can ship with no modules and thus list can be empty. Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 14 6月, 2016 1 次提交
-
-
由 Jayachandran B 提交于
Broxton DSP needs retains code loaded during runtime_pm cycles. But it looses that on suspend cycle, so on resume we need to download the firmware again. This is done by adding a new flag and based on flag status, we download the firmware. Signed-off-by: NJayachandran B <jayachandran.b@intel.com> Signed-off-by: NSenthilnathan Veppur <senthilnathanx.veppur@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 07 6月, 2016 1 次提交
-
-
由 Dharageswari R 提交于
On suspend firmware is re-initialized so resources are reset inside firmware. Driver should also clear the firmware counters at this time. Signed-off-by: NDharageswari R <dharageswari.r@intel.com> Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 31 5月, 2016 2 次提交
-
-
由 Vinod Koul 提交于
SKylake uses different offset in manifest for parsing module table. So invoke common parsing utility from skylake using skylake offset. Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Vinod Koul 提交于
Future firmware updates may comes with extended manifest so invoke skl_dsp_strip_extended_manifest() to check and strip Signed-off-by: NShreyas NC <shreyas.nc@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 02 5月, 2016 1 次提交
-
-
由 Dharageswari.R 提交于
If request firmware fails at init, the code loader DMA allocation can be NULL, so check for boot complete before freeing up these resources Signed-off-by: NDharageswari R <dharageswari.r@intel.com> Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 22 4月, 2016 1 次提交
-
-
由 Shreyas NC 提交于
To avoid complex string manipulations with UUID in canonical form, use UUID in binary format. Signed-off-by: NShreyas NC <shreyas.nc@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 12 3月, 2016 1 次提交
-
-
由 Vinod Koul 提交于
The module ID defines are common to other platforms so can be reused if moved to a common driver header so move it Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 17 12月, 2015 1 次提交
-
-
由 Dan Carpenter 提交于
These need to be signed because they hold negative error codes. Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Acked-by Vinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 09 12月, 2015 1 次提交
-
-
由 Dharageswari R 提交于
A module is loaded when the path consisting the module is opened. The module binary(ies) is loaded from file system and cached in kernel memory for future use. This is downloaded to DSP using DMA and invoking Load module IPCs This patch adds support for load/unload module IPCs, DMAing modules and manging the modules Signed-off-by: NDharageswari R <dharageswari.r@intel.com> Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 19 11月, 2015 2 次提交
-
-
由 Jeeja KP 提交于
Sometimes firmware D3 IPC fails causing firmware to be in invalid state. To recover we need to reset the DSP and then shut it down, so don't return on error and continue resetting to recover. On D0, firmware will be redownloaded and DSP will be back in clean state Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Jeeja KP 提交于
During firmware download, dma buffers are allocated in prepare and never freed on clean up. This patch frees the allocated dma buffer in cldma controller clean up. Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 16 11月, 2015 2 次提交
-
-
由 Vinod Koul 提交于
The firmware name is hard coded which doesnt allow to load different platforms for various platforms so get this name from available machine table and pass it to dsp context for loading Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Subhransu S. Prusty 提交于
This patch fixes the below warning reported by Dan by invoking skl_sst_dsp_cleanup() in cleanup path on error and not bailing out sound/soc/intel/skylake/skl-sst.c:270 skl_sst_dsp_init() info: ignoring unreachable code. Reported-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NSubhransu S. Prusty <subhransu.s.prusty@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 09 10月, 2015 1 次提交
-
-
由 Jeeja KP 提交于
On runtime pm resume, we need to download the firmware, also on suspend we need to ensure all the interrupts from controller and DSP are disabled. Also since we download the firmware on resume, we don't need to do so on init, so remove that bit Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 17 7月, 2015 1 次提交
-
-
由 Subhransu S. Prusty 提交于
This adds the dsp and ipc initialization for the Skylake platform. It also requests firmware and uses code loader dma to load it. Signed-off-by: NSubhransu S. Prusty <subhransu.s.prusty@intel.com> Signed-off-by: NJeeja KP <jeeja.kp@intel.com> Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-