xref: /openbmc/linux/Documentation/ABI/testing/sysfs-bus-pci-drivers-xhci_hcd (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
1dfba2174SLu BaoluWhat:		/sys/bus/pci/drivers/xhci_hcd/.../dbc
2dfba2174SLu BaoluDate:		June 2017
3dfba2174SLu BaoluContact:	Lu Baolu <baolu.lu@linux.intel.com>
4dfba2174SLu BaoluDescription:
5dfba2174SLu Baolu		xHCI compatible USB host controllers (i.e. super-speed
6dfba2174SLu Baolu		USB3 controllers) are often implemented with the Debug
7dfba2174SLu Baolu		Capability (DbC). It can present a debug device which
8dfba2174SLu Baolu		is fully compliant with the USB framework and provides
9dfba2174SLu Baolu		the equivalent of a very high performance full-duplex
10dfba2174SLu Baolu		serial link for debug purpose.
11dfba2174SLu Baolu
12dfba2174SLu Baolu		The DbC debug device shares a root port with xHCI host.
13dfba2174SLu Baolu		When the DbC is enabled, the root port will be assigned
14dfba2174SLu Baolu		to the Debug Capability. Otherwise, it will be assigned
15dfba2174SLu Baolu		to xHCI.
16dfba2174SLu Baolu
17dfba2174SLu Baolu		Writing "enable" to this attribute will enable the DbC
18dfba2174SLu Baolu		functionality and the shared root port will be assigned
19dfba2174SLu Baolu		to the DbC device. Writing "disable" to this attribute
20dfba2174SLu Baolu		will disable the DbC functionality and the shared root
21dfba2174SLu Baolu		port will roll back to the xHCI.
22dfba2174SLu Baolu
23dfba2174SLu Baolu		Reading this attribute gives the state of the DbC. It
24dfba2174SLu Baolu		can be one of the following states: disabled, enabled,
25dfba2174SLu Baolu		initialized, connected, configured and stalled.
26*edf1664fSMathias Nyman
27*edf1664fSMathias NymanWhat:		/sys/bus/pci/drivers/xhci_hcd/.../dbc_idVendor
28*edf1664fSMathias NymanDate:		March 2023
29*edf1664fSMathias NymanContact:	Mathias Nyman <mathias.nyman@linux.intel.com>
30*edf1664fSMathias NymanDescription:
31*edf1664fSMathias Nyman		This dbc_idVendor attribute lets us change the idVendor field
32*edf1664fSMathias Nyman		presented in the USB device descriptor by this xhci debug
33*edf1664fSMathias Nyman		device.
34*edf1664fSMathias Nyman		Value can only be changed while debug capability (DbC) is in
35*edf1664fSMathias Nyman		disabled state to prevent USB device descriptor change while
36*edf1664fSMathias Nyman		connected to a USB host.
37*edf1664fSMathias Nyman		The default value is 0x1d6b (Linux Foundation).
38*edf1664fSMathias Nyman		It can be any 16-bit integer.
39*edf1664fSMathias Nyman
40*edf1664fSMathias NymanWhat:		/sys/bus/pci/drivers/xhci_hcd/.../dbc_idProduct
41*edf1664fSMathias NymanDate:		March 2023
42*edf1664fSMathias NymanContact:	Mathias Nyman <mathias.nyman@linux.intel.com>
43*edf1664fSMathias NymanDescription:
44*edf1664fSMathias Nyman		This dbc_idProduct attribute lets us change the idProduct field
45*edf1664fSMathias Nyman		presented in the USB device descriptor by this xhci debug
46*edf1664fSMathias Nyman		device.
47*edf1664fSMathias Nyman		Value can only be changed while debug capability (DbC) is in
48*edf1664fSMathias Nyman		disabled state to prevent USB device descriptor change while
49*edf1664fSMathias Nyman		connected to a USB host.
50*edf1664fSMathias Nyman		The default value is 0x0010. It can be any 16-bit integer.
51*edf1664fSMathias Nyman
52*edf1664fSMathias NymanWhat:		/sys/bus/pci/drivers/xhci_hcd/.../dbc_bcdDevice
53*edf1664fSMathias NymanDate:		March 2023
54*edf1664fSMathias NymanContact:	Mathias Nyman <mathias.nyman@linux.intel.com>
55*edf1664fSMathias NymanDescription:
56*edf1664fSMathias Nyman		This dbc_bcdDevice attribute lets us change the bcdDevice field
57*edf1664fSMathias Nyman		presented in the USB device descriptor by this xhci debug
58*edf1664fSMathias Nyman		device.
59*edf1664fSMathias Nyman		Value can only be changed while debug capability (DbC) is in
60*edf1664fSMathias Nyman		disabled state to prevent USB device descriptor change while
61*edf1664fSMathias Nyman		connected to a USB host.
62*edf1664fSMathias Nyman		The default value is 0x0010. (device rev 0.10)
63*edf1664fSMathias Nyman		It can be any 16-bit integer.
64*edf1664fSMathias Nyman
65*edf1664fSMathias NymanWhat:		/sys/bus/pci/drivers/xhci_hcd/.../dbc_bInterfaceProtocol
66*edf1664fSMathias NymanDate:		March 2023
67*edf1664fSMathias NymanContact:	Mathias Nyman <mathias.nyman@linux.intel.com>
68*edf1664fSMathias NymanDescription:
69*edf1664fSMathias Nyman		This attribute lets us change the bInterfaceProtocol field
70*edf1664fSMathias Nyman		presented in the USB Interface descriptor by the xhci debug
71*edf1664fSMathias Nyman		device.
72*edf1664fSMathias Nyman		Value can only be changed while debug capability (DbC) is in
73*edf1664fSMathias Nyman		disabled state to prevent USB descriptor change while
74*edf1664fSMathias Nyman		connected to a USB host.
75*edf1664fSMathias Nyman		The default value is 1  (GNU Remote Debug command).
76*edf1664fSMathias Nyman		Other permissible value is 0 which is for vendor defined debug
77*edf1664fSMathias Nyman		target.
78