Merge remote-tracking branch 'asoc/fix/intel' into asoc-linus

This commit is contained in:
Mark Brown 2015-04-12 19:48:20 +01:00
commit a55ede1661
4 changed files with 7 additions and 1 deletions

View File

@ -142,6 +142,7 @@ static int sst_acpi_probe(struct platform_device *pdev)
sst_acpi->desc = desc;
sst_acpi->mach = mach;
sst_pdata->resindex_dma_base = desc->resindex_dma_base;
if (desc->resindex_dma_base >= 0) {
sst_pdata->dma_engine = desc->dma_engine;
sst_pdata->dma_base = desc->resindex_dma_base;

View File

@ -206,6 +206,7 @@ struct sst_pdata {
const struct firmware *fw;
/* DMA */
int resindex_dma_base; /* other fields invalid if equals to -1 */
u32 dma_base;
u32 dma_size;
int dma_engine;

View File

@ -271,6 +271,10 @@ int sst_dma_new(struct sst_dsp *sst)
const char *dma_dev_name;
int ret = 0;
if (sst->pdata->resindex_dma_base == -1)
/* DMA is not used, return and squelsh error messages */
return 0;
/* configure the correct platform data for whatever DMA engine
* is attached to the ADSP IP. */
switch (sst->pdata->dma_engine) {

View File

@ -309,7 +309,7 @@ static int sst_acpi_probe(struct platform_device *pdev)
ctx->shim_regs64 = devm_kzalloc(ctx->dev, sizeof(*ctx->shim_regs64),
GFP_KERNEL);
if (!ctx->shim_regs64) {
return -ENOMEM;
ret = -ENOMEM;
goto do_sst_cleanup;
}