Lines Matching refs:ipc4_msg
288 struct sof_ipc4_msg *ipc4_msg = msg->msg_data; in ipc4_wait_tx_done() local
297 ipc4_msg->primary, ipc4_msg->extension); in ipc4_wait_tx_done()
304 ipc4_msg->primary, ipc4_msg->extension); in ipc4_wait_tx_done()
322 sof_ipc4_log_header(sdev->dev, "ipc tx done ", ipc4_msg, true); in ipc4_wait_tx_done()
338 struct sof_ipc4_msg *ipc4_msg = msg_data; in ipc4_tx_msg_unlocked() local
349 __func__, ipc4_msg->primary, ipc4_msg->extension, ret); in ipc4_tx_msg_unlocked()
396 struct sof_ipc4_msg *ipc4_msg = data; in sof_ipc4_set_get_data() local
407 if ((ipc4_msg->primary & SOF_IPC4_MSG_TARGET_MASK) != in sof_ipc4_set_get_data()
411 ipc4_msg->primary &= ~SOF_IPC4_MSG_TYPE_MASK; in sof_ipc4_set_get_data()
412 tx.primary = ipc4_msg->primary; in sof_ipc4_set_get_data()
413 tx.extension = ipc4_msg->extension; in sof_ipc4_set_get_data()
447 tx.data_ptr = ipc4_msg->data_ptr + offset; in sof_ipc4_set_get_data()
455 rx.data_ptr = ipc4_msg->data_ptr + offset; in sof_ipc4_set_get_data()
496 ipc4_msg->data_size = offset; in sof_ipc4_set_get_data()
498 sof_ipc4_dump_payload(sdev, ipc4_msg->data_ptr, ipc4_msg->data_size); in sof_ipc4_set_get_data()
508 struct sof_ipc4_msg *ipc4_msg; in sof_ipc4_init_msg_memory() local
520 ipc4_msg = msg->reply_data; in sof_ipc4_init_msg_memory()
521 ipc4_msg->data_ptr = msg->reply_data + sizeof(struct sof_ipc4_msg); in sof_ipc4_init_msg_memory()
526 static int ipc4_fw_ready(struct snd_sof_dev *sdev, struct sof_ipc4_msg *ipc4_msg) in ipc4_fw_ready() argument
563 struct sof_ipc4_msg *ipc4_msg = sdev->ipc->msg.rx_data; in sof_ipc4_rx_msg() local
567 if (!ipc4_msg || !SOF_IPC4_MSG_IS_NOTIFICATION(ipc4_msg->primary)) in sof_ipc4_rx_msg()
570 ipc4_msg->data_ptr = NULL; in sof_ipc4_rx_msg()
571 ipc4_msg->data_size = 0; in sof_ipc4_rx_msg()
573 sof_ipc4_log_header(sdev->dev, "ipc rx ", ipc4_msg, false); in sof_ipc4_rx_msg()
575 switch (SOF_IPC4_NOTIFICATION_TYPE_GET(ipc4_msg->primary)) { in sof_ipc4_rx_msg()
579 err = ipc4_fw_ready(sdev, ipc4_msg); in sof_ipc4_rx_msg()
594 sof_ipc4_mtrace_update_pos(sdev, SOF_IPC4_LOG_CORE_GET(ipc4_msg->primary)); in sof_ipc4_rx_msg()
598 ipc4_msg->primary, ipc4_msg->extension); in sof_ipc4_rx_msg()
603 ipc4_msg->data_ptr = kmalloc(data_size, GFP_KERNEL); in sof_ipc4_rx_msg()
604 if (!ipc4_msg->data_ptr) in sof_ipc4_rx_msg()
607 ipc4_msg->data_size = data_size; in sof_ipc4_rx_msg()
608 snd_sof_ipc_msg_data(sdev, NULL, ipc4_msg->data_ptr, ipc4_msg->data_size); in sof_ipc4_rx_msg()
611 sof_ipc4_log_header(sdev->dev, "ipc rx done ", ipc4_msg, true); in sof_ipc4_rx_msg()
614 kfree(ipc4_msg->data_ptr); in sof_ipc4_rx_msg()
615 ipc4_msg->data_ptr = NULL; in sof_ipc4_rx_msg()
616 ipc4_msg->data_size = 0; in sof_ipc4_rx_msg()