Commit 57ea8197 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull USB and Thunderbolt updates from Greg KH:
 "Here is the big set of USB and Thunderbolt driver changes for
  5.17-rc1.

  Nothing major in here, just lots of little updates and cleanups. These
  include:

   - some USB header fixes picked from Ingo's header-splitup work

   - more USB4/Thunderbolt hardware support added

   - USB gadget driver updates and additions

   - USB typec additions (includes some acpi changes, which were acked
     by the ACPI maintainer)

   - core USB fixes as found by syzbot that were too late for 5.16-final

   - USB dwc3 driver updates

   - USB dwc2 driver updates

   - platform_get_irq() conversions of some USB drivers

   - other minor USB driver updates and additions

  All of these have been in linux-next for a while with no reported
  issues"

* tag 'usb-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (111 commits)
  docs: ABI: fixed formatting in configfs-usb-gadget-uac2
  usb: gadget: u_audio: Subdevice 0 for capture ctls
  usb: gadget: u_audio: fix calculations for small bInterval
  usb: dwc2: gadget: initialize max_speed from params
  usb: dwc2: do not gate off the hardware if it does not support clock gating
  usb: dwc3: qcom: Fix NULL vs IS_ERR checking in dwc3_qcom_probe
  headers/deps: USB: Optimize <linux/usb/ch9.h> dependencies, remove <linux/device.h>
  USB: common: debug: add needed kernel.h include
  headers/prep: Fix non-standard header section: drivers/usb/host/ohci-tmio.c
  headers/prep: Fix non-standard header section: drivers/usb/cdns3/core.h
  headers/prep: usb: gadget: Fix namespace collision
  USB: core: Fix bug in resuming hub's handling of wakeup requests
  USB: Fix "slab-out-of-bounds Write" bug in usb_hcd_poll_rh_status
  usb: dwc3: dwc3-qcom: Add missing platform_device_put() in dwc3_qcom_acpi_register_core
  usb: gadget: clear related members when goto fail
  usb: gadget: don't release an existing dev->buf
  usb: dwc2: Simplify a bitmap declaration
  usb: Remove usb_for_each_port()
  usb: typec: port-mapper: Convert to the component framework
  usb: Link the ports to the connectors they are attached to
  ...
parents 342465f5 cbb4f5f4
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -27,6 +27,6 @@ Description:
					(in 1/256 dB)
		p_volume_res		playback volume control resolution
					(in 1/256 dB)
		req_number		the number of pre-allocated request
		req_number		the number of pre-allocated requests
					for both capture and playback
		=====================	=======================================
+2 −0
Original line number Diff line number Diff line
@@ -30,4 +30,6 @@ Description:
					(in 1/256 dB)
		p_volume_res		playback volume control resolution
					(in 1/256 dB)
		req_number		the number of pre-allocated requests
					for both capture and playback
		=====================	=======================================
+9 −0
Original line number Diff line number Diff line
@@ -244,6 +244,15 @@ Description:
		is permitted, "u2" if only u2 is permitted, "u1_u2" if both u1 and
		u2 are permitted.

What:		/sys/bus/usb/devices/.../<hub_interface>/port<X>/connector
Date:		December 2021
Contact:	Heikki Krogerus <heikki.krogerus@linux.intel.com>
Description:
		Link to the USB Type-C connector when available. This link is
		only created when USB Type-C Connector Class is enabled, and
		only if the system firmware is capable of describing the
		connection between a port and its connector.

What:		/sys/bus/usb/devices/.../power/usb2_lpm_l1_timeout
Date:		May 2013
Contact:	Mathias Nyman <mathias.nyman@linux.intel.com>
+13 −0
Original line number Diff line number Diff line
@@ -114,6 +114,8 @@ properties:

  usb-role-switch: true

  role-switch-default-mode: true

  g-rx-fifo-size:
    $ref: /schemas/types.yaml#/definitions/uint32
    description: size of rx fifo size in gadget mode.
@@ -136,6 +138,17 @@ properties:
    description: If present indicates that we need to reset the PHY when we 
      detect a wakeup. This is due to a hardware errata.

  port:
    description:
      Any connector to the data bus of this controller should be modelled
      using the OF graph bindings specified, if the "usb-role-switch"
      property is used.
    $ref: /schemas/graph.yaml#/properties/port

dependencies:
  port: [ usb-role-switch ]
  role-switch-default-mode: [ usb-role-switch ]

required:
  - compatible
  - reg
+0 −56
Original line number Diff line number Diff line
Xilinx SuperSpeed DWC3 USB SoC controller

Required properties:
- compatible:	May contain "xlnx,zynqmp-dwc3" or "xlnx,versal-dwc3"
- reg:		Base address and length of the register control block
- clocks:	A list of phandles for the clocks listed in clock-names
- clock-names:	Should contain the following:
  "bus_clk"	 Master/Core clock, have to be >= 125 MHz for SS
		 operation and >= 60MHz for HS operation

  "ref_clk"	 Clock source to core during PHY power down
- resets:	A list of phandles for resets listed in reset-names
- reset-names:
  "usb_crst"	 USB core reset
  "usb_hibrst"	 USB hibernation reset
  "usb_apbrst"	 USB APB reset

Required child node:
A child node must exist to represent the core DWC3 IP block. The name of
the node is not important. The content of the node is defined in dwc3.txt.

Optional properties for snps,dwc3:
- dma-coherent:	Enable this flag if CCI is enabled in design. Adding this
		flag configures Global SoC bus Configuration Register and
		Xilinx USB 3.0 IP - USB coherency register to enable CCI.
- interrupt-names: Should contain the following:
  "dwc_usb3"	USB gadget mode interrupts
  "otg"		USB OTG mode interrupts
  "hiber"	USB hibernation interrupts

Example device node:

		usb@0 {
			#address-cells = <0x2>;
			#size-cells = <0x1>;
			compatible = "xlnx,zynqmp-dwc3";
			reg = <0x0 0xff9d0000 0x0 0x100>;
			clock-names = "bus_clk", "ref_clk";
			clocks = <&clk125>, <&clk125>;
			resets = <&zynqmp_reset ZYNQMP_RESET_USB1_CORERESET>,
				 <&zynqmp_reset ZYNQMP_RESET_USB1_HIBERRESET>,
				 <&zynqmp_reset ZYNQMP_RESET_USB1_APB>;
			reset-names = "usb_crst", "usb_hibrst", "usb_apbrst";
			ranges;

			dwc3@fe200000 {
				compatible = "snps,dwc3";
				reg = <0x0 0xfe200000 0x40000>;
				interrupt-names = "dwc_usb3", "otg", "hiber";
				interrupts = <0 65 4>, <0 69 4>, <0 75 4>;
				phys = <&psgtr 2 PHY_TYPE_USB3 0 2>;
				phy-names = "usb3-phy";
				dr_mode = "host";
				dma-coherent;
			};
		};
Loading