Home
last modified time | relevance | path

Searched +full:rpmsg +full:- +full:name (Results 1 – 25 of 39) sorted by relevance

12

/linux/Documentation/ABI/testing/
H A Dsysfs-bus-rpmsg1 What: /sys/bus/rpmsg/devices/.../name
4 Contact: Ohad Ben-Cohen <ohad@wizery.com>
6 Every rpmsg device is a communication channel with a remote
7 processor. Channels are identified with a (textual) name,
9 rpmsg.h).
11 This sysfs entry contains the name of this channel.
13 What: /sys/bus/rpmsg/devices/.../src
16 Contact: Ohad Ben-Cohen <ohad@wizery.com>
18 Every rpmsg device is a communication channel with a remote
19 processor. Channels have a local ("source") rpmsg address,
[all …]
/linux/sound/soc/fsl/
H A Dfsl_rpmsg.c1 // SPDX-License-Identifier: GPL-2.0+
2 // Copyright 2018-2021 NXP
5 #include <linux/clk-provider.h>
11 #include <linux/rpmsg.h>
18 #include "imx-pcm.h"
45 struct fsl_rpmsg *rpmsg = snd_soc_dai_get_drvdata(dai); in fsl_rpmsg_hw_params() local
46 struct clk *p = rpmsg->mclk, *pll = NULL, *npll = NULL; in fsl_rpmsg_hw_params()
51 while (p && rpmsg->pll8k && rpmsg->pll11k) { in fsl_rpmsg_hw_params()
54 if (clk_is_match(pp, rpmsg->pll8k) || in fsl_rpmsg_hw_params()
55 clk_is_match(pp, rpmsg->pll11k)) { in fsl_rpmsg_hw_params()
[all …]
H A Dimx-audio-rpmsg.c1 // SPDX-License-Identifier: GPL-2.0+
2 // Copyright 2017-2020 NXP
5 #include <linux/rpmsg.h>
6 #include "imx-pcm-rpmsg.h"
21 struct imx_audio_rpmsg *rpmsg = dev_get_drvdata(&rpdev->dev); in imx_audio_rpmsg_cb() local
27 if (!rpmsg->rpmsg_pdev) in imx_audio_rpmsg_cb()
30 info = platform_get_drvdata(rpmsg->rpmsg_pdev); in imx_audio_rpmsg_cb()
32 dev_dbg(&rpdev->dev, "get from%d: cmd:%d. %d\n", in imx_audio_rpmsg_cb()
33 src, r_msg->header.cmd, r_msg->param.resp); in imx_audio_rpmsg_cb()
35 switch (r_msg->header.type) { in imx_audio_rpmsg_cb()
[all …]
H A Dimx-pcm-rpmsg.c1 // SPDX-License-Identifier: GPL-2.0+
2 // Copyright 2017-2021 NXP
4 #include <linux/dma-mapping.h>
8 #include <linux/rpmsg.h>
15 #include "imx-pcm.h"
17 #include "imx-pcm-rpmsg
234 struct fsl_rpmsg *rpmsg = dev_get_drvdata(cpu_dai->dev); imx_rpmsg_pcm_open() local
321 struct fsl_rpmsg *rpmsg = dev_get_drvdata(cpu_dai->dev); imx_rpmsg_pcm_prepare() local
466 struct fsl_rpmsg *rpmsg = dev_get_drvdata(cpu_dai->dev); imx_rpmsg_pcm_trigger() local
520 struct fsl_rpmsg *rpmsg = dev_get_drvdata(cpu_dai->dev); imx_rpmsg_pcm_ack() local
599 struct fsl_rpmsg *rpmsg = dev_get_drvdata(cpu_dai->dev); imx_rpmsg_pcm_new() local
[all...]
/linux/drivers/rpmsg/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0
3 menu "Rpmsg drivers"
5 # RPMSG always gets selected by whoever wants it
6 config RPMSG config
10 tristate "RPMSG device interface"
11 depends on RPMSG
14 Say Y here to export rpmsg endpoints as device files, usually found
15 in /dev. They make it possible for user-space programs to send and
16 receive rpmsg packets.
19 tristate "RPMSG control interface"
[all …]
H A Drpmsg_ns.c1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (C) STMicroelectronics 2020 - All Rights Reserved
8 #include <linux/rpmsg.h>
9 #include <linux/rpmsg/ns.h>
15 * rpmsg_ns_register_device() - register name service device based on rpdev
19 * basis for the rpmsg name service device.
23 rpdev->src = RPMSG_NS_ADDR; in rpmsg_ns_register_device()
24 rpdev->dst = RPMSG_NS_ADDR; in rpmsg_ns_register_device()
30 /* invoked when a name service announcement arrives */
37 struct device *dev = rpdev->dev.parent; in rpmsg_ns_cb()
[all …]
H A Drpmsg_char.c1 // SPDX-License-Identifier: GPL-2.0
10 * Based on rpmsg performance statistics driver by Michal Simek, which in turn
11 * was based on TI & Google OMX rpmsg driver.
23 #include <linux/rpmsg.h>
27 #include <uapi/linux/rpmsg.h>
43 * struct rpmsg_eptdev - endpoint device context
46 * @rpdev: underlaying rpmsg device
49 * @ept: rpmsg endpoint reference, when open
53 * @default_ept: set to channel default endpoint if the default endpoint should be re-used
81 mutex_lock(&eptdev->ept_lock); in rpmsg_chrdev_eptdev_destroy()
[all …]
H A Drpmsg_ctrl.c1 // SPDX-License-Identifier: GPL-2.0
10 * Based on rpmsg performance statistics driver by Michal Simek, which in turn
11 * was based on TI & Google OMX rpmsg driver.
22 #include <linux/rpmsg.h>
26 #include <uapi/linux/rpmsg.h>
42 * struct rpmsg_ctrldev - control device for instantiating endpoint devices
43 * @rpdev: underlaying rpmsg device
57 struct rpmsg_ctrldev *ctrldev = cdev_to_ctrldev(inode->i_cdev); in rpmsg_ctrldev_open()
59 get_device(&ctrldev->dev); in rpmsg_ctrldev_open()
60 filp->private_data = ctrldev; in rpmsg_ctrldev_open()
[all …]
/linux/drivers/tty/
H A Drpmsg_tty.c1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (C) 2021 STMicroelectronics - All Rights Reserved
5 * The rpmsg tty driver implements serial communication on the RPMsg bus to makes
6 * possible for user-space programs to send and receive rpmsg messages as a standard
9 * The remote processor can instantiate a new tty by requesting a "rpmsg-tty" RPMsg service.
10 * The "rpmsg-tty" service is directly used for data exchange. No flow control is implemented yet.
16 #include <linux/rpmsg.h>
31 int id; /* TTY rpmsg index */
32 struct rpmsg_device *rpdev; /* rpmsg device */
37 struct rpmsg_tty_port *cport = dev_get_drvdata(&rpdev->dev); in rpmsg_tty_cb()
[all …]
/linux/include/uapi/linux/
H A Drpmsg.h1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
15 * struct rpmsg_endpoint_info - endpoint info representation
16 * @name: name of service
21 char name[32]; member
32 * Destroy a rpmsg char device endpoint created by the RPMSG_CREATE_EPT_IOCTL.
37 * Instantiate a new local rpmsg service device.
42 * Release a local rpmsg device.
47 * Get the flow control state of the remote rpmsg char device.
52 * Set the flow control state of the local rpmsg char device.
/linux/include/linux/rpmsg/
H A Dns.h1 /* SPDX-License-Identifier: GPL-2.0 */
7 #include <linux/rpmsg.h>
8 #include <linux/rpmsg/byteorder.h>
12 * struct rpmsg_ns_msg - dynamic name service announcement message
13 * @name: name of remote service that is published
19 * rpmsg channel (i.e device) is created/destroyed. In turn, the ->probe()
20 * or ->remove() handler of the appropriate rpmsg driver will be invoked
21 * (if/as-soon-as one is registered).
24 char name[RPMSG_NAME_SIZE]; member
30 * enum rpmsg_ns_flags - dynamic name service announcement flags
/linux/drivers/net/wwan/
H A Drpmsg_wwan_ctrl.c1 // SPDX-License-Identifier: GPL-2.0-only
7 #include <linux/rpmsg.h>
11 /* Lower level is a rpmsg dev, upper level is a wwan port */
25 return -ENOMEM; in rpmsg_wwan_ctrl_callback()
28 wwan_port_rx(rpwwan->wwan_port, skb); in rpmsg_wwan_ctrl_callback()
36 .src = rpwwan->rpdev->src, in rpmsg_wwan_ctrl_start()
40 strscpy(chinfo.name, rpwwan->rpdev->id.name, sizeof(chinfo.name)); in rpmsg_wwan_ctrl_start()
41 rpwwan->ept = rpmsg_create_ept(rpwwan->rpdev, rpmsg_wwan_ctrl_callback, in rpmsg_wwan_ctrl_start()
43 if (!rpwwan->ept) in rpmsg_wwan_ctrl_start()
44 return -EREMOTEIO; in rpmsg_wwan_ctrl_start()
[all …]
/linux/drivers/media/platform/st/sti/delta/
H A Ddelta-ipc.c1 // SPDX-License-Identifier: GPL-2.0
7 #include <linux/rpmsg.h>
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()
58 * this IPC shared memory, avoiding de-facto recopies inside delta-ipc.
[all …]
H A Ddelta.h1 /* SPDX-License-Identifier: GPL-2.0 */
10 #include <linux/rpmsg.h>
11 #include <media/v4l2-device.h>
12 #include <media/v4l2-mem2mem.h>
14 #include "delta-cfg.h"
17 * enum delta_state - state of decoding instance
46 * struct delta_streaminfo - information about stream to decode
89 * struct delta_au - access unit structure.
112 * struct delta_frameinfo - information about decoded frame
153 * struct delta_frame - frame structure.
[all …]
/linux/samples/rpmsg/
H A Drpmsg_client_sample.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Remote processor messaging - sample client driver
8 * Ohad Ben-Cohen <ohad@wizery.com>
14 #include <linux/rpmsg.h>
29 struct instance_data *idata = dev_get_drvdata(&rpdev->dev); in rpmsg_sample_cb()
31 dev_info(&rpdev->dev, "incoming msg %d (src: 0x%x)\n", in rpmsg_sample_cb()
32 ++idata->rx_count, src); in rpmsg_sample_cb()
38 if (idata->rx_count >= count) { in rpmsg_sample_cb()
39 dev_info(&rpdev->dev, "goodbye!\n"); in rpmsg_sample_cb()
44 ret = rpmsg_send(rpdev->ept, MSG, strlen(MSG)); in rpmsg_sample_cb()
[all …]
/linux/drivers/cdx/controller/
H A Dcdx_rpmsg.c1 // SPDX-License-Identifier: GPL-2.0
5 * Copyright (C) 2022-2023, Advanced Micro Devices, Inc.
8 #include <linux/rpmsg.h>
21 { .name = "mcdi_ipc" },
24 MODULE_DEVICE_TABLE(rpmsg, cdx_rpmsg_id_table);
35 return -ENOMEM; in cdx_rpmsg_send()
40 ret = rpmsg_send(cdx_mcdi->ept, send_buf, hdr_len + sdu_len); in cdx_rpmsg_send()
55 dev = &pdev->dev; in cdx_attach_to_rproc()
57 cdx_mcdi = cdx_c->priv; in cdx_attach_to_rproc()
59 r5_core_node = of_parse_phandle(dev->of_node, "xlnx,rproc", 0); in cdx_attach_to_rproc()
[all …]
H A Dcdx_controller.c1 // SPDX-License-Identifier: GPL-2.0
3 * CDX host controller driver for AMD versal-net platform.
5 * Copyright (C) 2022-2023, Advanced Micro Devices, Inc.
29 dev_err(&cdx->rpdev->dev, "Failed to send rpmsg data\n"); in cdx_mcdi_request()
39 return cdx_mcdi_bus_enable(cdx->priv, bus_num); in cdx_bus_enable()
44 return cdx_mcdi_bus_disable(cdx->priv, bus_num); in cdx_bus_disable()
51 dev_err(cdx->dev, "Failed to register CDX controller\n"); in cdx_rpmsg_post_probe()
57 cdx_mcdi_wait_for_quiescence(cdx->priv, MCDI_RPC_TIMEOUT); in cdx_rpmsg_pre_remove()
69 switch (dev_config->type) { in cdx_configure_device()
71 msi_index = dev_config->msi.msi_index; in cdx_configure_device()
[all …]
/linux/samples/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
14 tristate "Build trace_events examples -- loadable modules only"
20 tristate "Build custom trace event example -- loadable modules only"
26 tristate "Build trace_printk module - tests various trace_printk formats"
73 tristate "Build kprobes examples -
[all...]
/linux/net/qrtr/
H A Dsmd.c1 // SPDX-License-Identifier: GPL-2.0-only
9 #include <linux/rpmsg.h>
23 struct qrtr_smd_dev *qdev = dev_get_drvdata(&rpdev->dev); in qcom_smd_qrtr_callback()
27 return -EAGAIN; in qcom_smd_qrtr_callback()
29 rc = qrtr_endpoint_post(&qdev->ep, data, len); in qcom_smd_qrtr_callback()
30 if (rc == -EINVAL) { in qcom_smd_qrtr_callback()
31 dev_err(qdev->dev, "invalid ipcrouter packet\n"); in qcom_smd_qrtr_callback()
49 rc = rpmsg_send(qdev->channel, skb->data, skb->len); in qcom_smd_qrtr_send()
64 qdev = devm_kzalloc(&rpdev->dev, sizeof(*qdev), GFP_KERNEL); in qcom_smd_qrtr_probe()
66 return -ENOMEM; in qcom_smd_qrtr_probe()
[all …]
/linux/drivers/remoteproc/
H A Dqcom_sysmon.c1 // SPDX-License-Identifier: GPL-2.0
14 #include <linux/rpmsg.h>
29 const char *name; member
76 * sysmon_send_event() - send notification of other remote's SSR event
87 len = snprintf(req, sizeof(req), "ssr:%s:%s", event->subsys_name, in sysmon_send_event()
88 sysmon_state_string[event->ssr_event]); in sysmon_send_event()
92 mutex_lock(&sysmon->lock); in sysmon_send_event()
93 reinit_completion(&sysmon->comp); in sysmon_send_event()
94 sysmon->ssr_ack = false; in sysmon_send_event()
96 ret = rpmsg_send(sysmon->ept, req, len); in sysmon_send_event()
[all …]
/linux/include/linux/soc/qcom/
H A Dwcnss_ctrl.h1 /* SPDX-License-Identifier: GPL-2.0 */
5 #include <linux/rpmsg.h>
9 struct rpmsg_endpoint *qcom_wcnss_open_channel(void *wcnss, const char *name,
15 const char *name, in qcom_wcnss_open_channel() argument
20 return ERR_PTR(-ENXIO); in qcom_wcnss_open_channel()
/linux/drivers/edac/
H A Dversalnet_edac.c1 // SPDX-License-Identifier: GPL-2.0
13 #include <linux/rpmsg.h>
76 * struct ecc_error_info - ECC error log information.
124 * struct ecc_status - ECC status information to report.
138 * struct mc_priv - DDR memory controller private instance data.
145 * @regs: The registers sent on the rpmsg.
148 * @ept: rpmsg endpoint.
229 p = &priv->stat; in get_ddr_info()
232 p->channel = 1; in get_ddr_info()
234 p->channel = 0; in get_ddr_info()
[all …]
/linux/drivers/soc/qcom/
H A Dpmic_pdcharger_ulog.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (c) 2019-2022, The Linux Foundation. All rights reserved.
9 #include <linux/rpmsg.h>
50 return rpmsg_send(pg->rpdev->ept, data, len); in pmic_pdcharger_ulog_write_async()
75 dev_err(&pg->rpdev->dev, "Error requesting ulog, rc=%d\n", rc); in pmic_pdcharger_ulog_work()
84 char *token, *buf = resp_msg->buf; in pmic_pdcharger_ulog_handle_message()
87 dev_err(&pg->rpdev->dev, "Expected data length: %zu, received: %zu\n", in pmic_pdcharger_ulog_handle_message()
92 buf[MAX_ULOG_SIZE - 1] = '\0'; in pmic_pdcharger_ulog_handle_message()
104 struct pmic_pdcharger_ulog *pg = dev_get_drvdata(&rpdev->dev); in pmic_pdcharger_ulog_rpmsg_callback()
108 opcode = le32_to_cpu(hdr->opcode); in pmic_pdcharger_ulog_rpmsg_callback()
[all …]
/linux/arch/arm64/boot/dts/mediatek/
H A Dmt8186-corsola.dtsi1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
5 /dts-v1/;
7 #include <dt-bindings/pinctrl/mt8186-pinfunc.h>
8 #include <dt-bindings/gpio/gpio.h>
9 #include <dt-bindings/input/input.h>
10 #include <dt-bindings/input/gpio-keys.h>
11 #include <dt-bindings/regulator/mediatek,mt6397-regulator.h>
26 stdout-path = "serial0:115200n8";
35 backlight_lcd0: backlight-lcd0 {
36 compatible = "pwm-backlight";
[all …]
/linux/drivers/bluetooth/
H A Dbtqcomsmd.c1 // SPDX-License-Identifier: GPL-2.0-only
9 #include <linux/rpmsg.h>
35 hdev->stat.err_rx++; in btqcomsmd_recv()
36 return -ENOMEM; in btqcomsmd_recv()
50 btq->hdev->stat.byte_rx += count; in btqcomsmd_acl_callback()
51 return btqcomsmd_recv(btq->hdev, HCI_ACLDATA_PKT, data, count); in btqcomsmd_acl_callback()
59 btq->hdev->stat.byte_rx += count; in btqcomsmd_cmd_callback()
60 return btqcomsmd_recv(btq->hdev, HCI_EVENT_PKT, data, count); in btqcomsmd_cmd_callback()
70 ret = rpmsg_send(btq->acl_channel, skb->data, skb->len); in btqcomsmd_send()
72 hdev->stat.err_tx++; in btqcomsmd_send()
[all …]

12