diff options
Diffstat (limited to 'Documentation/rapidio/sysfs.txt')
-rw-r--r-- | Documentation/rapidio/sysfs.txt | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/Documentation/rapidio/sysfs.txt b/Documentation/rapidio/sysfs.txt new file mode 100644 index 000000000000..97f71ce575d6 --- /dev/null +++ b/Documentation/rapidio/sysfs.txt | |||
@@ -0,0 +1,90 @@ | |||
1 | RapidIO sysfs Files | ||
2 | |||
3 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
4 | |||
5 | 1. Device Subdirectories | ||
6 | ------------------------ | ||
7 | |||
8 | For each RapidIO device, the RapidIO subsystem creates files in an individual | ||
9 | subdirectory with the following name, /sys/bus/rapidio/devices/<device_name>. | ||
10 | |||
11 | The format of device_name is "nn:d:iiii", where: | ||
12 | |||
13 | nn - two-digit hexadecimal ID of RapidIO network where the device resides | ||
14 | d - device typr: 'e' - for endpoint or 's' - for switch | ||
15 | iiii - four-digit device destID for endpoints, or switchID for switches | ||
16 | |||
17 | For example, below is a list of device directories that represents a typical | ||
18 | RapidIO network with one switch, one host, and two agent endpoints, as it is | ||
19 | seen by the enumerating host (destID = 1): | ||
20 | |||
21 | /sys/bus/rapidio/devices/00:e:0000 | ||
22 | /sys/bus/rapidio/devices/00:e:0002 | ||
23 | /sys/bus/rapidio/devices/00:s:0001 | ||
24 | |||
25 | NOTE: An enumerating or discovering endpoint does not create a sysfs entry for | ||
26 | itself, this is why an endpoint with destID=1 is not shown in the list. | ||
27 | |||
28 | 2. Attributes Common for All Devices | ||
29 | ------------------------------------ | ||
30 | |||
31 | Each device subdirectory contains the following informational read-only files: | ||
32 | |||
33 | did - returns the device identifier | ||
34 | vid - returns the device vendor identifier | ||
35 | device_rev - returns the device revision level | ||
36 | asm_did - returns identifier for the assembly containing the device | ||
37 | asm_rev - returns revision level of the assembly containing the device | ||
38 | asm_vid - returns vendor identifier of the assembly containing the device | ||
39 | destid - returns device destination ID assigned by the enumeration routine | ||
40 | (see 4.1 for switch specific details) | ||
41 | lprev - returns name of previous device (switch) on the path to the device | ||
42 | that that owns this attribute | ||
43 | |||
44 | In addition to the files listed above, each device has a binary attribute file | ||
45 | that allows read/write access to the device configuration registers using | ||
46 | the RapidIO maintenance transactions: | ||
47 | |||
48 | config - reads from and writes to the device configuration registers. | ||
49 | |||
50 | This attribute is similar in behavior to the "config" attribute of PCI devices | ||
51 | and provides an access to the RapidIO device registers using standard file read | ||
52 | and write operations. | ||
53 | |||
54 | 3. Endpoint Device Attributes | ||
55 | ----------------------------- | ||
56 | |||
57 | Currently Linux RapidIO subsystem does not create any endpoint specific sysfs | ||
58 | attributes. It is possible that RapidIO master port drivers and endpoint device | ||
59 | drivers will add their device-specific sysfs attributes but such attributes are | ||
60 | outside the scope of this document. | ||
61 | |||
62 | 4. Switch Device Attributes | ||
63 | --------------------------- | ||
64 | |||
65 | RapidIO switches have additional attributes in sysfs. RapidIO subsystem supports | ||
66 | common and device-specific sysfs attributes for switches. Because switches are | ||
67 | integrated into the RapidIO subsystem, it offers a method to create | ||
68 | device-specific sysfs attributes by specifying a callback function that may be | ||
69 | set by the switch initialization routine during enumeration or discovery process. | ||
70 | |||
71 | 4.1 Common Switch Attributes | ||
72 | |||
73 | routes - reports switch routing information in "destID port" format. This | ||
74 | attribute reports only valid routing table entries, one line for | ||
75 | each entry. | ||
76 | destid - device destination ID that defines a route to the switch | ||
77 | hopcount - number of hops on the path to the switch | ||
78 | lnext - returns names of devices linked to the switch except one of a device | ||
79 | linked to the ingress port (reported as "lprev"). This is an array | ||
80 | names with number of lines equal to number of ports in switch. If | ||
81 | a switch port has no attached device, returns "null" instead of | ||
82 | a device name. | ||
83 | |||
84 | 4.2 Device-specific Switch Attributes | ||
85 | |||
86 | Device-specific switch attributes are listed for each RapidIO switch driver | ||
87 | that exports additional attributes. | ||
88 | |||
89 | IDT_GEN2: | ||
90 | errlog - reads contents of device error log until it is empty. | ||