mirror of https://github.com/thesofproject/sof.git
ipc4: invalidate cache for set large config message
Cache issue can occur when several set large config messages were sent one after another Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
This commit is contained in:
parent
2ad89eb0d3
commit
f8c89ed211
|
@ -981,7 +981,6 @@ static int copier_set_sink_fmt(struct comp_dev *dev, void *data,
|
|||
struct copier_data *cd = comp_get_drvdata(dev);
|
||||
|
||||
sink_fmt = (struct ipc4_copier_config_set_sink_format *)data;
|
||||
dcache_invalidate_region((__sparse_force void __sparse_cache *)sink_fmt, sizeof(*sink_fmt));
|
||||
|
||||
if (max_data_size < sizeof(*sink_fmt)) {
|
||||
comp_err(dev, "error: max_data_size %d should be bigger than %d", max_data_size,
|
||||
|
@ -1027,7 +1026,6 @@ static int set_attenuation(struct comp_dev *dev, uint32_t data_offset, char *dat
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
dcache_invalidate_region((__sparse_force void __sparse_cache *)data, sizeof(uint32_t));
|
||||
attenuation = *(uint32_t *)data;
|
||||
if (attenuation > 31) {
|
||||
comp_err(dev, "attenuation %d is out of range", attenuation);
|
||||
|
|
|
@ -1377,8 +1377,6 @@ static int mixin_set_large_config(struct comp_dev *dev, uint32_t param_id, bool
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
dcache_invalidate_region((__sparse_force void __sparse_cache *)data, data_offset_or_size);
|
||||
|
||||
cfg = (struct ipc4_mixer_mode_config *)data;
|
||||
|
||||
if (cfg->mixer_mode_config_count < 1 || cfg->mixer_mode_config_count > MIXIN_MAX_SINKS) {
|
||||
|
|
|
@ -753,6 +753,7 @@ static int ipc4_set_large_config_module_instance(struct ipc4_message_request *ip
|
|||
int ret;
|
||||
|
||||
memcpy_s(&config, sizeof(config), ipc4, sizeof(config));
|
||||
dcache_invalidate_region((__sparse_force void __sparse_cache *)MAILBOX_HOSTBOX_BASE, config.extension.r.data_off_size);
|
||||
tr_dbg(&ipc_tr, "ipc4_set_large_config_module_instance %x : %x",
|
||||
(uint32_t)config.primary.r.module_id, (uint32_t)config.primary.r.instance_id);
|
||||
|
||||
|
|
Loading…
Reference in New Issue