162306a36Sopenharmony_ciWhat: /sys/bus/rpmsg/devices/.../name 262306a36Sopenharmony_ciDate: June 2011 362306a36Sopenharmony_ciKernelVersion: 3.3 462306a36Sopenharmony_ciContact: Ohad Ben-Cohen <ohad@wizery.com> 562306a36Sopenharmony_ciDescription: 662306a36Sopenharmony_ci Every rpmsg device is a communication channel with a remote 762306a36Sopenharmony_ci processor. Channels are identified with a (textual) name, 862306a36Sopenharmony_ci which is maximum 32 bytes long (defined as RPMSG_NAME_SIZE in 962306a36Sopenharmony_ci rpmsg.h). 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci This sysfs entry contains the name of this channel. 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ciWhat: /sys/bus/rpmsg/devices/.../src 1462306a36Sopenharmony_ciDate: June 2011 1562306a36Sopenharmony_ciKernelVersion: 3.3 1662306a36Sopenharmony_ciContact: Ohad Ben-Cohen <ohad@wizery.com> 1762306a36Sopenharmony_ciDescription: 1862306a36Sopenharmony_ci Every rpmsg device is a communication channel with a remote 1962306a36Sopenharmony_ci processor. Channels have a local ("source") rpmsg address, 2062306a36Sopenharmony_ci and remote ("destination") rpmsg address. When an entity 2162306a36Sopenharmony_ci starts listening on one end of a channel, it assigns it with 2262306a36Sopenharmony_ci a unique rpmsg address (a 32 bits integer). This way when 2362306a36Sopenharmony_ci inbound messages arrive to this address, the rpmsg core 2462306a36Sopenharmony_ci dispatches them to the listening entity (a kernel driver). 2562306a36Sopenharmony_ci 2662306a36Sopenharmony_ci This sysfs entry contains the src (local) rpmsg address 2762306a36Sopenharmony_ci of this channel. If it contains 0xffffffff, then an address 2862306a36Sopenharmony_ci wasn't assigned (can happen if no driver exists for this 2962306a36Sopenharmony_ci channel). 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ciWhat: /sys/bus/rpmsg/devices/.../dst 3262306a36Sopenharmony_ciDate: June 2011 3362306a36Sopenharmony_ciKernelVersion: 3.3 3462306a36Sopenharmony_ciContact: Ohad Ben-Cohen <ohad@wizery.com> 3562306a36Sopenharmony_ciDescription: 3662306a36Sopenharmony_ci Every rpmsg device is a communication channel with a remote 3762306a36Sopenharmony_ci processor. Channels have a local ("source") rpmsg address, 3862306a36Sopenharmony_ci and remote ("destination") rpmsg address. When an entity 3962306a36Sopenharmony_ci starts listening on one end of a channel, it assigns it with 4062306a36Sopenharmony_ci a unique rpmsg address (a 32 bits integer). This way when 4162306a36Sopenharmony_ci inbound messages arrive to this address, the rpmsg core 4262306a36Sopenharmony_ci dispatches them to the listening entity. 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ci This sysfs entry contains the dst (remote) rpmsg address 4562306a36Sopenharmony_ci of this channel. If it contains 0xffffffff, then an address 4662306a36Sopenharmony_ci wasn't assigned (can happen if the kernel driver that 4762306a36Sopenharmony_ci is attached to this channel is exposing a service to the 4862306a36Sopenharmony_ci remote processor. This make it a local rpmsg server, 4962306a36Sopenharmony_ci and it is listening for inbound messages that may be sent 5062306a36Sopenharmony_ci from any remote rpmsg client; it is not bound to a single 5162306a36Sopenharmony_ci remote entity). 5262306a36Sopenharmony_ci 5362306a36Sopenharmony_ciWhat: /sys/bus/rpmsg/devices/.../announce 5462306a36Sopenharmony_ciDate: June 2011 5562306a36Sopenharmony_ciKernelVersion: 3.3 5662306a36Sopenharmony_ciContact: Ohad Ben-Cohen <ohad@wizery.com> 5762306a36Sopenharmony_ciDescription: 5862306a36Sopenharmony_ci Every rpmsg device is a communication channel with a remote 5962306a36Sopenharmony_ci processor. Channels are identified by a textual name (see 6062306a36Sopenharmony_ci /sys/bus/rpmsg/devices/.../name above) and have a local 6162306a36Sopenharmony_ci ("source") rpmsg address, and remote ("destination") rpmsg 6262306a36Sopenharmony_ci address. 6362306a36Sopenharmony_ci 6462306a36Sopenharmony_ci A channel is first created when an entity, whether local 6562306a36Sopenharmony_ci or remote, starts listening on it for messages (and is thus 6662306a36Sopenharmony_ci called an rpmsg server). 6762306a36Sopenharmony_ci 6862306a36Sopenharmony_ci When that happens, a "name service" announcement is sent 6962306a36Sopenharmony_ci to the other processor, in order to let it know about the 7062306a36Sopenharmony_ci creation of the channel (this way remote clients know they 7162306a36Sopenharmony_ci can start sending messages). 7262306a36Sopenharmony_ci 7362306a36Sopenharmony_ci This sysfs entry tells us whether the channel is a local 7462306a36Sopenharmony_ci server channel that is announced (values are either 7562306a36Sopenharmony_ci true or false). 7662306a36Sopenharmony_ci 7762306a36Sopenharmony_ciWhat: /sys/bus/rpmsg/devices/.../driver_override 7862306a36Sopenharmony_ciDate: April 2018 7962306a36Sopenharmony_ciKernelVersion: 4.18 8062306a36Sopenharmony_ciContact: Bjorn Andersson <bjorn.andersson@linaro.org> 8162306a36Sopenharmony_ciDescription: 8262306a36Sopenharmony_ci Every rpmsg device is a communication channel with a remote 8362306a36Sopenharmony_ci processor. Channels are identified by a textual name (see 8462306a36Sopenharmony_ci /sys/bus/rpmsg/devices/.../name above) and have a local 8562306a36Sopenharmony_ci ("source") rpmsg address, and remote ("destination") rpmsg 8662306a36Sopenharmony_ci address. 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ci The listening entity (or client) which communicates with a 8962306a36Sopenharmony_ci remote processor is referred as rpmsg driver. The rpmsg device 9062306a36Sopenharmony_ci and rpmsg driver are matched based on rpmsg device name and 9162306a36Sopenharmony_ci rpmsg driver ID table. 9262306a36Sopenharmony_ci 9362306a36Sopenharmony_ci This sysfs entry allows the rpmsg driver for a rpmsg device 9462306a36Sopenharmony_ci to be specified which will override standard OF, ID table 9562306a36Sopenharmony_ci and name matching. 96