Home
last modified time | relevance | path

Searched +full:ipc +full:- (Results 1 – 25 of 613) sorted by relevance

12345678910>>...25

/linux-6.14.4/drivers/accel/ivpu/
Divpu_ipc.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2020-2024 Intel Corporation
23 struct ivpu_ipc_hdr ipc; member
30 ivpu_dbg(vdev, IPC, in ivpu_ipc_msg_dump()
32 c, vpu_addr, ipc_hdr->data_addr, ipc_hdr->data_size, ipc_hdr->channel, in ivpu_ipc_msg_dump()
33 ipc_hdr->src_node, ipc_hdr->dst_node, ipc_hdr->status); in ivpu_ipc_msg_dump()
39 u32 *payload = (u32 *)&jsm_msg->payload; in ivpu_jsm_msg_dump()
43 c, vpu_addr, ivpu_jsm_msg_type_to_str(jsm_msg->type), in ivpu_jsm_msg_dump()
44 jsm_msg->status, jsm_msg->request_id, jsm_msg->result, in ivpu_jsm_msg_dump()
52 ipc_hdr->status = IVPU_IPC_HDR_FREE; in ivpu_ipc_rx_mark_free()
[all …]
/linux-6.14.4/drivers/net/wireless/quantenna/qtnfmac/
Dshm_ipc.c1 // SPDX-License-Identifier: GPL-2.0+
2 /* Copyright (c) 2015-2016 Quantenna Communications. All rights reserved. */
12 static bool qtnf_shm_ipc_has_new_data(struct qtnf_shm_ipc *ipc) in qtnf_shm_ipc_has_new_data() argument
14 const u32 flags = readl(&ipc->shm_region->headroom.hdr.flags); in qtnf_shm_ipc_has_new_data()
19 static void qtnf_shm_handle_new_data(struct qtnf_shm_ipc *ipc) in qtnf_shm_handle_new_data() argument
25 shm_reg_hdr = &ipc->shm_region->headroom.hdr; in qtnf_shm_handle_new_data()
27 size = readw(&shm_reg_hdr->data_len); in qtnf_shm_handle_new_data()
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()
37 ipc->shm_region->data, size); in qtnf_shm_handle_new_data()
[all …]
/linux-6.14.4/sound/soc/intel/avs/
Dipc.c1 // SPDX-License-Identifier: GPL-2.0-only
3 // Copyright(c) 2021-2022 Intel Corporation
9 #include <linux/io-64-nonatomic-lo-hi.h>
23 struct avs_ipc *ipc = adev->ipc; in avs_dsp_set_d0ix() local
27 if (ipc->in_d0ix == enable) in avs_dsp_set_d0ix()
32 /* Prevent further d0ix attempts on conscious IPC failure. */ in avs_dsp_set_d0ix()
33 if (ret == -AVS_EIPC) in avs_dsp_set_d0ix()
34 atomic_inc(&ipc->d0ix_disable_depth); in avs_dsp_set_d0ix()
36 ipc->in_d0ix = false; in avs_dsp_set_d0ix()
40 ipc->in_d0ix = enable; in avs_dsp_set_d0ix()
[all …]
/linux-6.14.4/sound/soc/sof/
Dipc.c1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
10 // Generic IPC layer that can work over MMIO and SPI/I2C. PHY layer provided
17 #include "sof-priv.h"
18 #include "sof-audio.h"
22 * sof_ipc_send_msg - generic function to prepare and send one IPC message
33 * Note: higher level sdev->ipc->tx_mutex must be held to make sure that
39 struct snd_sof_ipc *ipc = sdev->ipc; in sof_ipc_send_msg() local
43 if (ipc->disable_ipc_tx || sdev->fw_state != SOF_FW_BOOT_COMPLETE) in sof_ipc_send_msg()
44 return -ENODEV; in sof_ipc_send_msg()
47 * The spin-lock is needed to protect message objects against other in sof_ipc_send_msg()
[all …]
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
21 For backwards-compatibility with previous configurations the selection will
22 be used as default for platform-specific drivers.
32 For backwards-compatibility with previous configurations the selection will
33 be used as default for platform-specific drivers.
62 This option is not user-selectable but automagically handled by
69 This option is not user-selectable but automagically handled by
121 during topology creation or run-time usage if new functionality
130 bool "SOF allow fallback to newer IPC version"
132 This option will allow the kernel to try to 'fallback' to a newer IPC
[all …]
DMakefile1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
3 snd-sof-y := 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\
5 fw-file-profile.o
7 # IPC implementations
9 snd-sof-y += ipc3.o ipc3-loader.o ipc3-topology.o ipc3-control.o ipc3-pcm.o\
10 ipc3-dtrace.o
13 snd-sof-y += ipc4.o ipc4-loader.o ipc4-topology.o ipc4-control.o ipc4-pcm.o\
14 ipc4-mtrace.o ipc4-telemetry.o
19 snd-sof-y += sof-client.o
[all …]
Dipc4.c1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
14 #include "sof-priv.h"
15 #include "sof-audio.h"
16 #include "ipc4-fw-reg.h"
17 #include "ipc4-priv.h"
18 #include "ipc4-telemetry.h"
28 {3, "Not enough space in the IPC reply buffer to complete the request"},
30 {5, "Replaced ADSP IPC PENDING (unused)"},
95 dev_err(sdev->dev, "FW reported error: %u - %s\n", in sof_ipc4_check_reply_status()
102 dev_err(sdev->dev, "FW reported error: %u - Unknown\n", status); in sof_ipc4_check_reply_status()
[all …]
Dsof-priv.h1 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */
38 #define SOF_DBG_PRINT_ALL_DUMPS BIT(6) /* Print all ipc and dsp dumps */
45 #define SOF_DBG_PRINT_IPC_SUCCESS_LOGS BIT(9) /* print IPC success
48 #define SOF_DBG_FORCE_NOCODEC BIT(10) /* ignore all codec-related
51 #define SOF_DBG_DUMP_IPC_MESSAGE_PAYLOAD BIT(11) /* On top of the IPC message header
87 u32 substate; /* platform-specific */
126 * struct snd_sof_platform_stream_params - platform dependent stream parameters
131 * @no_ipc_position: Disable position update IPC from firmware
143 * struct sof_firmware - Container struct for SOF firmware
219 /* ipc */
[all …]
/linux-6.14.4/sound/soc/intel/catpt/
Dipc.c1 // SPDX-License-Identifier: GPL-2.0-only
16 void catpt_ipc_init(struct catpt_ipc *ipc, struct device *dev) in catpt_ipc_init() argument
18 ipc->dev = dev; in catpt_ipc_init()
19 ipc->ready = false; in catpt_ipc_init()
20 ipc->default_timeout = CATPT_IPC_TIMEOUT_MS; in catpt_ipc_init()
21 init_completion(&ipc->done_completion); in catpt_ipc_init()
22 init_completion(&ipc->busy_completion); in catpt_ipc_init()
23 spin_lock_init(&ipc->lock); in catpt_ipc_init()
24 mutex_init(&ipc->mutex); in catpt_ipc_init()
27 static int catpt_ipc_arm(struct catpt_ipc *ipc, struct catpt_fw_ready *config) in catpt_ipc_arm() argument
[all …]
/linux-6.14.4/drivers/mailbox/
Dmailbox-mchp-ipc-sbi.c1 // SPDX-License-Identifier: GPL-2.0
3 * Microchip Inter-Processor communication (IPC) driver
5 * Copyright (c) 2021 - 2024 Microchip Technology Inc. All rights reserved.
19 #include <linux/dma-mapping.h>
21 #include <linux/mailbox/mchp-ipc.h>
44 * struct mchp_ipc_mbox_info - IPC probe message format
46 * @hw_type: IPC implementation available in the hardware
47 * @num_channels: number of IPC channels available in the hardware
49 * Used to retrieve information on the IPC implementation
58 * struct mchp_ipc_init - IPC channel init message format
[all …]
/linux-6.14.4/ipc/
Dutil.c1 // SPDX-License-Identifier: GPL-2.0
3 * linux/ipc/util.c
6 * Sep 1997 - Call suser() last after "normal" permission checks so we
8 * Occurs in several places in the IPC code.
10 * Nov 1999 - ipc helper functions, unified SMP locking
12 * Oct 2002 - One lock per IPC id. RCU ipc_free for lock-free grow_ary().
14 * Mar 2006 - support for audit of ipc object properties
16 * Jun 2006 - namespaces ssupport
20 * General sysv ipc locking scheme:
22 * obtain the ipc object (kern_ipc_perm) by looking up the id in an idr
[all …]
/linux-6.14.4/drivers/platform/x86/
Dintel_scu_ipc.c1 // SPDX-License-Identifier: GPL-2.0
3 * Driver for the Intel SCU IPC mechanism
5 * (C) Copyright 2008-2010,2015 Intel Corporation
9 * core through IPC mechanism which in turn messaging between IA core ad SCU.
10 * SCU has two IPC mechanism IPC-1 and IPC-2. IPC-1 is used between IA32 and
11 * SCU where IPC-2 is used between P-Unit and SCU. This driver delas with
12 * IPC-1 Driver provides an API for power control unit registers (e.g. MSIC)
29 /* IPC defines the following message types */
35 #define IPC_CMD_PCNTRL_M 2 /* Register read-modify-write */
38 * IPC register summary
[all …]
/linux-6.14.4/include/linux/firmware/imx/
Ddsp.h1 /* SPDX-License-Identifier: GPL-2.0+ */
5 * Header file for the DSP IPC implementation
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);
31 /* Host <-> DSP communication uses 2 txdb and 2 rxdb channels */
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()
[all …]
Dipc.h1 /* SPDX-License-Identifier: GPL-2.0+ */
5 * Header file for the IPC implementation.
39 * This is an function to send an RPC message over an IPC channel.
40 * It is called by client-side SCFW API function shims.
42 * @param[in] ipc IPC handle
49 int imx_scu_call_rpc(struct imx_sc_ipc *ipc, void *msg, bool have_resp);
52 * This function gets the default ipc handle used by SCU
54 * @param[out] ipc sc ipc handle
58 int imx_scu_get_handle(struct imx_sc_ipc **ipc);
60 static inline int imx_scu_call_rpc(struct imx_sc_ipc *ipc, void *msg, in imx_scu_call_rpc() argument
[all …]
/linux-6.14.4/drivers/firmware/
Dmtk-adsp-ipc.c1 // SPDX-License-Identifier: GPL-2.0
4 * Author: Allen-KH Cheng <allen-[email protected]>
7 #include <linux/firmware/mediatek/mtk-adsp-ipc.h>
17 * mtk_adsp_ipc_send - send ipc cmd to MTK ADSP
19 * @ipc: ADSP IPC handle
21 * @msg: IPC cmd (reply or request)
26 int mtk_adsp_ipc_send(struct mtk_adsp_ipc *ipc, unsigned int idx, uint32_t msg) in mtk_adsp_ipc_send() argument
32 return -EINVAL; in mtk_adsp_ipc_send()
34 adsp_chan = &ipc->chans[idx]; in mtk_adsp_ipc_send()
35 ret = mbox_send_message(adsp_chan->ch, &msg); in mtk_adsp_ipc_send()
[all …]
/linux-6.14.4/drivers/media/platform/st/sti/delta/
Ddelta-ipc.c1 // SPDX-License-Identifier: GPL-2.0
10 #include "delta-ipc.h"
11 #include "delta-mem.h"
38 #define msg_to_ctx(msg) ((struct delta_ipc_ctx *)(msg)->header.host_hdl)
39 #define msg_to_copro_hdl(msg) ((msg)->header.copro_hdl)
43 return (ctx->ipc_buf->paddr + (vaddr - ctx->ipc_buf->vaddr)); in to_paddr()
49 return ((data >= ctx->ipc_buf->vaddr) && in is_valid_data()
50 ((data + size) <= (ctx->ipc_buf->vaddr + ctx->ipc_buf->size))); in is_valid_data()
54 * IPC shared memory (@ipc_buf_size, @ipc_buf_paddr) is sent to copro
55 * at each instance opening. This memory is allocated by IPC client
[all …]
/linux-6.14.4/drivers/media/pci/intel/ipu6/
Dipu6-buttress.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2013--2024 Intel Corporation
11 #include <linux/dma-mapping.h>
26 #include "ipu6-bus.h"
27 #include "ipu6-dma.h"
28 #include "ipu6-buttress.h"
29 #include "ipu6-platform-buttress-regs.h"
64 struct ipu6_buttress_ipc *ipc) in ipu6_buttress_ipc_reset() argument
67 struct ipu6_buttress *b = &isp->buttress; in ipu6_buttress_ipc_reset()
70 if (!isp->secure_mode) { in ipu6_buttress_ipc_reset()
[all …]
/linux-6.14.4/net/qrtr/
Daf_qrtr.c1 // SPDX-License-Identifier: GPL-2.0-only
20 /* auto-bind range */
29 * struct qrtr_hdr_v1 - (I|R)PCrouter packet header version 1
34 * @confirm_rx: boolean; whether a resume-tx packet should be send in reply
51 * struct qrtr_hdr_v2 - (I|R)PCrouter packet header later versions
116 * struct qrtr_node - endpoint node
140 * struct qrtr_tx_flow - tx flow control
161 static void qrtr_port_put(struct qrtr_sock *ipc);
186 list_del(&node->item); in __qrtr_node_release()
189 skb_queue_purge(&node->rx_queue); in __qrtr_node_release()
[all …]
/linux-6.14.4/fs/smb/server/
Dksmbd_netlink.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
5 * linux-ksmbd-[email protected]
14 * This is a userspace ABI to communicate data between ksmbd and user IPC
18 * - KSMBD_EVENT_HEARTBEAT_REQUEST(ksmbd_heartbeat)
19 * This event is to check whether user IPC daemon is alive. If user IPC
23 * - KSMBD_EVENT_STARTING_UP(ksmbd_startup_request)
25 * server from the user IPC daemon and to start the server. The global
29 * - KSMBD_EVENT_SHUTTING_DOWN(ksmbd_shutdown_request)
32 * - KSMBD_EVENT_LOGIN_REQUEST/RESPONSE(ksmbd_login_request/response)
33 * This event is to get user account info to user IPC daemon.
[all …]
/linux-6.14.4/tools/perf/tests/shell/
Dstat+shadow_stat.sh3 # SPDX-License-Identifier: GPL-2.0
5 set -e
9 # skip if system-wide mode is forbidden
10 perf stat -a true > /dev/null 2>&1 || exit 2
13 perf stat -a -e cycles sleep 1 2>&1 | grep -e cpu_core && exit 2
17 perf stat -a --no-big-num -e cycles,instructions sleep 1 2>&1 | \
18 grep -e cycles -e instructions | \
19 while read num evt _ ipc rest
33 if [ -z "$cyc" ]; then
39 if [ "$ipc" != "$res" ]; then
[all …]
/linux-6.14.4/drivers/firmware/imx/
Dmisc.c1 // SPDX-License-Identifier: GPL-2.0+
7 * File containing client-side RPC functions for the MISC service. These
43 * @param[in] ipc IPC handle
51 int imx_sc_misc_set_control(struct imx_sc_ipc *ipc, u32 resource, in imx_sc_misc_set_control() argument
57 hdr->ver = IMX_SC_RPC_VERSION; in imx_sc_misc_set_control()
58 hdr->svc = (uint8_t)IMX_SC_RPC_SVC_MISC; in imx_sc_misc_set_control()
59 hdr->func = (uint8_t)IMX_SC_MISC_FUNC_SET_CONTROL; in imx_sc_misc_set_control()
60 hdr->size = 4; in imx_sc_misc_set_control()
66 return imx_scu_call_rpc(ipc, &msg, true); in imx_sc_misc_set_control()
73 * @param[in] ipc IPC handle
[all …]
Dimx-dsp.c1 // SPDX-License-Identifier: GPL-2.0+
6 * Implementation of the DSP IPC interface (host side)
17 * imx_dsp_ring_doorbell - triggers an interrupt on the other side (DSP)
19 * @dsp: DSP IPC handle
22 * Returns non-negative value for success, negative value for error
24 int imx_dsp_ring_doorbell(struct imx_dsp_ipc *ipc, unsigned int idx) in imx_dsp_ring_doorbell() argument
30 return -EINVAL; in imx_dsp_ring_doorbell()
32 dsp_chan = &ipc->chans[idx]; in imx_dsp_ring_doorbell()
33 ret = mbox_send_message(dsp_chan->ch, NULL); in imx_dsp_ring_doorbell()
42 * imx_dsp_handle_rx - rx callback used by imx mailbox
[all …]
/linux-6.14.4/drivers/misc/mei/
Dhw-txe-regs.h1 /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
3 * Copyright (c) 2013-2014, Intel Corporation. All rights reserved.
28 * This register resides in PCI-E config space.
39 #define IPC_BASE_ADDR 0x80400 /* SeC IPC Base Address */
41 /* IPC Input Doorbell Register */
44 /* IPC Input Status Register
53 /* IPC Host Interrupt Status Register */
68 /* IPC Host Interrupt Mask Register */
74 /* IPC Input Payload RAM */
76 /* IPC Shared Payload RAM */
[all …]
/linux-6.14.4/include/linux/firmware/mediatek/
Dmtk-adsp-ipc.h1 /* SPDX-License-Identifier: GPL-2.0 */
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);
/linux-6.14.4/drivers/leds/simple/
DMakefile1 # SPDX-License-Identifier: GPL-2.0
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

12345678910>>...25