Lines Matching refs:cdata
19 struct sof_ipc_ctrl_data *cdata = scontrol->ipc_control_data; in sof_ipc3_set_get_kcontrol_data() local
59 if (cdata->cmd == SOF_CTRL_CMD_BINARY) { in sof_ipc3_set_get_kcontrol_data()
67 cdata->rhdr.hdr.cmd = SOF_IPC_GLB_COMP_MSG | ipc_cmd; in sof_ipc3_set_get_kcontrol_data()
68 cdata->type = ctrl_type; in sof_ipc3_set_get_kcontrol_data()
69 cdata->comp_id = scontrol->comp_id; in sof_ipc3_set_get_kcontrol_data()
70 cdata->msg_index = 0; in sof_ipc3_set_get_kcontrol_data()
73 switch (cdata->type) { in sof_ipc3_set_get_kcontrol_data()
76 cdata->num_elems = scontrol->num_channels; in sof_ipc3_set_get_kcontrol_data()
84 cdata->num_elems = cdata->data->size; in sof_ipc3_set_get_kcontrol_data()
86 msg_bytes = cdata->data->size; in sof_ipc3_set_get_kcontrol_data()
95 cdata->rhdr.hdr.size = msg_bytes; in sof_ipc3_set_get_kcontrol_data()
96 cdata->elems_remaining = 0; in sof_ipc3_set_get_kcontrol_data()
98 ret = iops->set_get_data(sdev, cdata, cdata->rhdr.hdr.size, set); in sof_ipc3_set_get_kcontrol_data()
115 ret = iops->set_get_data(sdev, cdata, cdata->rhdr.hdr.size, set); in sof_ipc3_set_get_kcontrol_data()
129 struct sof_ipc_ctrl_data *cdata = scontrol->ipc_control_data; in sof_ipc3_refresh_control() local
140 cdata->data->magic = SOF_ABI_MAGIC; in sof_ipc3_refresh_control()
141 cdata->data->abi = SOF_ABI_VERSION; in sof_ipc3_refresh_control()
157 struct sof_ipc_ctrl_data *cdata = scontrol->ipc_control_data; in sof_ipc3_volume_get() local
165 ucontrol->value.integer.value[i] = ipc_to_mixer(cdata->chanv[i].value, in sof_ipc3_volume_get()
175 struct sof_ipc_ctrl_data *cdata = scontrol->ipc_control_data; in sof_ipc3_volume_put() local
186 change = change || (value != cdata->chanv[i].value); in sof_ipc3_volume_put()
187 cdata->chanv[i].channel = i; in sof_ipc3_volume_put()
188 cdata->chanv[i].value = value; in sof_ipc3_volume_put()
208 struct sof_ipc_ctrl_data *cdata = scontrol->ipc_control_data; in sof_ipc3_switch_get() local
216 ucontrol->value.integer.value[i] = cdata->chanv[i].value; in sof_ipc3_switch_get()
224 struct sof_ipc_ctrl_data *cdata = scontrol->ipc_control_data; in sof_ipc3_switch_put() local
234 change = change || (value != cdata->chanv[i].value); in sof_ipc3_switch_put()
235 cdata->chanv[i].channel = i; in sof_ipc3_switch_put()
236 cdata->chanv[i].value = value; in sof_ipc3_switch_put()
256 struct sof_ipc_ctrl_data *cdata = scontrol->ipc_control_data; in sof_ipc3_enum_get() local
264 ucontrol->value.enumerated.item[i] = cdata->chanv[i].value; in sof_ipc3_enum_get()
272 struct sof_ipc_ctrl_data *cdata = scontrol->ipc_control_data; in sof_ipc3_enum_put() local
282 change = change || (value != cdata->chanv[i].value); in sof_ipc3_enum_put()
283 cdata->chanv[i].channel = i; in sof_ipc3_enum_put()
284 cdata->chanv[i].value = value; in sof_ipc3_enum_put()
304 struct sof_ipc_ctrl_data *cdata = scontrol->ipc_control_data; in sof_ipc3_bytes_get() local
306 struct sof_abi_hdr *data = cdata->data; in sof_ipc3_bytes_get()
336 struct sof_ipc_ctrl_data *cdata = scontrol->ipc_control_data; in sof_ipc3_bytes_put() local
338 struct sof_abi_hdr *data = cdata->data; in sof_ipc3_bytes_put()
371 struct sof_ipc_ctrl_data *cdata = scontrol->ipc_control_data; in sof_ipc3_bytes_ext_put() local
399 if (header.numid != cdata->cmd) { in sof_ipc3_bytes_ext_put()
413 if (copy_from_user(cdata->data, tlvd->tlv, header.length)) { in sof_ipc3_bytes_ext_put()
418 if (cdata->data->magic != SOF_ABI_MAGIC) { in sof_ipc3_bytes_ext_put()
419 dev_err_ratelimited(scomp->dev, "Wrong ABI magic 0x%08x\n", cdata->data->magic); in sof_ipc3_bytes_ext_put()
423 if (SOF_ABI_VERSION_INCOMPATIBLE(SOF_ABI_VERSION, cdata->data->abi)) { in sof_ipc3_bytes_ext_put()
425 cdata->data->abi); in sof_ipc3_bytes_ext_put()
430 if (cdata->data->size > scontrol->max_size - sizeof(struct sof_abi_hdr)) { in sof_ipc3_bytes_ext_put()
446 memcpy(cdata->data, scontrol->old_ipc_control_data, scontrol->max_size); in sof_ipc3_bytes_ext_put()
458 struct sof_ipc_ctrl_data *cdata = scontrol->ipc_control_data; in _sof_ipc3_bytes_ext_get() local
473 cdata->data->magic = SOF_ABI_MAGIC; in _sof_ipc3_bytes_ext_get()
474 cdata->data->abi = SOF_ABI_VERSION; in _sof_ipc3_bytes_ext_get()
485 if (cdata->data->size > scontrol->max_size - sizeof(struct sof_abi_hdr)) { in _sof_ipc3_bytes_ext_get()
487 cdata->data->size, in _sof_ipc3_bytes_ext_get()
492 data_size = cdata->data->size + sizeof(struct sof_abi_hdr); in _sof_ipc3_bytes_ext_get()
498 header.numid = cdata->cmd; in _sof_ipc3_bytes_ext_get()
503 if (copy_to_user(tlvd->tlv, cdata->data, data_size)) in _sof_ipc3_bytes_ext_get()
523 struct sof_ipc_ctrl_data *cdata) in snd_sof_update_control() argument
531 if (cdata->cmd == SOF_CTRL_CMD_BINARY) { in snd_sof_update_control()
532 if (cdata->num_elems != local_cdata->data->size) { in snd_sof_update_control()
534 cdata->num_elems, local_cdata->data->size); in snd_sof_update_control()
539 memcpy(local_cdata->data, cdata->data, cdata->num_elems); in snd_sof_update_control()
540 } else if (cdata->num_elems != scontrol->num_channels) { in snd_sof_update_control()
542 cdata->num_elems, scontrol->num_channels); in snd_sof_update_control()
545 for (i = 0; i < cdata->num_elems; i++) in snd_sof_update_control()
546 local_cdata->chanv[i].value = cdata->chanv[i].value; in snd_sof_update_control()
552 struct sof_ipc_ctrl_data *cdata = ipc_control_message; in sof_ipc3_control_update() local
564 if (cdata->type == SOF_CTRL_TYPE_VALUE_COMP_GET || in sof_ipc3_control_update()
565 cdata->type == SOF_CTRL_TYPE_VALUE_COMP_SET) { in sof_ipc3_control_update()
572 if (swidget->comp_id == cdata->comp_id) { in sof_ipc3_control_update()
582 switch (cdata->cmd) { in sof_ipc3_control_update()
594 dev_err(sdev->dev, "Unknown cmd %u in %s\n", cdata->cmd, __func__); in sof_ipc3_control_update()
602 widget->kcontrol_news[i].index == cdata->index) { in sof_ipc3_control_update()
611 switch (cdata->cmd) { in sof_ipc3_control_update()
630 switch (cdata->type) { in sof_ipc3_control_update()
633 expected_size += cdata->num_elems * in sof_ipc3_control_update()
638 expected_size += cdata->num_elems + sizeof(struct sof_abi_hdr); in sof_ipc3_control_update()
644 if (cdata->rhdr.hdr.size != expected_size) { in sof_ipc3_control_update()
649 if (cdata->num_elems) in sof_ipc3_control_update()
654 snd_sof_update_control(scontrol, cdata); in sof_ipc3_control_update()