162306a36Sopenharmony_ciWhat: /sys/bus/pci/drivers/xhci_hcd/.../dbc 262306a36Sopenharmony_ciDate: June 2017 362306a36Sopenharmony_ciContact: Lu Baolu <baolu.lu@linux.intel.com> 462306a36Sopenharmony_ciDescription: 562306a36Sopenharmony_ci xHCI compatible USB host controllers (i.e. super-speed 662306a36Sopenharmony_ci USB3 controllers) are often implemented with the Debug 762306a36Sopenharmony_ci Capability (DbC). It can present a debug device which 862306a36Sopenharmony_ci is fully compliant with the USB framework and provides 962306a36Sopenharmony_ci the equivalent of a very high performance full-duplex 1062306a36Sopenharmony_ci serial link for debug purpose. 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci The DbC debug device shares a root port with xHCI host. 1362306a36Sopenharmony_ci When the DbC is enabled, the root port will be assigned 1462306a36Sopenharmony_ci to the Debug Capability. Otherwise, it will be assigned 1562306a36Sopenharmony_ci to xHCI. 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ci Writing "enable" to this attribute will enable the DbC 1862306a36Sopenharmony_ci functionality and the shared root port will be assigned 1962306a36Sopenharmony_ci to the DbC device. Writing "disable" to this attribute 2062306a36Sopenharmony_ci will disable the DbC functionality and the shared root 2162306a36Sopenharmony_ci port will roll back to the xHCI. 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci Reading this attribute gives the state of the DbC. It 2462306a36Sopenharmony_ci can be one of the following states: disabled, enabled, 2562306a36Sopenharmony_ci initialized, connected, configured and stalled. 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ciWhat: /sys/bus/pci/drivers/xhci_hcd/.../dbc_idVendor 2862306a36Sopenharmony_ciDate: March 2023 2962306a36Sopenharmony_ciContact: Mathias Nyman <mathias.nyman@linux.intel.com> 3062306a36Sopenharmony_ciDescription: 3162306a36Sopenharmony_ci This dbc_idVendor attribute lets us change the idVendor field 3262306a36Sopenharmony_ci presented in the USB device descriptor by this xhci debug 3362306a36Sopenharmony_ci device. 3462306a36Sopenharmony_ci Value can only be changed while debug capability (DbC) is in 3562306a36Sopenharmony_ci disabled state to prevent USB device descriptor change while 3662306a36Sopenharmony_ci connected to a USB host. 3762306a36Sopenharmony_ci The default value is 0x1d6b (Linux Foundation). 3862306a36Sopenharmony_ci It can be any 16-bit integer. 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ciWhat: /sys/bus/pci/drivers/xhci_hcd/.../dbc_idProduct 4162306a36Sopenharmony_ciDate: March 2023 4262306a36Sopenharmony_ciContact: Mathias Nyman <mathias.nyman@linux.intel.com> 4362306a36Sopenharmony_ciDescription: 4462306a36Sopenharmony_ci This dbc_idProduct attribute lets us change the idProduct field 4562306a36Sopenharmony_ci presented in the USB device descriptor by this xhci debug 4662306a36Sopenharmony_ci device. 4762306a36Sopenharmony_ci Value can only be changed while debug capability (DbC) is in 4862306a36Sopenharmony_ci disabled state to prevent USB device descriptor change while 4962306a36Sopenharmony_ci connected to a USB host. 5062306a36Sopenharmony_ci The default value is 0x0010. It can be any 16-bit integer. 5162306a36Sopenharmony_ci 5262306a36Sopenharmony_ciWhat: /sys/bus/pci/drivers/xhci_hcd/.../dbc_bcdDevice 5362306a36Sopenharmony_ciDate: March 2023 5462306a36Sopenharmony_ciContact: Mathias Nyman <mathias.nyman@linux.intel.com> 5562306a36Sopenharmony_ciDescription: 5662306a36Sopenharmony_ci This dbc_bcdDevice attribute lets us change the bcdDevice field 5762306a36Sopenharmony_ci presented in the USB device descriptor by this xhci debug 5862306a36Sopenharmony_ci device. 5962306a36Sopenharmony_ci Value can only be changed while debug capability (DbC) is in 6062306a36Sopenharmony_ci disabled state to prevent USB device descriptor change while 6162306a36Sopenharmony_ci connected to a USB host. 6262306a36Sopenharmony_ci The default value is 0x0010. (device rev 0.10) 6362306a36Sopenharmony_ci It can be any 16-bit integer. 6462306a36Sopenharmony_ci 6562306a36Sopenharmony_ciWhat: /sys/bus/pci/drivers/xhci_hcd/.../dbc_bInterfaceProtocol 6662306a36Sopenharmony_ciDate: March 2023 6762306a36Sopenharmony_ciContact: Mathias Nyman <mathias.nyman@linux.intel.com> 6862306a36Sopenharmony_ciDescription: 6962306a36Sopenharmony_ci This attribute lets us change the bInterfaceProtocol field 7062306a36Sopenharmony_ci presented in the USB Interface descriptor by the xhci debug 7162306a36Sopenharmony_ci device. 7262306a36Sopenharmony_ci Value can only be changed while debug capability (DbC) is in 7362306a36Sopenharmony_ci disabled state to prevent USB descriptor change while 7462306a36Sopenharmony_ci connected to a USB host. 7562306a36Sopenharmony_ci The default value is 1 (GNU Remote Debug command). 7662306a36Sopenharmony_ci Other permissible value is 0 which is for vendor defined debug 7762306a36Sopenharmony_ci target. 78