| /kernel/linux/linux-5.10/Documentation/ABI/testing/ |
| 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 …]
|
| /kernel/linux/linux-4.19/Documentation/ABI/testing/ |
| 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 …]
|
| /kernel/linux/linux-5.10/Documentation/staging/ |
| 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 …]
|
| 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).
|
| /kernel/linux/linux-4.19/Documentation/ |
| D | rpmsg.txt | 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 …]
|
| D | remoteproc.txt | 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/rpmsg.txt). 211 handlers. If rpmsg/virtio functionality is also desired, then the ->kick handler 350 rpmsg virtio devices this way, if desired). 354 using the rpmsg bus (similar to how we already do dynamic allocations of 355 rpmsg channels; read more about it in rpmsg.txt).
|
| /kernel/linux/linux-5.10/drivers/rpmsg/ |
| 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 …]
|
| 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 …]
|
| 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 378 dev_set_name(dev, "rpmsg%d", ret); in rpmsg_eptdev_create() 550 ret = alloc_chrdev_region(&rpmsg_major, 0, RPMSG_DEV_MAX, "rpmsg"); in rpmsg_char_init() 552 pr_err("rpmsg: failed to allocate char dev region\n"); in rpmsg_char_init() [all …]
|
| 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 …]
|
| 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() 283 * the name service ept does _not_ belong to a real rpmsg channel, in mtk_rpmsg_ns_cb() 284 * and is handled by the rpmsg bus itself. in mtk_rpmsg_ns_cb() 300 dev_err(dev, "create rpmsg device failed\n"); in mtk_rpmsg_ns_cb() 408 MODULE_DESCRIPTION("MediaTek scp rpmsg driver");
|
| D | rpmsg_internal.h | 15 #include <linux/rpmsg.h> 27 * Indirection table for the operations that a rpmsg backend should implement. 51 * Indirection table for the operations that a rpmsg backend should implement. 83 * basis for the rpmsg chrdev.
|
| /kernel/linux/linux-4.19/drivers/rpmsg/ |
| 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. 20 select RPMSG 46 select RPMSG 53 tristate "Virtio RPMSG bus driver" [all …]
|
| 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 …]
|
| 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 375 dev_set_name(dev, "rpmsg%d", ret); in rpmsg_eptdev_create() 547 ret = alloc_chrdev_region(&rpmsg_major, 0, RPMSG_DEV_MAX, "rpmsg"); in rpmsg_char_init() 549 pr_err("rpmsg: failed to allocate char dev region\n"); in rpmsg_char_init() [all …]
|
| D | virtio_rpmsg_bus.c | 26 #include <linux/rpmsg.h> 52 * This structure stores the rpmsg state of a given virtio remote processor 72 /* The feature bitmap for virtio rpmsg */ 76 * struct rpmsg_hdr - common header for all rpmsg messages 84 * Every message sent(/received) on the rpmsg bus begins with this header. 103 * rpmsg channel (i.e device) is created/destroyed. In turn, the ->probe() 104 * or ->remove() handler of the appropriate rpmsg driver will be invoked 212 * __ept_release() - deallocate an rpmsg endpoint 264 /* bind the endpoint to an rpmsg address (and allocate one if needed) */ in __rpmsg_create_ept() 293 * __rpmsg_destroy_ept() - destroy an existing rpmsg endpoint [all …]
|
| D | rpmsg_internal.h | 15 #include <linux/rpmsg.h> 27 * Indirection table for the operations that a rpmsg backend should implement. 50 * Indirection table for the operations that a rpmsg backend should implement. 82 * basis for the rpmsg chrdev.
|
| /kernel/linux/linux-5.10/include/linux/ |
| D | rpmsg.h | 41 * rpmsg_device - device that belong to the rpmsg bus 43 * @id: device id (used to match between rpmsg drivers and devices) 47 * @ept: the rpmsg endpoint of this channel 48 * @announce: if set, rpmsg will announce the creation/removal of this channel 65 * struct rpmsg_endpoint - binds a local rpmsg address to its user 66 * @rpdev: rpmsg channel device 70 * @addr: local rpmsg address 73 * In essence, an rpmsg endpoint represents a listener on the rpmsg bus, as 74 * it binds an rpmsg address with an rx callback handler. 76 * Simple rpmsg drivers shouldn't use this struct directly, because [all …]
|
| /kernel/linux/linux-4.19/include/linux/ |
| D | rpmsg.h | 41 * rpmsg_device - device that belong to the rpmsg bus 43 * @id: device id (used to match between rpmsg drivers and devices) 47 * @ept: the rpmsg endpoint of this channel 48 * @announce: if set, rpmsg will announce the creation/removal of this channel 65 * struct rpmsg_endpoint - binds a local rpmsg address to its user 66 * @rpdev: rpmsg channel device 70 * @addr: local rpmsg address 73 * In essence, an rpmsg endpoint represents a listener on the rpmsg bus, as 74 * it binds an rpmsg address with an rx callback handler. 76 * Simple rpmsg drivers shouldn't use this struct directly, because [all …]
|
| /kernel/linux/linux-5.10/drivers/platform/chrome/ |
| 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 …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/mfd/ |
| 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";
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/remoteproc/ |
| 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.
|
| /kernel/linux/linux-5.10/samples/rpmsg/ |
| 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);
|
| /kernel/linux/linux-4.19/samples/rpmsg/ |
| D | rpmsg_client_sample.c | 22 #include <linux/rpmsg.h> 83 dev_info(&rpdev->dev, "rpmsg sample client driver is removed\n"); in rpmsg_sample_remove() 87 { .name = "rpmsg-client-sample" }, 90 MODULE_DEVICE_TABLE(rpmsg, rpmsg_driver_sample_id_table);
|
| /kernel/linux/linux-4.19/samples/ |
| D | Kconfig | 77 tristate "Build rpmsg client sample -- loadable modules only" 78 depends on RPMSG && m 80 Build an rpmsg client sample driver, which demonstrates how 82 the rpmsg bus.
|