ASoC: Intel: Skylake: Remove BE copier blob memcpy
authorJeeja KP <jeeja.kp@intel.com>
Thu, 22 Oct 2015 17:52:35 +0000 (23:22 +0530)
committerMark Brown <broonie@kernel.org>
Fri, 23 Oct 2015 16:31:34 +0000 (01:31 +0900)
The BE copier private data allowed endpoint configuration blobs, now these
are queried from BIOS, we don't need to copy the blob, but only capability.

Removing the blob from private data will not allocate memory for module
specific config in which case memcpy will fail. Fix is to assign the ptr
queried from the NHLT table for the endpoint configuration.

Signed-off-by: Jeeja KP <jeeja.kp@intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/skylake/skl-topology.c

index a5d8420ce69a484eec9df5ca79f287a1e28e336e..7c920857007e10ce005302fb4d06fd794516ca30 100644 (file)
@@ -926,7 +926,7 @@ static int skl_tplg_be_fill_pipe_params(struct snd_soc_dai *dai,
                                        params->s_freq, params->stream);
        if (cfg) {
                mconfig->formats_config.caps_size = cfg->size;
-               memcpy(mconfig->formats_config.caps, &cfg->caps, cfg->size);
+               mconfig->formats_config.caps = (u32 *) &cfg->caps;
        } else {
                dev_err(dai->dev, "Blob NULL for id %x type %d dirn %d\n",
                                        mconfig->vbus_id, link_type,