| /OK3568_Linux_fs/kernel/Documentation/ABI/testing/ |
| H A D | sysfs-bus-rpmsg | 1 What: /sys/bus/rpmsg/devices/.../name 6 Every rpmsg device is a communication channel with a remote 9 rpmsg.h). 13 What: /sys/bus/rpmsg/devices/.../src 18 Every rpmsg device is a communication channel with a remote 19 processor. Channels have a local ("source") rpmsg address, 20 and remote ("destination") rpmsg address. When an entity 22 a unique rpmsg address (a 32 bits integer). This way when 23 inbound messages arrive to this address, the rpmsg core 26 This sysfs entry contains the src (local) rpmsg address [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/staging/ |
| H A D | rpmsg.rst | 2 Remote Processor Messaging (rpmsg) Framework 7 This document describes the rpmsg bus and how to write rpmsg drivers. 8 To learn how to add rpmsg support for new platforms, check out remoteproc.txt 37 Rpmsg is a virtio-based messaging bus that allows kernel drivers to communicate 41 When writing a driver that exposes rpmsg communication to userland, please 50 desired to limit userland to specific rpmsg channels (see definition below) 54 Every rpmsg device is a communication channel with a remote processor (thus 55 rpmsg devices are called channels). Channels are identified by a textual name 56 and have a local ("source") rpmsg address, and remote ("destination") rpmsg 60 a unique rpmsg local address (a 32-bit integer). This way when inbound messages [all …]
|
| H A D | remoteproc.rst | 20 duplicated. In addition, this framework also adds rpmsg virtio devices 23 handlers, and then all rpmsg drivers will then just work 24 (for more information about the virtio-based rpmsg bus and its drivers, 25 please read Documentation/staging/rpmsg.rst). 211 handlers. If rpmsg/virtio functionality is also desired, then the ->kick handler 354 rpmsg virtio devices this way, if desired). 358 using the rpmsg bus (similar to how we already do dynamic allocations of 359 rpmsg channels; read more about it in rpmsg.txt).
|
| /OK3568_Linux_fs/kernel/drivers/rpmsg/ |
| H A D | Kconfig | 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 16 receive rpmsg packets. 21 select RPMSG 29 select RPMSG 55 select RPMSG [all …]
|
| H A D | rpmsg_core.c | 16 #include <linux/rpmsg.h> 25 * @rpdev: rpmsg channel device 28 * @chinfo: channel_info with the local rpmsg address to bind with @cb 30 * Every rpmsg address in the system is bound to an rx callback (so when 31 * inbound messages arrive, they are dispatched by the rpmsg bus using the 35 * bind a callback, and possibly some private data too, to an rpmsg address 39 * Simple rpmsg drivers need not call rpmsg_create_ept, because an endpoint 40 * is already created for them when they are probed by the rpmsg bus 41 * (using the rx callback provided when they registered to the rpmsg bus). 44 * endpoint, their rx callback is bound to their rpmsg address, and when [all …]
|
| H A D | rpmsg_char.c | 9 * Based on rpmsg performance statistics driver by Michal Simek, which in turn 10 * was based on TI & Google OMX rpmsg driver. 19 #include <linux/rpmsg.h> 23 #include <uapi/linux/rpmsg.h> 44 * @rpdev: underlaying rpmsg device 58 * @rpdev: underlaying rpmsg device 61 * @ept: rpmsg endpoint reference, when open 377 dev_set_name(dev, "rpmsg%d", ret); in rpmsg_eptdev_create() 536 ret = alloc_chrdev_region(&rpmsg_major, 0, RPMSG_DEV_MAX, "rpmsg"); in rpmsg_char_init() 538 pr_err("rpmsg: failed to allocate char dev region\n"); in rpmsg_char_init() [all …]
|
| H A D | rockchip_rpmsg_test.c | 11 #include <linux/rpmsg.h> 12 #include <linux/rpmsg/rockchip_rpmsg.h> 16 #define LINUX_TEST_MSG_2 "Rockchip rpmsg linux test pingpong!" 36 dev_info(&rp->dev, "Rockchip rpmsg test exit!\n"); in rockchip_rpmsg_test_cb() 84 dev_info(&rp->dev, "rockchip rpmsg test is removed\n"); in rockchip_rpmsg_test_remove() 88 { .name = "rpmsg-ap3-ch0" },
|
| H A D | rockchip_rpmsg.c | 20 #include <linux/rpmsg/rockchip_rpmsg.h> 74 dev_dbg(dev, "rpmsg master: receive cmd=0x%x data=0x%x\n", in rk_rpmsg_rx_callback() 77 dev_err(dev, "rpmsg master: mailbox data error!\n"); in rk_rpmsg_rx_callback() 82 dev_dbg(dev, "rpmsg master: rx link_id=0x%x flag=0x%x\n", link_id, rpdev->flags); in rk_rpmsg_rx_callback() 106 dev_dbg(dev, "rpmsg first_notify\n"); in rk_rpmsg_notify() 213 /* Each rpmsg instance has two virtqueues. vqs[0] is rvq and vqs[1] is tvq */ in rk_rpmsg_find_vqs() 309 dev_info(dev, "rockchip rpmsg platform probe.\n"); in rockchip_rpmsg_probe() 318 rpdev->mbox_rx_chan = mbox_request_channel_byname(cl, "rpmsg-rx"); in rockchip_rpmsg_probe() 324 rpdev->mbox_tx_chan = mbox_request_channel_byname(cl, "rpmsg-tx"); in rockchip_rpmsg_probe() 403 { .compatible = "rockchip,rk3562-rpmsg", .data = (void *)RK3562, }, [all …]
|
| H A D | virtio_rpmsg_bus.c | 21 #include <linux/rpmsg.h> 53 * This structure stores the rpmsg state of a given virtio remote processor 73 /* The feature bitmap for virtio rpmsg */ 77 * struct rpmsg_hdr - common header for all rpmsg messages 85 * Every message sent(/received) on the rpmsg bus begins with this header. 104 * rpmsg channel (i.e device) is created/destroyed. In turn, the ->probe() 105 * or ->remove() handler of the appropriate rpmsg driver will be invoked 126 * struct virtio_rpmsg_channel - rpmsg channel descriptor 127 * @rpdev: the rpmsg channel device 130 * This structure stores the channel that links the rpmsg device to the virtio [all …]
|
| H A D | mtk_rpmsg.c | 10 #include <linux/rpmsg/mtk_rpmsg.h> 41 * messages, an appropriate rpmsg channel (i.e device) is created. In turn, the 42 * ->probe() handler of the appropriate rpmsg driver will be invoked 80 dev_warn(&ept->rpdev->dev, "rpmsg handler return error = %d", in mtk_rpmsg_ipi_handler() 186 ret = of_property_read_string(child, "mtk,rpmsg-name", &name); in mtk_rpmsg_match_device_subnode() 285 * the name service ept does _not_ belong to a real rpmsg channel, in mtk_rpmsg_ns_cb() 286 * and is handled by the rpmsg bus itself. in mtk_rpmsg_ns_cb() 302 dev_err(dev, "create rpmsg device failed\n"); in mtk_rpmsg_ns_cb() 410 MODULE_DESCRIPTION("MediaTek scp rpmsg driver");
|
| H A D | rpmsg_internal.h | 16 #include <linux/rpmsg.h> 28 * Indirection table for the operations that a rpmsg backend should implement. 54 * Indirection table for the operations that a rpmsg backend should implement. 88 * basis for the rpmsg chrdev.
|
| /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/rpmsg/ |
| H A D | rpmsg-rockchip.txt | 1 * Rockchip RPMsg Platform Driver 3 The Rockchip RPMsg Platform Driver is used for Remote Processors Messaging. 8 "rockchip,rk3568-rpmsg" for rk3568 SoCs. 9 - mbox-names: mailbox name for "rpmsg-rx" or "rpmsg-tx". 10 - mboxes: mailbox channel for rpmsg. 11 - rockchip,vdev-nums: number of rpmsg instance. 12 - rockchip,link-id: link_id of rpmsg instance. 4bit for master cpu_id and 4bit 19 rpmsg: rpmsg { 20 compatible = "rockchip,rk3568-rpmsg"; 21 mbox-names = "rpmsg-rx", "rpmsg-tx"; [all …]
|
| /OK3568_Linux_fs/kernel/include/linux/ |
| H A D | rpmsg.h | 42 * rpmsg_device - device that belong to the rpmsg bus 44 * @id: device id (used to match between rpmsg drivers and devices) 48 * @ept: the rpmsg endpoint of this channel 49 * @announce: if set, rpmsg will announce the creation/removal of this channel 67 * struct rpmsg_endpoint - binds a local rpmsg address to its user 68 * @rpdev: rpmsg channel device 73 * @addr: local rpmsg address 76 * In essence, an rpmsg endpoint represents a listener on the rpmsg bus, as 77 * it binds an rpmsg address with an rx callback handler. 79 * Simple rpmsg drivers shouldn't use this struct directly, because [all …]
|
| /OK3568_Linux_fs/kernel/drivers/platform/chrome/ |
| H A D | cros_ec_rpmsg.c | 13 #include <linux/rpmsg.h> 23 * struct cros_ec_rpmsg_response - rpmsg message format from from EC. 36 * struct cros_ec_rpmsg - information about a EC over rpmsg. 38 * @rpdev: rpmsg device we are connected to 41 * @ept: The rpmsg endpoint of this channel. 55 * cros_ec_cmd_xfer_rpmsg - Transfer a message over rpmsg and receive the reply 72 * cros_ec_pkt_xfer_rpmsg - Transfer a packet over rpmsg and receive the reply 97 dev_err(ec_dev->dev, "rpmsg send failed\n"); in cros_ec_pkt_xfer_rpmsg() 104 dev_err(ec_dev->dev, "rpmsg send timeout\n"); in cros_ec_pkt_xfer_rpmsg() 168 dev_warn(ec_dev->dev, "rpmsg received empty response"); in cros_ec_rpmsg_callback() [all …]
|
| /OK3568_Linux_fs/kernel/arch/arm64/boot/dts/rockchip/ |
| H A D | rk3562-amp.dtsi | 20 rpmsg: rpmsg@a0000000 { label 21 compatible = "rockchip,rk3562-rpmsg"; 22 mbox-names = "rpmsg-rx", "rpmsg-tx"; 43 rpmsg_reserved: rpmsg@a0000000 { 48 rpmsg_dma_reserved: rpmsg-dma@a0400000 {
|
| /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/mfd/ |
| H A D | google,cros-ec.yaml | 30 For implementations of the EC is connected through RPMSG. 31 const: google,cros-ec-rpmsg 62 mtk,rpmsg-name: 64 Must be defined if the cros-ec is a rpmsg device for a Mediatek 65 ARM Cortex M4 Co-processor. Contains the name pf the rpmsg 66 device. Used to match the subnode to the rpmsg device announced by 139 - google,cros-ec-rpmsg 186 # Example for RPMSG 190 compatible = "google,cros-ec-rpmsg";
|
| /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/remoteproc/ |
| H A D | mtk,scp.txt | 20 Subnodes of the SCP represent rpmsg devices. The names of the devices are not 22 for the rpmsg devices - but must contain the following property: 24 - mtk,rpmsg-name Contains the name for the rpmsg device. Used to match 25 the subnode to rpmsg device announced by SCP.
|
| /OK3568_Linux_fs/kernel/include/linux/rpmsg/ |
| H A D | rockchip_rpmsg.h | 8 /* rpmsg flag bit definition 20 /* rpmsg buffer size is formed by payload size and struct rpmsg_hdr */ 22 /* rpmsg buffer count for each direction */ 24 /* rpmsg endpoint size is equal to rpmsg buffer size */
|
| /OK3568_Linux_fs/kernel/samples/rpmsg/ |
| H A D | rpmsg_client_sample.c | 14 #include <linux/rpmsg.h> 77 dev_info(&rpdev->dev, "rpmsg sample client driver is removed\n"); in rpmsg_sample_remove() 81 { .name = "rpmsg-client-sample" }, 84 MODULE_DEVICE_TABLE(rpmsg, rpmsg_driver_sample_id_table);
|
| /OK3568_Linux_fs/kernel/drivers/media/platform/sti/delta/ |
| H A D | delta-ipc.c | 7 #include <linux/rpmsg.h> 123 "%s ipc: failed to open, rpmsg is not initialized\n", in delta_ipc_open() 172 /* build rpmsg message */ in delta_ipc_open() 247 "%s ipc: failed to set stream, rpmsg is not initialized\n", in delta_ipc_set_stream() 278 /* build rpmsg message */ in delta_ipc_set_stream() 338 "%s ipc: failed to decode, rpmsg is not initialized\n", in delta_ipc_decode() 389 /* build rpmsg message */ in delta_ipc_decode() 456 "%s ipc: failed to close, rpmsg is not initialized\n", in delta_ipc_close() 461 /* build rpmsg message */ in delta_ipc_close() 570 {.name = "rpmsg-delta"},
|
| /OK3568_Linux_fs/kernel/samples/ |
| H A D | Kconfig | 95 tristate "Build rpmsg client sample -- loadable modules only" 96 depends on RPMSG && m 98 Build an rpmsg client sample driver, which demonstrates how 100 the rpmsg bus.
|
| /OK3568_Linux_fs/kernel/init/ |
| H A D | Kconfig.gki | 153 bool "Hidden RPMSG configuration needed for GKI" 154 select RPMSG 156 Dummy config option used to enable the hidden RPMSG config. 161 out-of-kernel build RPMSG drivers, say N here.
|
| /OK3568_Linux_fs/kernel/android/ |
| H A D | abi_gki_aarch64_imx | 1449 # required by gpio-imx-rpmsg.ko 1566 # required by imx-pcm-rpmsg.ko 2066 # required by rtc-imx-rpmsg.ko 2166 # required by snd-soc-imx-pcm512x-rpmsg.ko 2172 # required by snd-soc-imx-rpmsg.ko 2176 # required by snd-soc-rpmsg-ak4497.ko 2181 # required by snd-soc-rpmsg-pcm512x.ko
|
| /OK3568_Linux_fs/kernel/drivers/net/wireless/ath/wcn36xx/ |
| H A D | Kconfig | 6 depends on RPMSG || RPMSG=n
|
| /OK3568_Linux_fs/kernel/net/qrtr/ |
| H A D | Kconfig | 19 depends on RPMSG || (COMPILE_TEST && RPMSG=n)
|