Skip to content

Commit 8c94ccc

Browse files
committed
Merge tag 'usb-6.8-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 changes for 6.8-rc1. Included in here are the following: - Thunderbolt subsystem and driver updates for USB 4 hardware and issues reported by real devices - xhci driver updates - dwc3 driver updates - uvc_video gadget driver updates - typec driver updates - gadget string functions cleaned up - other small changes All of these have been in the linux-next tree for a while with no reported issues" * tag 'usb-6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (169 commits) usb: typec: tipd: fix use of device-specific init function usb: typec: tipd: Separate reset for TPS6598x usb: mon: Fix atomicity violation in mon_bin_vma_fault usb: gadget: uvc: Remove nested locking usb: gadget: uvc: Fix use are free during STREAMOFF usb: typec: class: fix typec_altmode_put_partner to put plugs dt-bindings: usb: dwc3: Limit num-hc-interrupters definition dt-bindings: usb: xhci: Add num-hc-interrupters definition xhci: add support to allocate several interrupters USB: core: Use device_driver directly in struct usb_driver and usb_device_driver arm64: dts: mediatek: mt8195: Add 'rx-fifo-depth' for cherry usb: xhci-mtk: fix a short packet issue of gen1 isoc-in transfer dt-bindings: usb: mtk-xhci: add a property for Gen1 isoc-in transfer issue arm64: dts: qcom: msm8996: Remove PNoC clock from MSS arm64: dts: qcom: msm8996: Remove AGGRE2 clock from SLPI arm64: dts: qcom: msm8998: Remove AGGRE2 clock from SLPI arm64: dts: qcom: msm8939: Drop RPM bus clocks arm64: dts: qcom: sdm630: Drop RPM bus clocks arm64: dts: qcom: qcs404: Drop RPM bus clocks arm64: dts: qcom: msm8996: Drop RPM bus clocks ...
2 parents bd736f3 + 933bb7b commit 8c94ccc

File tree

142 files changed

+3912
-1516
lines changed

Some content is hidden

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

142 files changed

+3912
-1516
lines changed

Documentation/admin-guide/kernel-parameters.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6933,6 +6933,9 @@
69336933
pause after every control message);
69346934
o = USB_QUIRK_HUB_SLOW_RESET (Hub needs extra
69356935
delay after resetting its port);
6936+
p = USB_QUIRK_SHORT_SET_ADDRESS_REQ_TIMEOUT
6937+
(Reduce timeout of the SET_ADDRESS
6938+
request from 5000 ms to 500 ms);
69366939
Example: quirks=0781:5580:bk,0a5c:5834:gij
69376940

69386941
usbhid.mousepoll=

Documentation/devicetree/bindings/connector/usb-connector.yaml

Lines changed: 94 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,6 @@ properties:
6666
Particularly, if use an output GPIO to control a VBUS regulator, should
6767
model it as a regulator. See bindings/regulator/fixed-regulator.yaml
6868

69-
# The following are optional properties for "usb-c-connector".
7069
power-role:
7170
description: Determines the power role that the Type C connector will
7271
support. "dual" refers to Dual Role Port (DRP).
@@ -119,30 +118,6 @@ properties:
119118

120119
# The following are optional properties for "usb-c-connector" with power
121120
# delivery support.
122-
source-pdos:
123-
description: An array of u32 with each entry providing supported power
124-
source data object(PDO), the detailed bit definitions of PDO can be found
125-
in "Universal Serial Bus Power Delivery Specification" chapter 6.4.1.2
126-
Source_Capabilities Message, the order of each entry(PDO) should follow
127-
the PD spec chapter 6.4.1. Required for power source and power dual role.
128-
User can specify the source PDO array via PDO_FIXED/BATT/VAR/PPS_APDO()
129-
defined in dt-bindings/usb/pd.h.
130-
minItems: 1
131-
maxItems: 7
132-
$ref: /schemas/types.yaml#/definitions/uint32-array
133-
134-
sink-pdos:
135-
description: An array of u32 with each entry providing supported power sink
136-
data object(PDO), the detailed bit definitions of PDO can be found in
137-
"Universal Serial Bus Power Delivery Specification" chapter 6.4.1.3
138-
Sink Capabilities Message, the order of each entry(PDO) should follow the
139-
PD spec chapter 6.4.1. Required for power sink and power dual role. User
140-
can specify the sink PDO array via PDO_FIXED/BATT/VAR/PPS_APDO() defined
141-
in dt-bindings/usb/pd.h.
142-
minItems: 1
143-
maxItems: 7
144-
$ref: /schemas/types.yaml#/definitions/uint32-array
145-
146121
sink-vdos:
147122
description: An array of u32 with each entry, a Vendor Defined Message Object (VDO),
148123
providing additional information corresponding to the product, the detailed bit
@@ -166,10 +141,43 @@ properties:
166141
maxItems: 6
167142
$ref: /schemas/types.yaml#/definitions/uint32-array
168143

169-
op-sink-microwatt:
170-
description: Sink required operating power in microwatt, if source can't
171-
offer the power, Capability Mismatch is set. Required for power sink and
172-
power dual role.
144+
accessory-mode-audio:
145+
type: boolean
146+
description: Whether the device supports Audio Adapter Accessory Mode. This
147+
is only necessary if there are no other means to discover supported
148+
alternative modes (e.g. through the UCSI firmware interface).
149+
150+
accessory-mode-debug:
151+
type: boolean
152+
description: Whether the device supports Debug Accessory Mode. This
153+
is only necessary if there are no other means to discover supported
154+
alternative modes (e.g. through the UCSI firmware interface).
155+
156+
altmodes:
157+
type: object
158+
description: List of Alternative Modes supported by the schematics on the
159+
particular device. This is only necessary if there are no other means to
160+
discover supported alternative modes (e.g. through the UCSI firmware
161+
interface).
162+
163+
additionalProperties: false
164+
165+
patternProperties:
166+
"^(displayport)$":
167+
type: object
168+
description:
169+
A single USB-C Alternative Mode as supported by the USB-C connector logic.
170+
171+
additionalProperties: false
172+
173+
properties:
174+
svid:
175+
$ref: /schemas/types.yaml#/definitions/uint16
176+
description: Unique value assigned by USB-IF to the Vendor / AltMode.
177+
enum: [ 0xff01 ]
178+
vdo:
179+
$ref: /schemas/types.yaml#/definitions/uint32
180+
description: VDO returned by Discover Modes USB PD command.
173181

174182
port:
175183
$ref: /schemas/graph.yaml#/properties/port
@@ -231,14 +239,63 @@ properties:
231239
SNK_READY for non-pd link.
232240
type: boolean
233241

242+
capabilities:
243+
description: A child node to contain all the selectable USB Power Delivery capabilities.
244+
type: object
245+
246+
patternProperties:
247+
"^caps-[0-9]+$":
248+
description: Child nodes under "capabilities" node. Each node contains a selectable USB
249+
Power Delivery capability.
250+
type: object
251+
$ref: "#/$defs/capabilities"
252+
unevaluatedProperties: false
253+
254+
additionalProperties: false
255+
234256
dependencies:
235257
sink-vdos-v1: [ sink-vdos ]
236258
sink-vdos: [ sink-vdos-v1 ]
237259

238260
required:
239261
- compatible
240262

263+
$defs:
264+
capabilities:
265+
type: object
266+
267+
properties:
268+
source-pdos:
269+
description: An array of u32 with each entry providing supported power
270+
source data object(PDO), the detailed bit definitions of PDO can be found
271+
in "Universal Serial Bus Power Delivery Specification" chapter 6.4.1.2
272+
Source_Capabilities Message, the order of each entry(PDO) should follow
273+
the PD spec chapter 6.4.1. Required for power source and power dual role.
274+
User can specify the source PDO array via PDO_FIXED/BATT/VAR/PPS_APDO()
275+
defined in dt-bindings/usb/pd.h.
276+
minItems: 1
277+
maxItems: 7
278+
$ref: /schemas/types.yaml#/definitions/uint32-array
279+
280+
sink-pdos:
281+
description: An array of u32 with each entry providing supported power sink
282+
data object(PDO), the detailed bit definitions of PDO can be found in
283+
"Universal Serial Bus Power Delivery Specification" chapter 6.4.1.3
284+
Sink Capabilities Message, the order of each entry(PDO) should follow the
285+
PD spec chapter 6.4.1. Required for power sink and power dual role. User
286+
can specify the sink PDO array via PDO_FIXED/BATT/VAR/PPS_APDO() defined
287+
in dt-bindings/usb/pd.h.
288+
minItems: 1
289+
maxItems: 7
290+
$ref: /schemas/types.yaml#/definitions/uint32-array
291+
292+
op-sink-microwatt:
293+
description: Sink required operating power in microwatt, if source can't
294+
offer the power, Capability Mismatch is set. Required for power sink and
295+
power dual role.
296+
241297
allOf:
298+
- $ref: "#/$defs/capabilities"
242299
- if:
243300
properties:
244301
compatible:
@@ -267,7 +324,7 @@ anyOf:
267324
- typec-power-opmode
268325
- new-source-frs-typec-current
269326

270-
additionalProperties: false
327+
unevaluatedProperties: false
271328

272329
examples:
273330
# Micro-USB connector with HS lines routed via controller (MUIC).
@@ -289,6 +346,13 @@ examples:
289346
compatible = "usb-c-connector";
290347
label = "USB-C";
291348
349+
altmodes {
350+
displayport {
351+
svid = /bits/ 16 <0xff01>;
352+
vdo = <0x00001c46>;
353+
};
354+
};
355+
292356
ports {
293357
#address-cells = <1>;
294358
#size-cells = <0>;

Documentation/devicetree/bindings/usb/generic-xhci.yaml

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,6 @@ title: USB xHCI Controller
99
maintainers:
1010
- Mathias Nyman <mathias.nyman@intel.com>
1111

12-
allOf:
13-
- $ref: usb-xhci.yaml#
14-
1512
properties:
1613
compatible:
1714
oneOf:
@@ -25,6 +22,11 @@ properties:
2522
- marvell,armada-380-xhci
2623
- marvell,armada-8k-xhci
2724
- const: generic-xhci
25+
- description: Broadcom SoCs with power domains
26+
items:
27+
- enum:
28+
- brcm,bcm2711-xhci
29+
- const: brcm,xhci-brcm-v2
2830
- description: Broadcom STB SoCs with xHCI
2931
enum:
3032
- brcm,xhci-brcm-v2
@@ -49,13 +51,30 @@ properties:
4951
- const: core
5052
- const: reg
5153

54+
power-domains:
55+
maxItems: 1
56+
5257
unevaluatedProperties: false
5358

5459
required:
5560
- compatible
5661
- reg
5762
- interrupts
5863

64+
allOf:
65+
- $ref: usb-xhci.yaml#
66+
- if:
67+
properties:
68+
compatible:
69+
contains:
70+
const: brcm,bcm2711-xhci
71+
then:
72+
required:
73+
- power-domains
74+
else:
75+
properties:
76+
power-domains: false
77+
5978
examples:
6079
- |
6180
usb@f0931000 {

Documentation/devicetree/bindings/usb/genesys,gl850g.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,11 @@ properties:
2929
description:
3030
the regulator that provides 3.3V core power to the hub.
3131

32+
peer-hub:
33+
$ref: /schemas/types.yaml#/definitions/phandle
34+
description:
35+
phandle to the peer hub on the controller.
36+
3237
required:
3338
- compatible
3439
- reg

Documentation/devicetree/bindings/usb/mediatek,mtk-xhci.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,17 @@ properties:
124124
defined in the xHCI spec on MTK's controller.
125125
default: 5000
126126

127+
rx-fifo-depth:
128+
$ref: /schemas/types.yaml#/definitions/uint32
129+
description:
130+
It is a quirk used to work around Gen1 isoc-in endpoint transfer issue
131+
that still send out unexpected ACK after device finishes the burst
132+
transfer with a short packet and cause an exception, specially on a 4K
133+
camera device, it happens on controller before about IPM v1.6.0;
134+
the side-effect is that it may cause performance drop about 10%,
135+
including bulk transfer, prefer to use 3k here. The size is in bytes.
136+
enum: [1024, 2048, 3072, 4096]
137+
127138
# the following properties are only used for case 1
128139
wakeup-source:
129140
description: enable USB remote wakeup, see power/wakeup-source.txt

Documentation/devicetree/bindings/usb/nxp,ptn5110.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
$id: http://devicetree.org/schemas/usb/nxp,ptn5110.yaml#
55
$schema: http://devicetree.org/meta-schemas/core.yaml#
66

7-
title: NXP PTN5110 Typec Port Cotroller
7+
title: NXP PTN5110 Type-C Port Controller
88

99
maintainers:
1010
- Li Jun <jun.li@nxp.com>

0 commit comments

Comments
 (0)