Skip to content

Commit

Permalink
Merge tag 'usb-5.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/…
Browse files Browse the repository at this point in the history
…git/gregkh/usb

Pull USB / PHY updates from Greg KH:
 "Here is the big USB and PHY driver pull request for 5.3-rc1.

  Lots of stuff here, all of which has been in linux-next for a while
  with no reported issues. Nothing is earth-shattering, just constant
  forward progress for more devices supported and cleanups and small
  fixes:

   - USB gadget driver updates and fixes

   - new USB gadget driver for some hardware, followed by a quick revert
     of those patches as they were not ready to be merged...

   - PHY driver updates

   - Lots of new driver additions and cleanups with a few fixes mixed
     in"

* tag 'usb-5.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (145 commits)
  Revert "usb: gadget: storage: Remove warning message"
  Revert "dt-bindings: add binding for USBSS-DRD controller."
  Revert "usb:gadget Separated decoding functions from dwc3 driver."
  Revert "usb:gadget Patch simplify usb_decode_set_clear_feature function."
  Revert "usb:gadget Simplify usb_decode_get_set_descriptor function."
  Revert "usb:cdns3 Add Cadence USB3 DRD Driver"
  Revert "usb:cdns3 Fix for stuck packets in on-chip OUT buffer."
  usb :fsl: Change string format for errata property
  usb: host: Stops USB controller init if PLL fails to lock
  usb: linux/fsl_device: Add platform member has_fsl_erratum_a006918
  usb: phy: Workaround for USB erratum-A005728
  usb: fsl: Set USB_EN bit to select ULPI phy
  usb: Handle USB3 remote wakeup for LPM enabled devices correctly
  drivers/usb/typec/tps6598x.c: fix 4CC cmd write
  drivers/usb/typec/tps6598x.c: fix portinfo width
  usb: storage: scsiglue: Do not skip VPD if try_vpd_pages is set
  usb: renesas_usbhs: add a workaround for a race condition of workqueue
  usb: gadget: udc: renesas_usb3: remove redundant assignment to ret
  usb: dwc2: use a longer AHB idle timeout in dwc2_core_reset()
  USB: gadget: function: fix issue Unneeded variable: "value"
  ...
  • Loading branch information
torvalds committed Jul 11, 2019
2 parents d726197 + 2bc8bb8 commit 17a20ac
Show file tree
Hide file tree
Showing 176 changed files with 2,348 additions and 750 deletions.
29 changes: 29 additions & 0 deletions Documentation/devicetree/bindings/phy/mixel,mipi-dsi-phy.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
Mixel DSI PHY for i.MX8

The Mixel MIPI-DSI PHY IP block is e.g. found on i.MX8 platforms (along the
MIPI-DSI IP from Northwest Logic). It represents the physical layer for the
electrical signals for DSI.

Required properties:
- compatible: Must be:
- "fsl,imx8mq-mipi-dphy"
- clocks: Must contain an entry for each entry in clock-names.
- clock-names: Must contain the following entries:
- "phy_ref": phandle and specifier referring to the DPHY ref clock
- reg: the register range of the PHY controller
- #phy-cells: number of cells in PHY, as defined in
Documentation/devicetree/bindings/phy/phy-bindings.txt
this must be <0>

Optional properties:
- power-domains: phandle to power domain

Example:
dphy: dphy@30a0030 {
compatible = "fsl,imx8mq-mipi-dphy";
clocks = <&clk IMX8MQ_CLK_DSI_PHY_REF>;
clock-names = "phy_ref";
reg = <0x30a00300 0x100>;
power-domains = <&pd_mipi0>;
#phy-cells = <0>;
};
3 changes: 2 additions & 1 deletion Documentation/devicetree/bindings/phy/mxs-usb-phy.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ Required properties:
* "fsl,imx6sl-usbphy" for imx6sl
* "fsl,vf610-usbphy" for Vybrid vf610
* "fsl,imx6sx-usbphy" for imx6sx
* "fsl,imx7ulp-usbphy" for imx7ulp
"fsl,imx23-usbphy" is still a fallback for other strings
- reg: Should contain registers location and length
- interrupts: Should contain phy interrupt
Expand All @@ -23,7 +24,7 @@ Optional properties:
the 17.78mA TX reference current. Default: 100

Example:
usbphy1: usbphy@20c9000 {
usbphy1: usb-phy@20c9000 {
compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy";
reg = <0x020c9000 0x1000>;
interrupts = <0 44 0x04>;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,18 @@ Required properties:
- reset-names: Must include the following entries:
- "padctl"

For Tegra124:
- avdd-pll-utmip-supply: UTMI PLL power supply. Must supply 1.8 V.
- avdd-pll-erefe-supply: PLLE reference PLL power supply. Must supply 1.05 V.
- avdd-pex-pll-supply: PCIe/USB3 PLL power supply. Must supply 1.05 V.
- hvdd-pex-pll-e-supply: High-voltage PLLE power supply. Must supply 3.3 V.

For Tegra210:
- avdd-pll-utmip-supply: UTMI PLL power supply. Must supply 1.8 V.
- avdd-pll-uerefe-supply: PLLE reference PLL power supply. Must supply 1.05 V.
- dvdd-pex-pll-supply: PCIe/USB3 PLL power supply. Must supply 1.05 V.
- hvdd-pex-pll-e-supply: High-voltage PLLE power supply. Must supply 1.8 V.

For Tegra186:
- avdd-pll-erefeut-supply: UPHY brick and reference clock as well as UTMI PHY
power supply. Must supply 1.8 V.
Expand Down
18 changes: 18 additions & 0 deletions Documentation/devicetree/bindings/phy/phy-pxa-usb.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
Marvell PXA USB PHY
-------------------

Required properties:
- compatible: one of: "marvell,mmp2-usb-phy", "marvell,pxa910-usb-phy",
"marvell,pxa168-usb-phy",
- #phy-cells: must be 0

Example:
usb-phy: usbphy@d4207000 {
compatible = "marvell,mmp2-usb-phy";
reg = <0xd4207000 0x40>;
#phy-cells = <0>;
status = "okay";
};

This document explains the device tree binding. For general
information about PHY subsystem refer to Documentation/phy.txt
42 changes: 42 additions & 0 deletions Documentation/devicetree/bindings/phy/qcom-pcie2-phy.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
Qualcomm PCIe2 PHY controller
=============================

The Qualcomm PCIe2 PHY is a Synopsys based phy found in a number of Qualcomm
platforms.

Required properties:
- compatible: compatible list, should be:
"qcom,qcs404-pcie2-phy", "qcom,pcie2-phy"

- reg: offset and length of the PHY register set.
- #phy-cells: must be 0.

- clocks: a clock-specifier pair for the "pipe" clock

- vdda-vp-supply: phandle to low voltage regulator
- vdda-vph-supply: phandle to high voltage regulator

- resets: reset-specifier pairs for the "phy" and "pipe" resets
- reset-names: list of resets, should contain:
"phy" and "pipe"

- clock-output-names: name of the outgoing clock signal from the PHY PLL
- #clock-cells: must be 0

Example:
phy@7786000 {
compatible = "qcom,qcs404-pcie2-phy", "qcom,pcie2-phy";
reg = <0x07786000 0xb8>;

clocks = <&gcc GCC_PCIE_0_PIPE_CLK>;
resets = <&gcc GCC_PCIEPHY_0_PHY_BCR>,
<&gcc GCC_PCIE_0_PIPE_ARES>;
reset-names = "phy", "pipe";

vdda-vp-supply = <&vreg_l3_1p05>;
vdda-vph-supply = <&vreg_l5_1p8>;

clock-output-names = "pcie_0_pipe_clk";
#clock-cells = <0>;
#phy-cells = <0>;
};
13 changes: 9 additions & 4 deletions Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb2.txt
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
* Renesas R-Car generation 3 USB 2.0 PHY

This file provides information on what the device node for the R-Car generation
3, RZ/G1C and RZ/G2 USB 2.0 PHY contain.
3, RZ/G1C, RZ/G2 and RZ/A2 USB 2.0 PHY contain.

Required properties:
- compatible: "renesas,usb2-phy-r8a77470" if the device is a part of an R8A77470
- compatible: "renesas,usb2-phy-r7s9210" if the device is a part of an R7S9210
SoC.
"renesas,usb2-phy-r8a77470" if the device is a part of an R8A77470
SoC.
"renesas,usb2-phy-r8a774a1" if the device is a part of an R8A774A1
SoC.
Expand All @@ -20,8 +22,8 @@ Required properties:
R8A77990 SoC.
"renesas,usb2-phy-r8a77995" if the device is a part of an
R8A77995 SoC.
"renesas,rcar-gen3-usb2-phy" for a generic R-Car Gen3 or RZ/G2
compatible device.
"renesas,rcar-gen3-usb2-phy" for a generic R-Car Gen3, RZ/G2 or
RZ/A2 compatible device.

When compatible with the generic version, nodes must list the
SoC-specific version corresponding to the platform first
Expand All @@ -46,6 +48,9 @@ channel as USB OTG:
regulator will be managed during the PHY power on/off sequence.
- renesas,no-otg-pins: boolean, specify when a board does not provide proper
otg pins.
- dr_mode: string, indicates the working mode for the PHY. Can be "host",
"peripheral", or "otg". Should be set if otg controller is not used.


Example (R-Car H3):

Expand Down
3 changes: 3 additions & 0 deletions Documentation/devicetree/bindings/usb/dwc2.txt
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@ Refer to phy/phy-bindings.txt for generic phy consumer properties
- g-rx-fifo-size: size of rx fifo size in gadget mode.
- g-np-tx-fifo-size: size of non-periodic tx fifo size in gadget mode.
- g-tx-fifo-size: size of periodic tx fifo per endpoint (except ep0) in gadget mode.
- snps,need-phy-for-wake: If present indicates that the phy needs to be left
on for remote wakeup during suspend.
- snps,reset-phy-on-wake: If present indicates that we need to reset the PHY when
we detect a wakeup. This is due to a hardware errata.

Expand All @@ -58,4 +60,5 @@ Example:
clock-names = "otg";
phys = <&usbphy>;
phy-names = "usb2-phy";
snps,need-phy-for-wake;
};
2 changes: 2 additions & 0 deletions Documentation/devicetree/bindings/usb/dwc3.txt
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,8 @@ Optional properties:
- snps,dis_u2_susphy_quirk: when set core will disable USB2 suspend phy.
- snps,dis_enblslpm_quirk: when set clears the enblslpm in GUSB2PHYCFG,
disabling the suspend signal to the PHY.
- snps,dis-u1-entry-quirk: set if link entering into U1 needs to be disabled.
- snps,dis-u2-entry-quirk: set if link entering into U2 needs to be disabled.
- snps,dis_rxdet_inp3_quirk: when set core will disable receiver detection
in PHY P3 power state.
- snps,dis-u2-freeclk-exists-quirk: when set, clear the u2_freeclk_exists
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,11 @@ Required properties:
- "renesas,usbhs-r8a77990" for r8a77990 (R-Car E3) compatible device
- "renesas,usbhs-r8a77995" for r8a77995 (R-Car D3) compatible device
- "renesas,usbhs-r7s72100" for r7s72100 (RZ/A1) compatible device
- "renesas,usbhs-r7s9210" for r7s9210 (RZ/A2) compatible device
- "renesas,rcar-gen2-usbhs" for R-Car Gen2 or RZ/G1 compatible devices
- "renesas,rcar-gen3-usbhs" for R-Car Gen3 or RZ/G2 compatible devices
- "renesas,rza1-usbhs" for RZ/A1 compatible device
- "renesas,rza2-usbhs" for RZ/A2 compatible device

When compatible with the generic version, nodes must list the
SoC-specific version corresponding to the platform first followed
Expand Down
1 change: 1 addition & 0 deletions Documentation/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,7 @@ needed).
filesystems/index
vm/index
bpf/index
usb/index
misc-devices/index

Architecture-specific documentation
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -254,7 +254,7 @@ Device:
- connect the gadget to a host, preferably not the one used
to control the gadget
- run a program which writes to /dev/hidg<N>, e.g.
a userspace program found in Documentation/usb/gadget_hid.txt::
a userspace program found in Documentation/usb/gadget_hid.rst::

$ ./hid_gadget_test /dev/hidg0 keyboard

Expand Down Expand Up @@ -886,7 +886,7 @@ host::
# cat /dev/usb/lp0

More advanced testing can be done with the prn_example
described in Documentation/usb/gadget_printer.txt.
described in Documentation/usb/gadget_printer.rst.


20. UAC1 function (virtual ALSA card, using u_audio API)
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
39 changes: 39 additions & 0 deletions Documentation/usb/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
===========
USB support
===========

.. toctree::
:maxdepth: 1

acm
authorization
chipidea
dwc3
ehci
functionfs
gadget_configfs
gadget_hid
gadget_multi
gadget_printer
gadget_serial
gadget-testing
iuu_phoenix
mass-storage
misc_usbsevseg
mtouchusb
ohci
rio
usbip_protocol
usbmon
usb-serial
wusb-design-overview

usb-help
text_files

.. only:: subproject and html

Indices
=======

* :ref:`genindex`
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
29 changes: 29 additions & 0 deletions Documentation/usb/text_files.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
Linux CDC ACM inf
-----------------

.. include:: linux-cdc-acm.inf
:literal:

Linux inf
---------

.. include:: linux.inf
:literal:

USB devfs drop permissions source
---------------------------------

.. literalinclude:: usbdevfs-drop-permissions.c
:language: c

WUSB command line script to manipulate auth credentials
-------------------------------------------------------

.. literalinclude:: wusb-cbaf
:language: shell

Credits
-------

.. include:: CREDITS
:literal:
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
12 changes: 6 additions & 6 deletions MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -3792,7 +3792,7 @@ F: scripts/extract-cert.c
CERTIFIED WIRELESS USB (WUSB) SUBSYSTEM:
L: [email protected]
S: Orphan
F: Documentation/usb/WUSB-Design-overview.txt
F: Documentation/usb/wusb-design-overview.rst
F: Documentation/usb/wusb-cbaf
F: drivers/usb/host/hwa-hc.c
F: drivers/usb/host/whci/
Expand Down Expand Up @@ -16422,7 +16422,7 @@ USB ACM DRIVER
M: Oliver Neukum <[email protected]>
L: [email protected]
S: Maintained
F: Documentation/usb/acm.txt
F: Documentation/usb/acm.rst
F: drivers/usb/class/cdc-acm.*

USB AR5523 WIRELESS DRIVER
Expand Down Expand Up @@ -16475,7 +16475,7 @@ USB EHCI DRIVER
M: Alan Stern <[email protected]>
L: [email protected]
S: Maintained
F: Documentation/usb/ehci.txt
F: Documentation/usb/ehci.rst
F: drivers/usb/host/ehci*

USB GADGET/PERIPHERAL SUBSYSTEM
Expand Down Expand Up @@ -16549,7 +16549,7 @@ USB OHCI DRIVER
M: Alan Stern <[email protected]>
L: [email protected]
S: Maintained
F: Documentation/usb/ohci.txt
F: Documentation/usb/ohci.rst
F: drivers/usb/host/ohci*

USB OTG FSM (Finite State Machine)
Expand All @@ -16565,7 +16565,7 @@ M: Shuah Khan <[email protected]>
M: Shuah Khan <[email protected]>
L: [email protected]
S: Maintained
F: Documentation/usb/usbip_protocol.txt
F: Documentation/usb/usbip_protocol.rst
F: drivers/usb/usbip/
F: tools/usb/usbip/
F: tools/testing/selftests/drivers/usb/usbip/
Expand Down Expand Up @@ -16613,7 +16613,7 @@ M: Johan Hovold <[email protected]>
L: [email protected]
T: git git://git.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial.git
S: Maintained
F: Documentation/usb/usb-serial.txt
F: Documentation/usb/usb-serial.rst
F: drivers/usb/serial/
F: include/linux/usb/serial.h

Expand Down
2 changes: 2 additions & 0 deletions arch/arm/boot/dts/rk3288-veyron.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -424,6 +424,7 @@

&usb_host1 {
status = "okay";
snps,need-phy-for-wake;
};

&usb_otg {
Expand All @@ -432,6 +433,7 @@
assigned-clocks = <&cru SCLK_USBPHY480M_SRC>;
assigned-clock-parents = <&usbphy0>;
dr_mode = "host";
snps,need-phy-for-wake;
};

&vopb {
Expand Down
1 change: 1 addition & 0 deletions crypto/ccm.c
Original file line number Diff line number Diff line change
Expand Up @@ -1009,3 +1009,4 @@ MODULE_DESCRIPTION("Counter with CBC MAC");
MODULE_ALIAS_CRYPTO("ccm_base");
MODULE_ALIAS_CRYPTO("rfc4309");
MODULE_ALIAS_CRYPTO("ccm");
MODULE_ALIAS_CRYPTO("cbcmac");
2 changes: 1 addition & 1 deletion drivers/phy/amlogic/phy-meson-g12a-usb3-pcie.c
Original file line number Diff line number Diff line change
Expand Up @@ -188,7 +188,7 @@ static const struct regmap_config phy_g12a_usb3_pcie_cr_regmap_conf = {
.reg_read = phy_g12a_usb3_pcie_cr_bus_read,
.reg_write = phy_g12a_usb3_pcie_cr_bus_write,
.max_register = 0xffff,
.fast_io = true,
.disable_locking = true,
};

static int phy_g12a_usb3_init(struct phy *phy)
Expand Down
Loading

0 comments on commit 17a20ac

Please sign in to comment.