12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- RapidIO sysfs Files
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- 1. Device Subdirectories
- ------------------------
- For each RapidIO device, the RapidIO subsystem creates files in an individual
- subdirectory with the following name, /sys/bus/rapidio/devices/<device_name>.
- The format of device_name is "nn:d:iiii", where:
- nn - two-digit hexadecimal ID of RapidIO network where the device resides
- d - device typr: 'e' - for endpoint or 's' - for switch
- iiii - four-digit device destID for endpoints, or switchID for switches
- For example, below is a list of device directories that represents a typical
- RapidIO network with one switch, one host, and two agent endpoints, as it is
- seen by the enumerating host (destID = 1):
- /sys/bus/rapidio/devices/00:e:0000
- /sys/bus/rapidio/devices/00:e:0002
- /sys/bus/rapidio/devices/00:s:0001
- NOTE: An enumerating or discovering endpoint does not create a sysfs entry for
- itself, this is why an endpoint with destID=1 is not shown in the list.
- 2. Attributes Common for All Devices
- ------------------------------------
- Each device subdirectory contains the following informational read-only files:
- did - returns the device identifier
- vid - returns the device vendor identifier
- device_rev - returns the device revision level
- asm_did - returns identifier for the assembly containing the device
- asm_rev - returns revision level of the assembly containing the device
- asm_vid - returns vendor identifier of the assembly containing the device
- destid - returns device destination ID assigned by the enumeration routine
- (see 4.1 for switch specific details)
- lprev - returns name of previous device (switch) on the path to the device
- that that owns this attribute
- In addition to the files listed above, each device has a binary attribute file
- that allows read/write access to the device configuration registers using
- the RapidIO maintenance transactions:
- config - reads from and writes to the device configuration registers.
- This attribute is similar in behavior to the "config" attribute of PCI devices
- and provides an access to the RapidIO device registers using standard file read
- and write operations.
- 3. Endpoint Device Attributes
- -----------------------------
- Currently Linux RapidIO subsystem does not create any endpoint specific sysfs
- attributes. It is possible that RapidIO master port drivers and endpoint device
- drivers will add their device-specific sysfs attributes but such attributes are
- outside the scope of this document.
- 4. Switch Device Attributes
- ---------------------------
- RapidIO switches have additional attributes in sysfs. RapidIO subsystem supports
- common and device-specific sysfs attributes for switches. Because switches are
- integrated into the RapidIO subsystem, it offers a method to create
- device-specific sysfs attributes by specifying a callback function that may be
- set by the switch initialization routine during enumeration or discovery process.
- 4.1 Common Switch Attributes
- routes - reports switch routing information in "destID port" format. This
- attribute reports only valid routing table entries, one line for
- each entry.
- destid - device destination ID that defines a route to the switch
- hopcount - number of hops on the path to the switch
- lnext - returns names of devices linked to the switch except one of a device
- linked to the ingress port (reported as "lprev"). This is an array
- names with number of lines equal to number of ports in switch. If
- a switch port has no attached device, returns "null" instead of
- a device name.
- 4.2 Device-specific Switch Attributes
- Device-specific switch attributes are listed for each RapidIO switch driver
- that exports additional attributes.
- IDT_GEN2:
- errlog - reads contents of device error log until it is empty.
|