/openbmc/linux/sound/soc/intel/common/ |
H A D | sst-ipc.c | 58 ipc->ops.shim_dbg(ipc, "message timeout"); in tx_wait_done() 125 ipc->msg[i].tx.data = kzalloc(ipc->tx_data_max_size, GFP_KERNEL); in msg_empty_list_init() 129 ipc->msg[i].rx.data = kzalloc(ipc->rx_data_max_size, GFP_KERNEL); in msg_empty_list_init() 136 list_add(&ipc->msg[i].list, &ipc->empty_list); in msg_empty_list_init() 147 kfree(ipc->msg); in msg_empty_list_init() 160 while (!list_empty(&ipc->tx_list) && !ipc->pending) { in ipc_tx_msgs() 165 if (ipc->ops.is_dsp_busy && ipc->ops.is_dsp_busy(ipc->dsp)) { in ipc_tx_msgs() 174 ipc->ops.tx_msg(ipc, msg); in ipc_tx_msgs() 191 if (ipc->ops.check_dsp_lp_on(ipc->dsp, true)) in sst_ipc_tx_message_wait() 197 if (ipc->ops.check_dsp_lp_on(ipc->dsp, false)) in sst_ipc_tx_message_wait() [all …]
|
H A D | sst-ipc.h | 68 int sst_ipc_tx_message_wait(struct sst_generic_ipc *ipc, 71 int sst_ipc_tx_message_nowait(struct sst_generic_ipc *ipc, 74 int sst_ipc_tx_message_nopm(struct sst_generic_ipc *ipc, 77 struct ipc_message *sst_ipc_reply_find_msg(struct sst_generic_ipc *ipc, 80 void sst_ipc_tx_msg_reply_complete(struct sst_generic_ipc *ipc, 83 int sst_ipc_init(struct sst_generic_ipc *ipc); 84 void sst_ipc_fini(struct sst_generic_ipc *ipc);
|
/openbmc/linux/drivers/net/wireless/quantenna/qtnfmac/ |
H A D | shm_ipc.c | 35 ipc->rx_packet_count++; in qtnf_shm_handle_new_data() 36 ipc->rx_callback.fn(ipc->rx_callback.arg, in qtnf_shm_handle_new_data() 43 ipc->interrupt.fn(ipc->interrupt.arg); in qtnf_shm_handle_new_data() 62 queue_work(ipc->workqueue, &ipc->irq_work); in qtnf_shm_ipc_irq_inbound_handler() 95 ipc->tx_packet_count = 0; in qtnf_shm_ipc_init() 96 ipc->rx_packet_count = 0; in qtnf_shm_ipc_init() 98 ipc->waiting_for_ack = 0; in qtnf_shm_ipc_init() 99 ipc->tx_timeout_count = 0; in qtnf_shm_ipc_init() 133 ipc->tx_packet_count++; in qtnf_shm_ipc_send() 149 ipc->interrupt.fn(ipc->interrupt.arg); in qtnf_shm_ipc_send() [all …]
|
H A D | shm_ipc.h | 44 void (*irq_handler)(struct qtnf_shm_ipc *ipc); 51 int qtnf_shm_ipc_init(struct qtnf_shm_ipc *ipc, 57 void qtnf_shm_ipc_free(struct qtnf_shm_ipc *ipc); 58 int qtnf_shm_ipc_send(struct qtnf_shm_ipc *ipc, const u8 *buf, size_t size); 60 static inline void qtnf_shm_ipc_irq_handler(struct qtnf_shm_ipc *ipc) in qtnf_shm_ipc_irq_handler() argument 62 ipc->irq_handler(ipc); in qtnf_shm_ipc_irq_handler()
|
/openbmc/linux/sound/soc/intel/avs/ |
H A D | ipc.c | 23 struct avs_ipc *ipc = adev->ipc; in avs_dsp_set_d0ix() local 62 struct avs_ipc *ipc = adev->ipc; in avs_dsp_wake_d0i0() local 74 struct avs_ipc *ipc = adev->ipc; in avs_dsp_disable_d0ix() local 87 struct avs_ipc *ipc = adev->ipc; in avs_dsp_enable_d0ix() local 160 struct avs_ipc *ipc = adev->ipc; in avs_dsp_exception_caught() local 185 struct avs_ipc *ipc = adev->ipc; in avs_dsp_receive_rx() local 202 trace_avs_msg_payload(ipc->rx.data, ipc->rx.size); in avs_dsp_receive_rx() 285 struct avs_ipc *ipc = adev->ipc; in avs_dsp_process_response() local 307 struct avs_ipc *ipc = adev->ipc; in avs_dsp_irq_handler() local 460 struct avs_ipc *ipc = adev->ipc; in avs_dsp_do_send_msg() local [all …]
|
/openbmc/linux/drivers/accel/ivpu/ |
H A D | ivpu_ipc.c | 65 struct ivpu_ipc_info *ipc = vdev->ipc; in ivpu_ipc_mem_fini() local 75 struct ivpu_ipc_info *ipc = vdev->ipc; in ivpu_ipc_tx_prepare() local 130 struct ivpu_ipc_info *ipc = vdev->ipc; in ivpu_ipc_tx_release() local 144 struct ivpu_ipc_info *ipc = vdev->ipc; in ivpu_ipc_consumer_add() local 161 struct ivpu_ipc_info *ipc = vdev->ipc; in ivpu_ipc_consumer_del() local 183 struct ivpu_ipc_info *ipc = vdev->ipc; in ivpu_ipc_send() local 208 struct ivpu_ipc_info *ipc = vdev->ipc; in ivpu_ipc_receive() local 334 struct ivpu_ipc_info *ipc = vdev->ipc; in ivpu_ipc_dispatch() local 360 struct ivpu_ipc_info *ipc = vdev->ipc; in ivpu_ipc_irq_handler() local 425 struct ivpu_ipc_info *ipc = vdev->ipc; in ivpu_ipc_init() local [all …]
|
/openbmc/linux/sound/soc/intel/catpt/ |
H A D | ipc.c | 18 ipc->dev = dev; in catpt_ipc_init() 19 ipc->ready = false; in catpt_ipc_init() 35 if (!ipc->rx.data) in catpt_ipc_arm() 39 ipc->ready = true; in catpt_ipc_arm() 69 struct catpt_ipc *ipc = &cdev->ipc; in catpt_wait_msg_completion() local 89 struct catpt_ipc *ipc = &cdev->ipc; in catpt_dsp_do_send_msg() local 93 if (!ipc->ready) in catpt_dsp_do_send_msg() 128 struct catpt_ipc *ipc = &cdev->ipc; in catpt_dsp_send_msg_timeout() local 185 struct catpt_ipc *ipc = &cdev->ipc; in catpt_dsp_copy_rx() local 192 trace_catpt_ipc_payload(ipc->rx.data, ipc->rx.size); in catpt_dsp_copy_rx() [all …]
|
/openbmc/linux/sound/soc/sof/ |
H A D | ipc.c | 39 struct snd_sof_ipc *ipc = sdev->ipc; in sof_ipc_send_msg() local 53 msg = &ipc->msg; in sof_ipc_send_msg() 82 return ipc->ops->tx_msg(ipc->sdev, msg_data, msg_bytes, reply_data, in sof_ipc_tx_message() 91 return ipc->ops->set_get_data(ipc->sdev, msg_data, msg_bytes, set); in sof_ipc_set_get_data() 153 ipc = devm_kzalloc(sdev->dev, sizeof(*ipc), GFP_KERNEL); in snd_sof_ipc_init() 154 if (!ipc) in snd_sof_ipc_init() 159 msg = &ipc->msg; in snd_sof_ipc_init() 214 ipc->ops = ops; in snd_sof_ipc_init() 216 return ipc; in snd_sof_ipc_init() 222 struct snd_sof_ipc *ipc = sdev->ipc; in snd_sof_ipc_free() local [all …]
|
H A D | Makefile | 3 snd-sof-objs := core.o ops.o loader.o ipc.o pcm.o pm.o debug.o topology.o\ 4 control.o trace.o iomem-utils.o sof-audio.o stream-ipc.o 27 snd-sof-ipc-flood-test-objs := sof-client-ipc-flood-test.o 28 snd-sof-ipc-msg-injector-objs := sof-client-ipc-msg-injector.o 29 snd-sof-ipc-kernel-injector-objs := sof-client-ipc-kernel-injector.o 51 obj-$(CONFIG_SND_SOC_SOF_DEBUG_IPC_FLOOD_TEST) += snd-sof-ipc-flood-test.o 52 obj-$(CONFIG_SND_SOC_SOF_DEBUG_IPC_MSG_INJECTOR) += snd-sof-ipc-msg-injector.o 53 obj-$(CONFIG_SND_SOC_SOF_DEBUG_IPC_KERNEL_INJECTOR) += snd-sof-ipc-kernel-injector.o
|
H A D | trace.c | 26 if (sdev->ipc->ops->fw_tracing->free) in sof_fw_trace_free() 27 sdev->ipc->ops->fw_tracing->free(sdev); in sof_fw_trace_free() 35 if (sdev->ipc->ops->fw_tracing->fw_crashed) in sof_fw_trace_fw_crashed() 36 sdev->ipc->ops->fw_tracing->fw_crashed(sdev); in sof_fw_trace_fw_crashed() 44 sdev->ipc->ops->fw_tracing->suspend(sdev, pm_state); in sof_fw_trace_suspend() 52 return sdev->ipc->ops->fw_tracing->resume(sdev); in sof_fw_trace_resume()
|
/openbmc/linux/sound/soc/intel/skylake/ |
H A D | skl-sst-ipc.c | 348 struct skl_dev *skl = container_of(ipc, struct skl_dev, ipc); in skl_ipc_process_notification() 417 ipc->dsp->fw_ops.get_fw_errcode(ipc->dsp)); in skl_ipc_set_reply_error_code() 424 ipc->dsp->fw_ops.get_fw_errcode(ipc->dsp)); in skl_ipc_set_reply_error_code() 428 ipc->dsp->fw_ops.get_fw_errcode(ipc->dsp)); in skl_ipc_set_reply_error_code() 439 struct skl_dev *skl = container_of(ipc, struct skl_dev, ipc); in skl_ipc_process_reply() 493 struct sst_generic_ipc *ipc = &skl->ipc; in skl_dsp_irq_thread_handler() local 604 ipc = &skl->ipc; in skl_ipc_init() 605 ipc->dsp = skl->dsp; in skl_ipc_init() 606 ipc->dev = dev; in skl_ipc_init() 632 sst_ipc_fini(ipc); in skl_ipc_free() [all …]
|
H A D | skl-sst-ipc.h | 110 int skl_ipc_create_pipeline(struct sst_generic_ipc *ipc, 118 int skl_ipc_save_pipeline(struct sst_generic_ipc *ipc, 123 int skl_ipc_init_instance(struct sst_generic_ipc *ipc, 126 int skl_ipc_bind_unbind(struct sst_generic_ipc *ipc, 129 int skl_ipc_load_modules(struct sst_generic_ipc *ipc, 132 int skl_ipc_unload_modules(struct sst_generic_ipc *ipc, 135 int skl_ipc_set_dx(struct sst_generic_ipc *ipc, 138 int skl_ipc_set_large_config(struct sst_generic_ipc *ipc, 148 int skl_ipc_set_d0ix(struct sst_generic_ipc *ipc, 159 void skl_ipc_free(struct sst_generic_ipc *ipc); [all …]
|
H A D | skl-ssp-clk.c | 77 union skl_clk_ctrl_ipc *ipc; in skl_fill_clk_ipc() local 83 ipc = &rcfg->dma_ctl_ipc; in skl_fill_clk_ipc() 93 ipc->sclk_fs.valid_bit_depth = in skl_fill_clk_ipc() 113 union skl_clk_ctrl_ipc *ipc; in skl_send_clk_dma_control() local 121 ipc = &rcfg->dma_ctl_ipc; in skl_send_clk_dma_control() 126 ipc->sclk_fs.hdr.type = in skl_send_clk_dma_control() 128 data = (u8 *)&ipc->sclk_fs; in skl_send_clk_dma_control() 133 ipc->mclk.mclk = 0; in skl_send_clk_dma_control() 135 ipc->mclk.mclk = 1; in skl_send_clk_dma_control() 137 ipc->mclk.keep_running = enable; in skl_send_clk_dma_control() [all …]
|
H A D | cnl-sst.c | 316 struct sst_generic_ipc *ipc = &cnl->ipc; in cnl_dsp_irq_thread_handler() local 356 skl_ipc_process_reply(ipc, header); in cnl_dsp_irq_thread_handler() 377 schedule_work(&ipc->kwork); in cnl_dsp_irq_thread_handler() 410 struct sst_generic_ipc *ipc; in cnl_ipc_init() local 413 ipc = &cnl->ipc; in cnl_ipc_init() 414 ipc->dsp = cnl->dsp; in cnl_ipc_init() 415 ipc->dev = dev; in cnl_ipc_init() 417 ipc->tx_data_max_size = CNL_ADSP_W1_SZ; in cnl_ipc_init() 420 err = sst_ipc_init(ipc); in cnl_ipc_init() 428 ipc->ops.tx_msg = cnl_ipc_tx_msg; in cnl_ipc_init() [all …]
|
/openbmc/linux/include/linux/firmware/imx/ |
H A D | dsp.h | 18 struct imx_dsp_ipc *ipc; member 26 void (*handle_reply)(struct imx_dsp_ipc *ipc); 27 void (*handle_request)(struct imx_dsp_ipc *ipc); 38 static inline void imx_dsp_set_data(struct imx_dsp_ipc *ipc, void *data) in imx_dsp_set_data() argument 40 ipc->private_data = data; in imx_dsp_set_data() 43 static inline void *imx_dsp_get_data(struct imx_dsp_ipc *ipc) in imx_dsp_get_data() argument 45 return ipc->private_data; in imx_dsp_get_data() 53 void imx_dsp_free_channel(struct imx_dsp_ipc *ipc, int idx); 57 static inline int imx_dsp_ring_doorbell(struct imx_dsp_ipc *ipc, in imx_dsp_ring_doorbell() argument 63 struct mbox_chan *imx_dsp_request_channel(struct imx_dsp_ipc *ipc, int idx) in imx_dsp_request_channel() argument [all …]
|
/openbmc/u-boot/arch/arm/include/asm/arch-imx8/sci/ |
H A D | sci.h | 59 int sc_pm_set_resource_power_mode(sc_ipc_t ipc, sc_rsrc_t resource, 61 int sc_pm_set_clock_rate(sc_ipc_t ipc, sc_rsrc_t resource, sc_pm_clk_t clk, 69 int sc_pm_clock_enable(sc_ipc_t ipc, sc_rsrc_t resource, sc_pm_clk_t clk, 73 int sc_misc_get_control(sc_ipc_t ipc, sc_rsrc_t resource, sc_ctrl_t ctrl, 75 void sc_misc_get_boot_dev(sc_ipc_t ipc, sc_rsrc_t *boot_dev); 76 void sc_misc_boot_status(sc_ipc_t ipc, sc_misc_boot_status_t status); 77 void sc_misc_build_info(sc_ipc_t ipc, u32 *build, u32 *commit); 78 int sc_misc_otp_fuse_read(sc_ipc_t ipc, u32 word, u32 *val); 81 sc_bool_t sc_rm_is_memreg_owned(sc_ipc_t ipc, sc_rm_mr_t mr); 84 sc_bool_t sc_rm_is_resource_owned(sc_ipc_t ipc, sc_rsrc_t resource); [all …]
|
/openbmc/linux/include/linux/firmware/mediatek/ |
H A D | mtk-adsp-ipc.h | 28 void (*handle_reply)(struct mtk_adsp_ipc *ipc); 29 void (*handle_request)(struct mtk_adsp_ipc *ipc); 33 struct mtk_adsp_ipc *ipc; member 47 static inline void mtk_adsp_ipc_set_data(struct mtk_adsp_ipc *ipc, void *data) in mtk_adsp_ipc_set_data() argument 49 ipc->private_data = data; in mtk_adsp_ipc_set_data() 52 static inline void *mtk_adsp_ipc_get_data(struct mtk_adsp_ipc *ipc) in mtk_adsp_ipc_get_data() argument 54 return ipc->private_data; in mtk_adsp_ipc_get_data() 57 int mtk_adsp_ipc_send(struct mtk_adsp_ipc *ipc, unsigned int idx, uint32_t op);
|
/openbmc/linux/net/qrtr/ |
H A D | af_qrtr.c | 531 if (!ipc) in qrtr_endpoint_post() 676 if (ipc) in qrtr_port_lookup() 680 return ipc; in qrtr_port_lookup() 686 sock_put(&ipc->sk); in qrtr_port_put() 856 if (!ipc || &ipc->sk == skb->sk) { /* do not send to self */ in qrtr_local_enqueue() 857 if (ipc) in qrtr_local_enqueue() 1109 ipc->peer = *addr; in qrtr_connect() 1134 qaddr = ipc->us; in qrtr_getname() 1178 *sq = ipc->us; in qrtr_ioctl() 1215 ipc = qrtr_sk(sk); in qrtr_release() [all …]
|
/openbmc/linux/drivers/leds/simple/ |
H A D | Makefile | 2 obj-$(CONFIG_LEDS_SIEMENS_SIMATIC_IPC) += simatic-ipc-leds.o 3 obj-$(CONFIG_LEDS_SIEMENS_SIMATIC_IPC_APOLLOLAKE) += simatic-ipc-leds-gpio-core.o simatic-ipc-leds-… 4 obj-$(CONFIG_LEDS_SIEMENS_SIMATIC_IPC_F7188X) += simatic-ipc-leds-gpio-core.o simatic-ipc-leds-gpi… 5 obj-$(CONFIG_LEDS_SIEMENS_SIMATIC_IPC_ELKHARTLAKE) += simatic-ipc-leds-gpio-core.o simatic-ipc-leds…
|
/openbmc/linux/drivers/gpu/drm/i915/selftests/ |
H A D | i915_sw_fence.c | 514 struct task_ipc *ipc = container_of(work, typeof(*ipc), work); in task_ipc() local 516 complete(&ipc->started); in task_ipc() 525 struct task_ipc ipc; in test_ipc() local 534 ipc.in = alloc_fence(); in test_ipc() 535 if (!ipc.in) { in test_ipc() 539 ipc.out = alloc_fence(); in test_ipc() 540 if (!ipc.out) { in test_ipc() 548 ipc.value = 0; in test_ipc() 568 flush_work(&ipc.work); in test_ipc() 570 free_fence(ipc.out); in test_ipc() [all …]
|
/openbmc/linux/include/linux/firmware/imx/svc/ |
H A D | misc.h | 50 int imx_sc_misc_set_control(struct imx_sc_ipc *ipc, u32 resource, 53 int imx_sc_misc_get_control(struct imx_sc_ipc *ipc, u32 resource, 56 int imx_sc_pm_cpu_start(struct imx_sc_ipc *ipc, u32 resource, 59 static inline int imx_sc_misc_set_control(struct imx_sc_ipc *ipc, in imx_sc_misc_set_control() argument 65 static inline int imx_sc_misc_get_control(struct imx_sc_ipc *ipc, in imx_sc_misc_get_control() argument 71 static inline int imx_sc_pm_cpu_start(struct imx_sc_ipc *ipc, u32 resource, in imx_sc_pm_cpu_start() argument
|
/openbmc/linux/drivers/platform/x86/siemens/ |
H A D | Makefile | 7 obj-$(CONFIG_SIEMENS_SIMATIC_IPC) += simatic-ipc.o 8 obj-$(CONFIG_SIEMENS_SIMATIC_IPC_BATT) += simatic-ipc-batt.o 9 obj-$(CONFIG_SIEMENS_SIMATIC_IPC_BATT_APOLLOLAKE) += simatic-ipc-batt-apollolake.o 10 obj-$(CONFIG_SIEMENS_SIMATIC_IPC_BATT_ELKHARTLAKE) += simatic-ipc-batt-elkhartlake.o 11 obj-$(CONFIG_SIEMENS_SIMATIC_IPC_BATT_F7188X) += simatic-ipc-batt-f7188x.o
|
/openbmc/linux/tools/perf/tests/shell/ |
H A D | stat+shadow_stat.sh | 17 while read num evt _hash ipc rest 37 if [ "$ipc" != "$res" ]; then 38 echo "IPC is different: $res != $ipc ($num / $cyc)" 48 while read cpu num evt _hash ipc rest 71 if [ "$ipc" != "$res" ]; then 72 echo "IPC is different for $cpu: $res != $ipc ($num / $cyc)"
|
/openbmc/linux/drivers/hid/intel-ish-hid/ |
H A D | Makefile | 15 obj-$(CONFIG_INTEL_ISH_HID) += intel-ish-ipc.o 16 intel-ish-ipc-objs := ipc/ipc.o 17 intel-ish-ipc-objs += ipc/pci-ish.o
|
/openbmc/linux/drivers/firmware/ |
H A D | mtk-adsp-ipc.c | 26 int mtk_adsp_ipc_send(struct mtk_adsp_ipc *ipc, unsigned int idx, uint32_t msg) in mtk_adsp_ipc_send() argument 34 adsp_chan = &ipc->chans[idx]; in mtk_adsp_ipc_send() 59 chan->ipc->ops->handle_reply(chan->ipc); in mtk_adsp_ipc_recv() 62 chan->ipc->ops->handle_request(chan->ipc); in mtk_adsp_ipc_recv() 94 adsp_chan->ipc = adsp_ipc; in mtk_adsp_ipc_probe()
|