| /linux/drivers/thunderbolt/ |
| H A D | usb4_port.c | 3 * USB4 port device 44 struct usb4_port *usb4 = tb_to_usb4_port_device(dev); in link_show() local 45 struct tb_port *port = usb4->port; in link_show() 53 link = port->sw->link_usb4 ? "usb4" : "tbt"; in link_show() 55 link = port->remote->sw->link_usb4 ? "usb4" : "tbt"; in link_show() 57 link = port->xdomain->link_usb4 ? "usb4" : "tbt"; in link_show() 76 static int usb4_port_offline(struct usb4_port *usb4) in usb4_port_offline() argument 78 struct tb_port *port = usb4->port; in usb4_port_offline() 100 static void usb4_port_online(struct usb4_port *usb4) in usb4_port_online() argument 102 struct tb_port *port = usb4->port; in usb4_port_online() [all …]
|
| H A D | usb4.c | 3 * USB4 specific functionality 119 * If the connection manager implementation provides USB4 router in __usb4_switch_op() 166 struct usb4_port *usb4; in usb4_switch_check_wakes() local 183 * Check for any downstream ports for USB4 wake, in usb4_switch_check_wakes() 194 tb_port_dbg(port, "USB4 wake: %s, connection wake: %s, disconnection wake: %s\n", in usb4_switch_check_wakes() 202 usb4 = port->usb4; in usb4_switch_check_wakes() 203 if (device_may_wakeup(&usb4->dev) && wakeup_usb4) in usb4_switch_check_wakes() 204 pm_wakeup_event(&usb4->dev, 0); in usb4_switch_check_wakes() 228 * usb4_switch_setup() - Additional setup for USB4 device 229 * @sw: USB4 router to setup [all …]
|
| H A D | retimer.c | 3 * Thunderbolt/USB4 retimer support. 219 * When USB4 port is online sideband communications are in tb_retimer_set_inbound_sbtx() 222 if (!usb4_port_device_is_offline(port->usb4)) in tb_retimer_set_inbound_sbtx() 236 * When USB4 port is offline we need to keep the sideband in tb_retimer_unset_inbound_sbtx() 240 if (usb4_port_device_is_offline(port->usb4)) in tb_retimer_unset_inbound_sbtx() 431 rt->dev.parent = &port->usb4->dev; in tb_retimer_add() 491 dev = device_find_child(&port->usb4->dev, &lookup, retimer_match); in tb_port_find_retimer() 500 * @port: USB4 port to scan 588 * @port: USB4 port whose retimers to remove 594 struct usb4_port *usb4; in tb_retimer_remove_all() local [all …]
|
| H A D | tb.h | 27 /* Need to keep power on while USB4 port is in redrive mode */ 132 * @link_usb4: Upstream link is USB4 169 * In USB4 terminology this structure represents a router. 235 * USB4 links share the same group and can dynamically distribute the 255 * @cap_usb4: Offset to the USB4 port capability (%0 if not present) 256 * @usb4: Pointer to the USB4 port structure (only if @cap_usb4 is != %0) 277 * In USB4 terminology this structure represents an adapter (protocol or 289 struct usb4_port *usb4; member 308 * struct usb4_port - USB4 port device 330 * @index: Retimer index facing the router USB4 port [all …]
|
| H A D | debugfs.c | 41 * USB4 spec doesn't specify dwell range, the range of 100 ms to 500 ms 66 /* Sideband registers and their sizes as defined in the USB4 spec */ 459 * @port: USB4 port through which the margining operations are run 462 * @dev: Pointer to the device that is the target (USB4 port or retimer) 842 * USB4 port. in margining_lanes_write() 1601 struct usb4_port *usb4 = port->usb4; in margining_eye_write() local 1614 usb4->margining->upper_eye = false; in margining_eye_write() 1616 usb4->margining->upper_eye = true; in margining_eye_write() 1628 struct usb4_port *usb4 = port->usb4; in margining_eye_show() local 1632 if (usb4->margining->upper_eye) in margining_eye_show() [all …]
|
| H A D | quirks.c | 70 * Limit the maximum USB3 bandwidth for the following Intel USB4 104 * CLx is not supported on AMD USB4 Yellow Carp and Pink Sardine platforms.
|
| H A D | tb.c | 525 /* Find the downstream USB4 port that leads to this router */ in tb_find_first_usb3_tunnel() 540 * @port: USB4 port the consumed bandwidth is calculated 591 * @port: USB4 port the consumed bandwidth is calculated 694 * @port: USB4 port the total bandwidth is calculated 1315 if (port->usb4) in tb_scan_port() 1316 pm_runtime_get_sync(&port->usb4->dev); in tb_scan_port() 1425 if (port->usb4) { in tb_scan_port() 1426 pm_runtime_mark_last_busy(&port->usb4->dev); in tb_scan_port() 1427 pm_runtime_put_autosuspend(&port->usb4->dev); in tb_scan_port() 1458 * tunnels under the host router USB4 port, even in tb_recalc_estimated_bandwidth_for_group() [all …]
|
| H A D | tb_regs.h | 230 /* USB4 router operations opcodes */ 373 /* USB4 port registers */ 537 * (see above) as in USB4 spec, but these specific bits are used for Titan Ridge 538 * only and are reserved in USB4 spec.
|
| H A D | switch.c | 240 * USB4 devices must support NVM operations but it is in nvm_readable() 579 * USB4 restricts programming NFC buffers to lane adapters only in tb_port_add_nfc_credits() 619 * Needed for USB4 but can be called for any CIO/USB4 ports. Makes the 740 * USB4 port buffers allocated for the control path in tb_init_port() 905 * @port: Port to check (USB4 or CIO) 965 * @port: Port to check (USB4 or CIO) 1305 if (port->usb4) { in tb_port_resume() 1306 usb4_port_device_resume(port->usb4); in tb_port_resume() 1315 * This is only needed for non-USB4 ports. in tb_port_resume() 1469 * Programs specified Hop IDs for DP IN/OUT port. Can be called for USB4 [all …]
|
| H A D | Makefile | 5 thunderbolt-objs += domain.o dma_port.o icm.o property.o xdomain.o lc.o tmu.o usb4.o
|
| H A D | nhi.c | 52 MODULE_PARM_DESC(host_reset, "reset USB4 host router (default: true)"); 108 * the USB4 spec to ask the hardware to clear in ring_interrupt_active() 1210 * status directly, but unfortunately USB4 seems to make it in nhi_check_iommu() 1321 * USB4 case is simple. If we got control of any of the in nhi_select_cm() 1329 * from the firmware) or this is pre-USB4 PC so try first in nhi_select_cm() 1546 /* Any USB4 compliant host */ 1553 MODULE_DESCRIPTION("Thunderbolt/USB4 core driver");
|
| /linux/Documentation/devicetree/bindings/clock/ |
| H A D | qcom,glymur-gcc.yaml | 61 - description: USB4 PHY 0 pcie pipe clock source 62 - description: USB4 PHY 0 Max pipe clock source 63 - description: USB4 PHY 1 pcie pipe clock source 64 - description: USB4 PHY 1 Max pipe clock source 65 - description: USB4 PHY 2 pcie pipe clock source 66 - description: USB4 PHY 2 Max pipe clock source
|
| /linux/drivers/net/thunderbolt/ |
| H A D | Kconfig | 3 tristate "Networking over USB4 and Thunderbolt cables" 4 depends on USB4 && INET 7 over a USB4 and Thunderbolt cables. The driver supports Apple
|
| H A D | trace.c | 3 * Tracepoints for Thunderbolt/USB4 networking driver
|
| H A D | trace.h | 3 * Tracepoints for Thunderbolt/USB4 networking driver
|
| /linux/Documentation/ABI/testing/ |
| H A D | sysfs-bus-thunderbolt | 60 nopcie USB4 system where PCIe tunneling is disabled from 111 for USB4. 224 supported with USB4 devices and retimers. 311 "usb4", "tbt" and "none". 317 Description: Writing 1 to this attribute puts the USB4 port into 332 Description: When the USB4 port is in offline mode writing 1 to this 334 retimers. Each retimer appear under the USB4 port as if 335 the USB4 link was up. These retimers act in the same way
|
| /linux/drivers/usb/typec/ |
| H A D | port-mapper.c | 68 * USB4 host interface in which case we can also link the in typec_port_match() 69 * Type-C port with the USB4 port. in typec_port_match() 71 if (fwnode_property_present(adev_fwnode, "usb4-host-interface")) in typec_port_match()
|
| /linux/include/linux/usb/ |
| H A D | typec_altmode.h | 139 * USB4 also requires that the pins on the connector are repurposed, just like 140 * Alternate Modes. USB4 mode is however not entered with the Enter Mode Command 143 * USB 3.2 or in USB 2.0 mode instead of USB4. 151 TYPEC_MODE_USB4, /* USB4 mode */
|
| /linux/drivers/usb/core/ |
| H A D | usb-acpi.c | 146 * usb_acpi_add_usb4_devlink - add device link to USB4 Host Interface for tunneled USB3 devices 150 * Adds a device link between a tunneled USB3 device and the USB4 Host Interface 153 * The USB4 Host Interface this tunneled device depends on is found from the roothub 173 fwnode_find_reference(dev_fwnode(&port_dev->dev), "usb4-host-interface", 0); in usb_acpi_add_usb4_devlink() 316 /* Tunneled USB3 devices depend on USB4 Host Interface, set device link to it */ in usb_acpi_find_companion_for_device()
|
| /linux/arch/arm/boot/dts/marvell/ |
| H A D | kirkwood-iconnect.dts | 57 pmx_led_usb4: pmx-led-usb4 { 113 led-usb4 { 114 label = "usb4:blue";
|
| /linux/arch/x86/pci/ |
| H A D | acpi.c | 299 * For USB4, the tunneled PCIe Root or Downstream Ports are marked in pcie_has_usb4_host_interface() 300 * with the "usb4-host-interface" ACPI property, so we look for in pcie_has_usb4_host_interface() 304 "usb4-host-interface", 0); in pcie_has_usb4_host_interface() 312 * before Alder Lake do not have the "usb4-host-interface" in pcie_has_usb4_host_interface() 356 /* Anything directly behind a "usb4-host-interface" is tunneled */ in arch_pci_dev_is_removable() 361 * Check if this is a discrete Thunderbolt/USB4 controller that is in arch_pci_dev_is_removable() 362 * directly behind the non-USB4 PCIe Root Port marked as in arch_pci_dev_is_removable()
|
| /linux/drivers/gpu/drm/amd/display/dc/link/protocols/ |
| H A D | link_dp_training_dpia.h | 31 /* The approximate time (us) it takes to transmit 9 USB4 DP clock sync packets. */ 34 /* Train DP tunneling link for USB4 DPIA display endpoint.
|
| /linux/arch/arm/boot/dts/ti/omap/ |
| H A D | am5728.dtsi | 21 * USB3, USB4
|
| H A D | am5748.dtsi | 21 * USB3, USB4
|
| /linux/drivers/gpu/drm/xe/ |
| H A D | Kconfig | 68 depends on USB4
|