xref: /openbmc/linux/Documentation/ABI/testing/sysfs-bus-pci-drivers-ehci_hcd (revision 460aa020f56c974a3e7e5b5378b2355fec6a2c11)
1 What:		/sys/bus/pci/drivers/ehci_hcd/.../companion
2 		/sys/bus/usb/devices/usbN/../companion
3 Date:		January 2007
4 KernelVersion:	2.6.21
5 Contact:	Alan Stern <stern@rowland.harvard.edu>
6 Description:
7 		PCI-based EHCI USB controllers (i.e., high-speed USB-2.0
8 		controllers) are often implemented along with a set of
9 		"companion" full/low-speed USB-1.1 controllers.  When a
10 		high-speed device is plugged in, the connection is routed
11 		to the EHCI controller; when a full- or low-speed device
12 		is plugged in, the connection is routed to the companion
13 		controller.
14 
15 		Sometimes you want to force a high-speed device to connect
16 		at full speed, which can be accomplished by forcing the
17 		connection to be routed to the companion controller.
18 		That's what this file does.  Writing a port number to the
19 		file causes connections on that port to be routed to the
20 		companion controller, and writing the negative of a port
21 		number returns the port to normal operation.
22 
23 		For example: To force the high-speed device attached to
24 		port 4 on bus 2 to run at full speed::
25 
26 			echo 4 >/sys/bus/usb/devices/usb2/../companion
27 
28 		To return the port to high-speed operation::
29 
30 			echo -4 >/sys/bus/usb/devices/usb2/../companion
31 
32 		Reading the file gives the list of ports currently forced
33 		to the companion controller.
34 
35 		Note: Some EHCI controllers do not have companions; they
36 		may contain an internal "transaction translator" or they
37 		may be attached directly to a "rate-matching hub".  This
38 		mechanism will not work with such controllers.  Also, it
39 		cannot be used to force a port on a high-speed hub to
40 		connect at full speed.
41 
42 		Note: When this file was first added, it appeared in a
43 		different sysfs directory.  The location given above is
44 		correct for 2.6.35 (and probably several earlier kernel
45 		versions as well).
46 
47