diff options
author | Johan Hovold <johan@hovoldconsulting.com> | 2016-04-23 18:47:24 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@google.com> | 2016-04-25 11:08:30 -0700 |
commit | b15d97d77017dc168c74c5e9aacfe14ff74dcbe9 (patch) | |
tree | 4fe55aad777a3d5614cb4e61e0bf54a7fe63b5aa /drivers/staging/greybus/Documentation | |
parent | 844fcbfeb6491d95b7e19b4705f9eb576a210536 (diff) |
greybus: core: add module abstraction
Add Greybus module abstraction that will be used to implement controlled
module removal (eject) and represent module geometry.
Greybus module devices correspond to physical modules and have one or
more interfaces. Modules have an id that is identical to the id of their
primary interface, which in turn is the interface with lowest numbered
id. The module name is constructed from the bus and module id:
<bus_id>-<module_id>
Interfaces, bundles, and control devices are consequently renamed as
<bus_id>-<module_id>.<interface_id>
<bus_id>-<module_id>.<interface_id>.<bundle_id>
<bus_id>-<module_id>.<interface_id>.ctrl
As before, interface ids (and therefore in a sense now also module ids)
correspond to physical interface positions on the frame.
Modules have the following attributes:
module_id
num_interfaces
where module_id is the id of the module and num_interface the number of
interfaces the module has.
Note that until SVC module-size detection has been implemented, all
interfaces are considered to be part of 1x2 modules. Specifically, the
two interfaces of a 2x2 module will be presented as two 1x2 modules for
now.
Signed-off-by: Johan Hovold <johan@hovoldconsulting.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Diffstat (limited to 'drivers/staging/greybus/Documentation')
-rw-r--r-- | drivers/staging/greybus/Documentation/sysfs-bus-greybus | 63 |
1 files changed, 43 insertions, 20 deletions
diff --git a/drivers/staging/greybus/Documentation/sysfs-bus-greybus b/drivers/staging/greybus/Documentation/sysfs-bus-greybus index cf6d3eec793a..41ffc40b8efb 100644 --- a/drivers/staging/greybus/Documentation/sysfs-bus-greybus +++ b/drivers/staging/greybus/Documentation/sysfs-bus-greybus @@ -6,22 +6,45 @@ Description: The "root" greybus device for the Greybus device tree, or bus, where N is a dynamically assigned 1-based id. -What: /sys/bus/greybus/device/N-I +What: /sys/bus/greybus/device/N-M +Date: March 2016 +KernelVersion: 4.XX +Contact: Greg Kroah-Hartman <greg@kroah.com> +Description: + A Module M on the bus N, where M is the 1-byte interface + ID of the module's primary interface. + +What: /sys/bus/greybus/device/N-M/module_id +Date: March 2016 +KernelVersion: 4.XX +Contact: Greg Kroah-Hartman <greg@kroah.com> +Description: + The ID of a Greybus module, corresponding to the ID of its + primary interface. + +What: /sys/bus/greybus/device/N-M/num_interfaces +Date: March 2016 +KernelVersion: 4.XX +Contact: Greg Kroah-Hartman <greg@kroah.com> +Description: + The number of interfaces of a module. + +What: /sys/bus/greybus/device/N-M.I Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> Description: - An Interface I on the bus N, where I is the 1-byte interface - ID. + An Interface I on the bus N and module N-M, where I is the + 1-byte interface ID. -What: /sys/bus/greybus/device/N-I/current_now +What: /sys/bus/greybus/device/N-M.I/current_now Date: March 2016 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> Description: Current measurement of the interface in microamps (uA) -What: /sys/bus/greybus/device/N-I/ddbl1_manufacturer_id +What: /sys/bus/greybus/device/N-M.I/ddbl1_manufacturer_id Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> @@ -29,7 +52,7 @@ Description: Unipro Device Descriptor Block Level 1 manufacturer ID for the greybus Interface. -What: /sys/bus/greybus/device/N-I/ddbl1_product_id +What: /sys/bus/greybus/device/N-M.I/ddbl1_product_id Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> @@ -37,28 +60,28 @@ Description: Unipro Device Descriptor Block Level 1 product ID for the greybus Interface. -What: /sys/bus/greybus/device/N-I/interface_id +What: /sys/bus/greybus/device/N-M.I/interface_id Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> Description: The ID of a Greybus interface. -What: /sys/bus/greybus/device/N-I/power_now +What: /sys/bus/greybus/device/N-M.I/power_now Date: March 2016 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> Description: Power measurement of the interface in microwatts (uW) -What: /sys/bus/greybus/device/N-I/product_id +What: /sys/bus/greybus/device/N-M.I/product_id Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> Description: Product ID of a Greybus interface. -What: /sys/bus/greybus/device/N-I/serial_number +What: /sys/bus/greybus/device/N-M.I/serial_number Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> @@ -66,14 +89,14 @@ Description: Serial Number of the Greybus interface, represented by a 64 bit hexadecimal number. -What: /sys/bus/greybus/device/N-I/vendor_id +What: /sys/bus/greybus/device/N-M.I/vendor_id Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> Description: Vendor ID of a Greybus interface. -What: /sys/bus/greybus/device/N-I/version +What: /sys/bus/greybus/device/N-M.I/version Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> @@ -81,14 +104,14 @@ Description: Interface version represented as <16 bit major number>.<16 bit minor number>. -What: /sys/bus/greybus/device/N-I/voltage_now +What: /sys/bus/greybus/device/N-M.I/voltage_now Date: March 2016 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> Description: Voltage measurement of the interface in microvolts (uV) -What: /sys/bus/greybus/device/N-I.ctrl +What: /sys/bus/greybus/device/N-M.I.ctrl Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> @@ -96,21 +119,21 @@ Description: Abstract control device for interface I that represents the current mode of an enumerated Greybus interface. -What: /sys/bus/greybus/device/N-I.ctrl/product_string +What: /sys/bus/greybus/device/N-M.I.ctrl/product_string Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> Description: Product ID string of a Greybus interface. -What: /sys/bus/greybus/device/N-I.ctrl/vendor_string +What: /sys/bus/greybus/device/N-M.I.ctrl/vendor_string Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> Description: Vendor ID string of a Greybus interface. -What: /sys/bus/greybus/device/N-I.B +What: /sys/bus/greybus/device/N-M.I.B Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> @@ -118,21 +141,21 @@ Description: A bundle B on the Interface I, B is replaced by a 1-byte number representing the bundle. -What: /sys/bus/greybus/device/N-I.B/bundle_class +What: /sys/bus/greybus/device/N-M.I.B/bundle_class Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> Description: The greybus class of the bundle B. -What: /sys/bus/greybus/device/N-I.B/bundle_id +What: /sys/bus/greybus/device/N-M.I.B/bundle_id Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> Description: The interface-unique id of the bundle B. -What: /sys/bus/greybus/device/N-I.B/state +What: /sys/bus/greybus/device/N-M.I.B/state Date: October 2015 KernelVersion: 4.XX Contact: Greg Kroah-Hartman <greg@kroah.com> |