• Home
  • Raw
  • Download

Lines Matching refs:ipc

217 static int tx_wait_done(struct snd_sof_ipc *ipc, struct snd_sof_ipc_msg *msg,  in tx_wait_done()  argument
220 struct snd_sof_dev *sdev = ipc->sdev; in tx_wait_done()
231 snd_sof_handle_fw_exception(ipc->sdev); in tx_wait_done()
251 static int sof_ipc_tx_message_unlocked(struct snd_sof_ipc *ipc, u32 header, in sof_ipc_tx_message_unlocked() argument
255 struct snd_sof_dev *sdev = ipc->sdev; in sof_ipc_tx_message_unlocked()
259 if (ipc->disable_ipc_tx) in sof_ipc_tx_message_unlocked()
269 msg = &ipc->msg; in sof_ipc_tx_message_unlocked()
300 ret = tx_wait_done(ipc, msg, reply_data); in sof_ipc_tx_message_unlocked()
306 int sof_ipc_tx_message(struct snd_sof_ipc *ipc, u32 header, in sof_ipc_tx_message() argument
316 ret = snd_sof_dsp_set_power_state(ipc->sdev, &target_state); in sof_ipc_tx_message()
318 dev_err(ipc->sdev->dev, "error: resuming DSP %d\n", ret); in sof_ipc_tx_message()
322 return sof_ipc_tx_message_no_pm(ipc, header, msg_data, msg_bytes, in sof_ipc_tx_message()
332 int sof_ipc_tx_message_no_pm(struct snd_sof_ipc *ipc, u32 header, in sof_ipc_tx_message_no_pm() argument
343 mutex_lock(&ipc->tx_mutex); in sof_ipc_tx_message_no_pm()
345 ret = sof_ipc_tx_message_unlocked(ipc, header, msg_data, msg_bytes, in sof_ipc_tx_message_no_pm()
348 mutex_unlock(&ipc->tx_mutex); in sof_ipc_tx_message_no_pm()
357 struct snd_sof_ipc_msg *msg = &sdev->ipc->msg; in snd_sof_ipc_reply()
544 err = sof_ipc_tx_message(sdev->ipc, in snd_sof_ipc_stream_posn()
625 mutex_lock(&sdev->ipc->tx_mutex); in sof_set_get_large_ctrl_data()
639 err = sof_ipc_tx_message_unlocked(sdev->ipc, in sof_set_get_large_ctrl_data()
654 mutex_unlock(&sdev->ipc->tx_mutex); in sof_set_get_large_ctrl_data()
734 err = sof_ipc_tx_message(sdev->ipc, cdata->rhdr.hdr.cmd, cdata, in snd_sof_ipc_set_get_comp_data()
834 struct snd_sof_ipc *ipc; in snd_sof_ipc_init() local
837 ipc = devm_kzalloc(sdev->dev, sizeof(*ipc), GFP_KERNEL); in snd_sof_ipc_init()
838 if (!ipc) in snd_sof_ipc_init()
841 mutex_init(&ipc->tx_mutex); in snd_sof_ipc_init()
842 ipc->sdev = sdev; in snd_sof_ipc_init()
843 msg = &ipc->msg; in snd_sof_ipc_init()
861 return ipc; in snd_sof_ipc_init()
867 struct snd_sof_ipc *ipc = sdev->ipc; in snd_sof_ipc_free() local
869 if (!ipc) in snd_sof_ipc_free()
873 mutex_lock(&ipc->tx_mutex); in snd_sof_ipc_free()
874 ipc->disable_ipc_tx = true; in snd_sof_ipc_free()
875 mutex_unlock(&ipc->tx_mutex); in snd_sof_ipc_free()