summaryrefslogtreecommitdiff
path: root/Documentation/ABI/testing/sysfs-bus-rpmsg
blob: 990fcc42093539b77ac3d4918d0c700a1be410c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
What:		/sys/bus/rpmsg/devices/.../name
Date:		June 2011
KernelVersion:	3.3
Contact:	Ohad Ben-Cohen <ohad@wizery.com>
Description:
		Every rpmsg device is a communication channel with a remote
		processor. Channels are identified with a (textual) name,
		which is maximum 32 bytes long (defined as RPMSG_NAME_SIZE in
		rpmsg.h).

		This sysfs entry contains the name of this channel.

What:		/sys/bus/rpmsg/devices/.../src
Date:		June 2011
KernelVersion:	3.3
Contact:	Ohad Ben-Cohen <ohad@wizery.com>
Description:
		Every rpmsg device is a communication channel with a remote
		processor. Channels have a local ("source") rpmsg address,
		and remote ("destination") rpmsg address. When an entity
		starts listening on one end of a channel, it assigns it with
		a unique rpmsg address (a 32 bits integer). This way when
		inbound messages arrive to this address, the rpmsg core
		dispatches them to the listening entity (a kernel driver).

		This sysfs entry contains the src (local) rpmsg address
		of this channel. If it contains 0xffffffff, then an address
		wasn't assigned (can happen if no driver exists for this
		channel).

What:		/sys/bus/rpmsg/devices/.../dst
Date:		June 2011
KernelVersion:	3.3
Contact:	Ohad Ben-Cohen <ohad@wizery.com>
Description:
		Every rpmsg device is a communication channel with a remote
		processor. Channels have a local ("source") rpmsg address,
		and remote ("destination") rpmsg address. When an entity
		starts listening on one end of a channel, it assigns it with
		a unique rpmsg address (a 32 bits integer). This way when
		inbound messages arrive to this address, the rpmsg core
		dispatches them to the listening entity.

		This sysfs entry contains the dst (remote) rpmsg address
		of this channel. If it contains 0xffffffff, then an address
		wasn't assigned (can happen if the kernel driver that
		is attached to this channel is exposing a service to the
		remote processor. This make it a local rpmsg server,
		and it is listening for inbound messages that may be sent
		from any remote rpmsg client; it is not bound to a single
		remote entity).

What:		/sys/bus/rpmsg/devices/.../announce
Date:		June 2011
KernelVersion:	3.3
Contact:	Ohad Ben-Cohen <ohad@wizery.com>
Description:
		Every rpmsg device is a communication channel with a remote
		processor. Channels are identified by a textual name (see
		/sys/bus/rpmsg/devices/.../name above) and have a local
		("source") rpmsg address, and remote ("destination") rpmsg
		address.

		A channel is first created when an entity, whether local
		or remote, starts listening on it for messages (and is thus
		called an rpmsg server).

		When that happens, a "name service" announcement is sent
		to the other processor, in order to let it know about the
		creation of the channel (this way remote clients know they
		can start sending messages).

		This sysfs entry tells us whether the channel is a local
		server channel that is announced (values are either
		true or false).

What:		/sys/bus/rpmsg/devices/.../driver_override
Date:		April 2018
KernelVersion:	4.18
Contact:	Bjorn Andersson <bjorn.andersson@linaro.org>
Description:
		Every rpmsg device is a communication channel with a remote
		processor. Channels are identified by a textual name (see
		/sys/bus/rpmsg/devices/.../name above) and have a local
		("source") rpmsg address, and remote ("destination") rpmsg
		address.

		The listening entity (or client) which communicates with a
		remote processor is referred as rpmsg driver. The rpmsg device
		and rpmsg driver are matched based on rpmsg device name and
		rpmsg driver ID table.

		This sysfs entry allows the rpmsg driver for a rpmsg device
		to be specified which will override standard OF, ID table
		and name matching.