Lines Matching refs:gain
715 struct sof_ipc4_gain *gain;
718 gain = kzalloc(sizeof(*gain), GFP_KERNEL);
719 if (!gain)
722 swidget->private = gain;
724 gain->data.params.channels = SOF_IPC4_GAIN_ALL_CHANNELS_MASK;
725 gain->data.params.init_val = SOF_IPC4_VOL_ZERO_DB;
727 ret = sof_ipc4_get_audio_fmt(scomp, swidget, &gain->available_fmt, &gain->data.base_config);
731 ret = sof_update_ipc_object(scomp, &gain->data.params, SOF_GAIN_TOKENS,
732 swidget->tuples, swidget->num_tuples, sizeof(gain->data), 1);
734 dev_err(scomp->dev, "Parsing gain tokens failed\n");
739 "pga widget %s: ramp type: %d, ramp duration %d, initial gain value: %#x\n",
740 swidget->widget->name, gain->data.params.curve_type,
741 gain->data.params.curve_duration_l, gain->data.params.init_val);
743 ret = sof_ipc4_widget_setup_msg(swidget, &gain->msg);
751 sof_ipc4_free_audio_fmt(&gain->available_fmt);
752 kfree(gain);
759 struct sof_ipc4_gain *gain = swidget->private;
761 if (!gain)
764 sof_ipc4_free_audio_fmt(&gain->available_fmt);
1819 struct sof_ipc4_gain *gain = swidget->private;
1820 struct sof_ipc4_available_audio_format *available_fmt = &gain->available_fmt;
1825 ret = sof_ipc4_init_input_audio_fmt(sdev, swidget, &gain->data.base_config,
1835 ret = sof_ipc4_init_output_audio_fmt(sdev, &gain->data.base_config, available_fmt,
1844 sof_ipc4_update_resource_usage(sdev, swidget, &gain->data.base_config);
2278 struct sof_ipc4_gain *gain = swidget->private;
2280 ipc_size = sizeof(gain->data);
2281 ipc_data = &gain->data;
2283 msg = &gain->msg;