Skip to content

Commit c6006b8

Browse files
committed
Merge tag 'usb-6.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
Pull USB / Thunderbolt updates from Greg KH: "Here is the big set of USB and thunderbolt drivers for 6.18-rc1. It was another normal development cycle, with lots of the usual drivers getting updates: - Thunderbolt driver cleanups and additions - dwc3 driver updates - dwc2 driver updates - typec driver updates - xhci driver updates and additions - offload USB engine updates for better power management - unused tracepoint removals - usb gadget fixes and updates as more users start to rely on these drivers instead of the "old" function gadget drivers - new USB device ids - other minor driver USB driver updates - new USB I/O driver framework and driver additions" The last item, the usb i/o driver, has an i2c and gpio driver added through this tree. Those drivers were acked by the respective subsystem maintainers. All of these have been in linux-next for a while" * tag 'usb-6.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (132 commits) usb: vhci-hcd: Prevent suspending virtually attached devices USB: serial: option: add SIMCom 8230C compositions thunderbolt: Fix use-after-free in tb_dp_dprx_work usb: xhci: align PORTSC trace with one-based port numbering usb: xhci: correct indentation for PORTSC tracing function usb: xhci: improve TR Dequeue Pointer mask usb: xhci-pci: add support for hosts with zero USB3 ports usb: xhci: Update a comment about Stop Endpoint retries Revert "usb: xhci: Avoid Stop Endpoint retry loop if the endpoint seems Running" usb: gadget: f_rndis: Refactor bind path to use __free() usb: gadget: f_ecm: Refactor bind path to use __free() usb: gadget: f_acm: Refactor bind path to use __free() usb: gadget: f_ncm: Refactor bind path to use __free() usb: gadget: Introduce free_usb_request helper usb: gadget: Store endpoint pointer in usb_request usb: host: xhci-rcar: Add Renesas RZ/G3E USB3 Host driver support usb: host: xhci-plat: Add .post_resume_quirk for struct xhci_plat_priv usb: host: xhci-rcar: Move R-Car reg definitions dt-bindings: usb: Document Renesas RZ/G3E USB3HOST usb: gadget: f_fs: Fix epfile null pointer access after ep enable. ...
2 parents 5d2f473 + e40b984 commit c6006b8

File tree

131 files changed

+4791
-1224
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

131 files changed

+4791
-1224
lines changed

CREDITS

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1890,6 +1890,11 @@ S: Reading
18901890
S: RG6 2NU
18911891
S: United Kingdom
18921892

1893+
N: Michael Jamet
1894+
1895+
D: Thunderbolt/USB4 driver maintainer
1896+
D: Thunderbolt/USB4 networking driver maintainer
1897+
18931898
N: Dave Jeffery
18941899
18951900
D: SCSI hacks and IBM ServeRAID RAID driver maintenance
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/usb/intel,ixp4xx-udc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Intel IXP4xx SoC USB Device Controller (UDC)
8+
9+
description: The IXP4xx SoCs has a full-speed USB Device
10+
Controller with 16 endpoints and a built-in transceiver.
11+
12+
maintainers:
13+
- Linus Walleij <[email protected]>
14+
15+
properties:
16+
compatible:
17+
const: intel,ixp4xx-udc
18+
19+
reg:
20+
maxItems: 1
21+
22+
interrupts:
23+
maxItems: 1
24+
25+
required:
26+
- compatible
27+
- reg
28+
- interrupts
29+
30+
additionalProperties: false
31+
32+
examples:
33+
- |
34+
#include <dt-bindings/interrupt-controller/irq.h>
35+
usb@c800b000 {
36+
compatible = "intel,ixp4xx-udc";
37+
reg = <0xc800b000 0x1000>;
38+
interrupts = <12 IRQ_TYPE_LEVEL_HIGH>;
39+
};

Documentation/devicetree/bindings/usb/nvidia,tegra20-ehci.txt

Lines changed: 0 additions & 23 deletions
This file was deleted.
Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/usb/renesas,rzg3e-xhci.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Renesas RZ/G3E USB 3.2 Gen2 Host controller
8+
9+
maintainers:
10+
- Biju Das <[email protected]>
11+
12+
properties:
13+
compatible:
14+
const: renesas,r9a09g047-xhci
15+
16+
reg:
17+
maxItems: 1
18+
19+
interrupts:
20+
items:
21+
- description: Logical OR of all interrupt signals.
22+
- description: System management interrupt
23+
- description: Host system error interrupt
24+
- description: Power management event interrupt
25+
- description: xHC interrupt
26+
27+
interrupt-names:
28+
items:
29+
- const: all
30+
- const: smi
31+
- const: hse
32+
- const: pme
33+
- const: xhc
34+
35+
clocks:
36+
maxItems: 1
37+
38+
phys:
39+
maxItems: 2
40+
41+
phy-names:
42+
items:
43+
- const: usb2-phy
44+
- const: usb3-phy
45+
46+
power-domains:
47+
maxItems: 1
48+
49+
resets:
50+
maxItems: 1
51+
52+
required:
53+
- compatible
54+
- reg
55+
- interrupts
56+
- interrupt-names
57+
- clocks
58+
- power-domains
59+
- resets
60+
- phys
61+
- phy-names
62+
63+
allOf:
64+
- $ref: usb-xhci.yaml
65+
66+
additionalProperties: false
67+
68+
examples:
69+
- |
70+
#include <dt-bindings/clock/renesas,r9a09g047-cpg.h>
71+
#include <dt-bindings/interrupt-controller/arm-gic.h>
72+
73+
usb@15850000 {
74+
compatible = "renesas,r9a09g047-xhci";
75+
reg = <0x15850000 0x10000>;
76+
interrupts = <GIC_SPI 759 IRQ_TYPE_LEVEL_HIGH>,
77+
<GIC_SPI 758 IRQ_TYPE_LEVEL_HIGH>,
78+
<GIC_SPI 757 IRQ_TYPE_LEVEL_HIGH>,
79+
<GIC_SPI 756 IRQ_TYPE_LEVEL_HIGH>,
80+
<GIC_SPI 755 IRQ_TYPE_LEVEL_HIGH>;
81+
interrupt-names = "all", "smi", "hse", "pme", "xhc";
82+
clocks = <&cpg CPG_MOD 0xaf>;
83+
power-domains = <&cpg>;
84+
resets = <&cpg 0xaa>;
85+
phys = <&usb3_phy>, <&usb3_phy>;
86+
phy-names = "usb2-phy", "usb3-phy";
87+
};

Documentation/devicetree/bindings/usb/renesas,usbhs.yaml

Lines changed: 25 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,12 @@ properties:
5959
- renesas,usbhs-r8a77995 # R-Car D3
6060
- const: renesas,rcar-gen3-usbhs
6161

62+
- const: renesas,usbhs-r9a09g077 # RZ/T2H
63+
64+
- items:
65+
- const: renesas,usbhs-r9a09g087 # RZ/N2H
66+
- const: renesas,usbhs-r9a09g077 # RZ/T2H
67+
6268
reg:
6369
maxItems: 1
6470

@@ -141,9 +147,25 @@ allOf:
141147
required:
142148
- resets
143149
else:
144-
properties:
145-
interrupts:
146-
maxItems: 1
150+
if:
151+
properties:
152+
compatible:
153+
contains:
154+
const: renesas,usbhs-r9a09g077
155+
then:
156+
properties:
157+
resets: false
158+
clocks:
159+
maxItems: 1
160+
interrupts:
161+
items:
162+
- description: USB function interrupt USB_FI
163+
- description: USB function DMA0 transmit completion interrupt USB_FDMA0
164+
- description: USB function DMA1 transmit completion interrupt USB_FDMA1
165+
else:
166+
properties:
167+
interrupts:
168+
maxItems: 1
147169

148170
additionalProperties: false
149171

Documentation/devicetree/bindings/usb/s3c2410-usb.txt

Lines changed: 0 additions & 22 deletions
This file was deleted.
Lines changed: 121 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,121 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/usb/spacemit,k1-dwc3.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: SpacemiT K1 SuperSpeed DWC3 USB SoC Controller
8+
9+
maintainers:
10+
- Ze Huang <[email protected]>
11+
12+
description: |
13+
The SpacemiT K1 embeds a DWC3 USB IP Core which supports Host functions
14+
for USB 3.0 and DRD for USB 2.0.
15+
16+
Key features:
17+
- USB3.0 SuperSpeed and USB2.0 High/Full/Low-Speed support
18+
- Supports low-power modes (USB2.0 suspend, USB3.0 U1/U2/U3)
19+
- Internal DMA controller and flexible endpoint FIFO sizing
20+
21+
Communication Interface:
22+
- Use of PIPE3 (125MHz) interface for USB3.0 PHY
23+
- Use of UTMI+ (30/60MHz) interface for USB2.0 PHY
24+
25+
allOf:
26+
- $ref: snps,dwc3-common.yaml#
27+
28+
properties:
29+
compatible:
30+
const: spacemit,k1-dwc3
31+
32+
reg:
33+
maxItems: 1
34+
35+
clocks:
36+
maxItems: 1
37+
38+
clock-names:
39+
const: usbdrd30
40+
41+
interrupts:
42+
maxItems: 1
43+
44+
phys:
45+
items:
46+
- description: phandle to USB2/HS PHY
47+
- description: phandle to USB3/SS PHY
48+
49+
phy-names:
50+
items:
51+
- const: usb2-phy
52+
- const: usb3-phy
53+
54+
resets:
55+
items:
56+
- description: USB3.0 AHB reset
57+
- description: USB3.0 VCC reset
58+
- description: USB3.0 PHY reset
59+
60+
reset-names:
61+
items:
62+
- const: ahb
63+
- const: vcc
64+
- const: phy
65+
66+
reset-delay:
67+
$ref: /schemas/types.yaml#/definitions/uint32
68+
default: 2
69+
description: delay after reset sequence [us]
70+
71+
vbus-supply:
72+
description: A phandle to the regulator supplying the VBUS voltage.
73+
74+
required:
75+
- compatible
76+
- reg
77+
- clocks
78+
- clock-names
79+
- interrupts
80+
- phys
81+
- phy-names
82+
- resets
83+
- reset-names
84+
85+
unevaluatedProperties: false
86+
87+
examples:
88+
- |
89+
usb@c0a00000 {
90+
compatible = "spacemit,k1-dwc3";
91+
reg = <0xc0a00000 0x10000>;
92+
clocks = <&syscon_apmu 16>;
93+
clock-names = "usbdrd30";
94+
interrupts = <125>;
95+
phys = <&usb2phy>, <&usb3phy>;
96+
phy-names = "usb2-phy", "usb3-phy";
97+
resets = <&syscon_apmu 8>,
98+
<&syscon_apmu 9>,
99+
<&syscon_apmu 10>;
100+
reset-names = "ahb", "vcc", "phy";
101+
reset-delay = <2>;
102+
vbus-supply = <&usb3_vbus>;
103+
#address-cells = <1>;
104+
#size-cells = <0>;
105+
106+
hub_2_0: hub@1 {
107+
compatible = "usb2109,2817";
108+
reg = <1>;
109+
vdd-supply = <&usb3_vhub>;
110+
peer-hub = <&hub_3_0>;
111+
reset-gpios = <&gpio 3 28 1>;
112+
};
113+
114+
hub_3_0: hub@2 {
115+
compatible = "usb2109,817";
116+
reg = <2>;
117+
vdd-supply = <&usb3_vhub>;
118+
peer-hub = <&hub_2_0>;
119+
reset-gpios = <&gpio 3 28 1>;
120+
};
121+
};

0 commit comments

Comments
 (0)