Merge tag 'usb-4.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
Pull USB/PHY updates from Greg KH: "Here is the big set of USB and PHY driver updates for 4.15-rc1. There is the usual amount of gadget and xhci driver updates, along with phy and chipidea enhancements. There's also a lot of SPDX tags and license boilerplate cleanups as well, which provide some churn in the diffstat. Other major thing is the typec code that moved out of staging and into the "real" part of the drivers/usb/ tree, which was nice to see happen. All of these have been in linux-next with no reported issues for a while" * tag 'usb-4.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (263 commits) usb: gadget: f_fs: Fix use-after-free in ffs_free_inst USB: usbfs: compute urb->actual_length for isochronous usb: core: message: remember to reset 'ret' to 0 when necessary USB: typec: Remove remaining redundant license text USB: typec: add SPDX identifiers to some files USB: renesas_usbhs: rcar?.h: add SPDX tags USB: chipidea: ci_hdrc_tegra.c: add SPDX line USB: host: xhci-debugfs: add SPDX lines USB: add SPDX identifiers to all remaining Makefiles usb: host: isp1362-hcd: remove a couple of redundant assignments USB: adutux: remove redundant variable minor usb: core: add a new usb_get_ptm_status() helper usb: core: add a 'type' parameter to usb_get_status() usb: core: introduce a new usb_get_std_status() helper usb: core: rename usb_get_status() 'type' argument to 'recip' usb: core: add Status Type definitions USB: gadget: Remove redundant license text USB: gadget: function: Remove redundant license text USB: gadget: udc: Remove redundant license text USB: gadget: legacy: Remove redundant license text ...
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
Broadcom STB USB PHY
|
||||
|
||||
Required properties:
|
||||
- compatible: brcm,brcmstb-usb-phy
|
||||
- reg: two offset and length pairs.
|
||||
The first pair specifies a manditory set of memory mapped
|
||||
registers used for general control of the PHY.
|
||||
The second pair specifies optional registers used by some of
|
||||
the SoCs that support USB 3.x
|
||||
- #phy-cells: Shall be 1 as it expects one argument for setting
|
||||
the type of the PHY. Possible values are:
|
||||
- PHY_TYPE_USB2 for USB1.1/2.0 PHY
|
||||
- PHY_TYPE_USB3 for USB3.x PHY
|
||||
|
||||
Optional Properties:
|
||||
- clocks : clock phandles.
|
||||
- clock-names: String, clock name.
|
||||
- brcm,ipp: Boolean, Invert Port Power.
|
||||
Possible values are: 0 (Don't invert), 1 (Invert)
|
||||
- brcm,ioc: Boolean, Invert Over Current detection.
|
||||
Possible values are: 0 (Don't invert), 1 (Invert)
|
||||
NOTE: one or both of the following two properties must be set
|
||||
- brcm,has-xhci: Boolean indicating the phy has an XHCI phy.
|
||||
- brcm,has-eohci: Boolean indicating the phy has an EHCI/OHCI phy.
|
||||
- dr_mode: String, PHY Device mode.
|
||||
Possible values are: "host", "peripheral ", "drd" or "typec-pd"
|
||||
If this property is not defined, the phy will default to "host" mode.
|
||||
|
||||
Example:
|
||||
|
||||
usbphy_0: usb-phy@f0470200 {
|
||||
reg = <0xf0470200 0xb8>,
|
||||
<0xf0471940 0x6c0>;
|
||||
compatible = "brcm,brcmstb-usb-phy";
|
||||
#phy-cells = <1>;
|
||||
dr_mode = "host"
|
||||
brcm,ioc = <1>;
|
||||
brcm,ipp = <1>;
|
||||
brcm,has-xhci;
|
||||
brcm,has-eohci;
|
||||
clocks = <&usb20>, <&usb30>;
|
||||
clock-names = "sw_usb", "sw_usb3";
|
||||
};
|
@@ -27,7 +27,16 @@ Sub-nodes optional properties:
|
||||
This property is not applicable for "brcm,iproc-ns2-sata-phy",
|
||||
"brcm,iproc-nsp-sata-phy" and "brcm,iproc-sr-sata-phy".
|
||||
|
||||
Example:
|
||||
- brcm,rxaeq-mode: string that indicates the desired RX equalizer
|
||||
mode, possible values are:
|
||||
"off" (equivalent to not specifying the property)
|
||||
"auto"
|
||||
"manual" (brcm,rxaeq-value is used in that case)
|
||||
|
||||
- brcm,rxaeq-value: when 'rxaeq-mode' is set to "manual", provides the RX
|
||||
equalizer value that should be used. Allowed range is 0..63.
|
||||
|
||||
Example
|
||||
sata-phy@f0458100 {
|
||||
compatible = "brcm,bcm7445-sata-phy", "brcm,phy-sata3";
|
||||
reg = <0xf0458100 0x1e00>, <0xf045804c 0x10>;
|
||||
|
@@ -4,10 +4,13 @@ This file provides information on what the device node for the R-Car generation
|
||||
2 USB PHY contains.
|
||||
|
||||
Required properties:
|
||||
- compatible: "renesas,usb-phy-r8a7790" if the device is a part of R8A7790 SoC.
|
||||
- compatible: "renesas,usb-phy-r8a7743" if the device is a part of R8A7743 SoC.
|
||||
"renesas,usb-phy-r8a7745" if the device is a part of R8A7745 SoC.
|
||||
"renesas,usb-phy-r8a7790" if the device is a part of R8A7790 SoC.
|
||||
"renesas,usb-phy-r8a7791" if the device is a part of R8A7791 SoC.
|
||||
"renesas,usb-phy-r8a7794" if the device is a part of R8A7794 SoC.
|
||||
"renesas,rcar-gen2-usb-phy" for a generic R-Car Gen2 compatible device.
|
||||
"renesas,rcar-gen2-usb-phy" for a generic R-Car Gen2 or
|
||||
RZ/G1 compatible device.
|
||||
|
||||
When compatible with the generic version, nodes must list the
|
||||
SoC-specific version corresponding to the platform first
|
||||
|
@@ -8,6 +8,8 @@ Required properties:
|
||||
SoC.
|
||||
"renesas,usb2-phy-r8a7796" if the device is a part of an R8A7796
|
||||
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 compatible device.
|
||||
|
||||
When compatible with the generic version, nodes must list the
|
||||
|
@@ -19,6 +19,8 @@ Required properties:
|
||||
configured in FS mode;
|
||||
- "st,stm32f4x9-hsotg": The DWC2 USB HS controller instance in STM32F4x9 SoCs
|
||||
configured in HS mode;
|
||||
- "st,stm32f7xx-hsotg": The DWC2 USB HS controller instance in STM32F7xx SoCs
|
||||
configured in HS mode;
|
||||
- reg : Should contain 1 register range (address and length)
|
||||
- interrupts : Should contain 1 interrupt
|
||||
- clocks: clock provider specifier
|
||||
|
26
Documentation/devicetree/bindings/usb/maxim,max3421.txt
Normal file
26
Documentation/devicetree/bindings/usb/maxim,max3421.txt
Normal file
@@ -0,0 +1,26 @@
|
||||
Maxim Integrated SPI-based USB 2.0 host controller MAX3421E
|
||||
|
||||
Required properties:
|
||||
- compatible: Should be "maxim,max3421"
|
||||
- spi-max-frequency: maximum frequency for this device must not exceed 26 MHz.
|
||||
- reg: chip select number to which this device is connected.
|
||||
- maxim,vbus-en-pin: <GPOUTx ACTIVE_LEVEL>
|
||||
GPOUTx is the number (1-8) of the GPOUT pin of MAX3421E to drive Vbus.
|
||||
ACTIVE_LEVEL is 0 or 1.
|
||||
- interrupts: the interrupt line description for the interrupt controller.
|
||||
The driver configures MAX3421E for active low level triggered interrupts,
|
||||
configure your interrupt line accordingly.
|
||||
|
||||
Optional property:
|
||||
- interrupt-parent: the phandle to the associated interrupt controller.
|
||||
|
||||
Example:
|
||||
|
||||
usb@0 {
|
||||
compatible = "maxim,max3421";
|
||||
reg = <0>;
|
||||
maxim,vbus-en-pin = <3 1>;
|
||||
spi-max-frequency = <26000000>;
|
||||
interrupt-parent = <&PIC>;
|
||||
interrupts = <42>;
|
||||
};
|
@@ -26,10 +26,11 @@ Required properties:
|
||||
- clocks : a list of phandle + clock-specifier pairs, one for each
|
||||
entry in clock-names
|
||||
- clock-names : must contain
|
||||
"sys_ck": for clock of xHCI MAC
|
||||
"ref_ck": for reference clock of xHCI MAC
|
||||
"wakeup_deb_p0": for USB wakeup debounce clock of port0
|
||||
"wakeup_deb_p1": for USB wakeup debounce clock of port1
|
||||
"sys_ck": controller clock used by normal mode,
|
||||
the following ones are optional:
|
||||
"ref_ck": reference clock used by low power mode etc,
|
||||
"mcu_ck": mcu_bus clock for register access,
|
||||
"dma_ck": dma_bus clock for data transfer by DMA
|
||||
|
||||
- phys : a list of phandle + phy specifier pairs
|
||||
|
||||
@@ -38,6 +39,8 @@ Optional properties:
|
||||
mode;
|
||||
- mediatek,syscon-wakeup : phandle to syscon used to access USB wakeup
|
||||
control register, it depends on "mediatek,wakeup-src".
|
||||
- mediatek,u3p-dis-msk : mask to disable u3ports, bit0 for u3port0,
|
||||
bit1 for u3port1, ... etc;
|
||||
- vbus-supply : reference to the VBUS regulator;
|
||||
- usb3-lpm-capable : supports USB3.0 LPM
|
||||
- pinctrl-names : a pinctrl state named "default" must be defined
|
||||
@@ -55,9 +58,7 @@ usb30: usb@11270000 {
|
||||
clocks = <&topckgen CLK_TOP_USB30_SEL>, <&clk26m>,
|
||||
<&pericfg CLK_PERI_USB0>,
|
||||
<&pericfg CLK_PERI_USB1>;
|
||||
clock-names = "sys_ck", "ref_ck",
|
||||
"wakeup_deb_p0",
|
||||
"wakeup_deb_p1";
|
||||
clock-names = "sys_ck", "ref_ck";
|
||||
phys = <&phy_port0 PHY_TYPE_USB3>,
|
||||
<&phy_port1 PHY_TYPE_USB2>;
|
||||
vusb33-supply = <&mt6397_vusb_reg>;
|
||||
@@ -89,9 +90,8 @@ Required properties:
|
||||
|
||||
- clocks : a list of phandle + clock-specifier pairs, one for each
|
||||
entry in clock-names
|
||||
- clock-names : must be
|
||||
"sys_ck": for clock of xHCI MAC
|
||||
"ref_ck": for reference clock of xHCI MAC
|
||||
- clock-names : must contain "sys_ck", and the following ones are optional:
|
||||
"ref_ck", "mcu_ck" and "dma_ck"
|
||||
|
||||
Optional properties:
|
||||
- vbus-supply : reference to the VBUS regulator;
|
||||
|
@@ -14,9 +14,9 @@ Required properties:
|
||||
- vusb33-supply : regulator of USB avdd3.3v
|
||||
- clocks : a list of phandle + clock-specifier pairs, one for each
|
||||
entry in clock-names
|
||||
- clock-names : must contain "sys_ck" and "ref_ck" for clock of controller;
|
||||
"wakeup_deb_p0" and "wakeup_deb_p1" are optional, they are
|
||||
depends on "mediatek,enable-wakeup"
|
||||
- clock-names : must contain "sys_ck" for clock of controller,
|
||||
the following clocks are optional:
|
||||
"ref_ck", "mcu_ck" and "dam_ck";
|
||||
- phys : a list of phandle + phy specifier pairs
|
||||
- dr_mode : should be one of "host", "peripheral" or "otg",
|
||||
refer to usb/generic.txt
|
||||
@@ -30,9 +30,10 @@ Optional properties:
|
||||
when supports dual-role mode.
|
||||
- vbus-supply : reference to the VBUS regulator, needed when supports
|
||||
dual-role mode.
|
||||
- pinctl-names : a pinctrl state named "default" must be defined,
|
||||
"id_float" and "id_ground" are optinal which depends on
|
||||
"mediatek,enable-manual-drd"
|
||||
- pinctrl-names : a pinctrl state named "default" is optional, and need be
|
||||
defined if auto drd switch is enabled, that means the property dr_mode
|
||||
is set as "otg", and meanwhile the property "mediatek,enable-manual-drd"
|
||||
is not set.
|
||||
- pinctrl-0 : pin control group
|
||||
See: Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt
|
||||
|
||||
@@ -44,6 +45,8 @@ Optional properties:
|
||||
- mediatek,enable-wakeup : supports ip sleep wakeup used by host mode
|
||||
- mediatek,syscon-wakeup : phandle to syscon used to access USB wakeup
|
||||
control register, it depends on "mediatek,enable-wakeup".
|
||||
- mediatek,u3p-dis-msk : mask to disable u3ports, bit0 for u3port0,
|
||||
bit1 for u3port1, ... etc;
|
||||
|
||||
Sub-nodes:
|
||||
The xhci should be added as subnode to mtu3 as shown in the following example
|
||||
@@ -63,9 +66,7 @@ ssusb: usb@11271000 {
|
||||
clocks = <&topckgen CLK_TOP_USB30_SEL>, <&clk26m>,
|
||||
<&pericfg CLK_PERI_USB0>,
|
||||
<&pericfg CLK_PERI_USB1>;
|
||||
clock-names = "sys_ck", "ref_ck",
|
||||
"wakeup_deb_p0",
|
||||
"wakeup_deb_p1";
|
||||
clock-names = "sys_ck", "ref_ck";
|
||||
vusb33-supply = <&mt6397_vusb_reg>;
|
||||
vbus-supply = <&usb_p0_vbus>;
|
||||
extcon = <&extcon_usb>;
|
||||
|
@@ -15,6 +15,10 @@ Required properties:
|
||||
- interrupts: Interrupt specifier for the USB3.0 Peripheral
|
||||
- clocks: clock phandle and specifier pair
|
||||
|
||||
Optional properties:
|
||||
- phys: phandle + phy specifier pair
|
||||
- phy-names: must be "usb"
|
||||
|
||||
Example of R-Car H3 ES1.x:
|
||||
usb3_peri0: usb@ee020000 {
|
||||
compatible = "renesas,r8a7795-usb3-peri",
|
||||
|
@@ -3,6 +3,8 @@ Renesas Electronics USBHS driver
|
||||
Required properties:
|
||||
- compatible: Must contain one or more of the following:
|
||||
|
||||
- "renesas,usbhs-r8a7743" for r8a7743 (RZ/G1M) compatible device
|
||||
- "renesas,usbhs-r8a7745" for r8a7745 (RZ/G1E) compatible device
|
||||
- "renesas,usbhs-r8a7790" for r8a7790 (R-Car H2) compatible device
|
||||
- "renesas,usbhs-r8a7791" for r8a7791 (R-Car M2-W) compatible device
|
||||
- "renesas,usbhs-r8a7792" for r8a7792 (R-Car V2H) compatible device
|
||||
@@ -10,7 +12,8 @@ Required properties:
|
||||
- "renesas,usbhs-r8a7794" for r8a7794 (R-Car E2) compatible device
|
||||
- "renesas,usbhs-r8a7795" for r8a7795 (R-Car H3) compatible device
|
||||
- "renesas,usbhs-r8a7796" for r8a7796 (R-Car M3-W) compatible device
|
||||
- "renesas,rcar-gen2-usbhs" for R-Car Gen2 compatible device
|
||||
- "renesas,usbhs-r8a77995" for r8a77995 (R-Car D3) compatible device
|
||||
- "renesas,rcar-gen2-usbhs" for R-Car Gen2 or RZ/G1 compatible devices
|
||||
- "renesas,rcar-gen3-usbhs" for R-Car Gen3 compatible device
|
||||
|
||||
When compatible with the generic version, nodes must list the
|
||||
|
@@ -26,6 +26,7 @@ Required properties:
|
||||
|
||||
Optional properties:
|
||||
- clocks: reference to a clock
|
||||
- usb2-lpm-disable: indicate if we don't want to enable USB2 HW LPM
|
||||
- usb3-lpm-capable: determines if platform is USB3 LPM capable
|
||||
- quirk-broken-port-ped: set if the controller has broken port disable mechanism
|
||||
|
||||
|
@@ -1,16 +1,17 @@
|
||||
Microchip USB 2.0 Hi-Speed Hub Controller
|
||||
|
||||
The device node for the configuration of a Microchip USB251xB/xBi USB 2.0
|
||||
The device node for the configuration of a Microchip USB251x/xBi USB 2.0
|
||||
Hi-Speed Controller.
|
||||
|
||||
Required properties :
|
||||
- compatible : Should be "microchip,usb251xb" or one of the specific types:
|
||||
"microchip,usb2512b", "microchip,usb2512bi", "microchip,usb2513b",
|
||||
"microchip,usb2513bi", "microchip,usb2514b", "microchip,usb2514bi"
|
||||
- reset-gpios : Should specify the gpio for hub reset
|
||||
"microchip,usb2513bi", "microchip,usb2514b", "microchip,usb2514bi",
|
||||
"microchip,usb2517", "microchip,usb2517i"
|
||||
- reg : I2C address on the selected bus (default is <0x2C>)
|
||||
|
||||
Optional properties :
|
||||
- reset-gpios : Should specify the gpio for hub reset
|
||||
- skip-config : Skip Hub configuration, but only send the USB-Attach command
|
||||
- vendor-id : Set USB Vendor ID of the hub (16 bit, default is 0x0424)
|
||||
- product-id : Set USB Product ID of the hub (16 bit, default depends on type)
|
||||
@@ -19,29 +20,47 @@ Optional properties :
|
||||
- manufacturer : Set USB Manufacturer string (max 31 characters long)
|
||||
- product : Set USB Product string (max 31 characters long)
|
||||
- serial : Set USB Serial string (max 31 characters long)
|
||||
- {bus,self}-powered : selects between self- and bus-powered operation (default
|
||||
is self-powered)
|
||||
- disable-hi-speed : disable USB Hi-Speed support
|
||||
- {bus,self}-powered : selects between self- and bus-powered operation
|
||||
(boolean, default is self-powered)
|
||||
- disable-hi-speed : disable USB Hi-Speed support (boolean)
|
||||
- {multi,single}-tt : selects between multi- and single-transaction-translator
|
||||
(default is multi-tt)
|
||||
- disable-eop : disable End of Packet generation in full-speed mode
|
||||
(boolean, default is multi-tt)
|
||||
- disable-eop : disable End of Packet generation in full-speed mode (boolean)
|
||||
- {ganged,individual}-sensing : select over-current sense type in self-powered
|
||||
mode (default is individual)
|
||||
mode (boolean, default is individual)
|
||||
- {ganged,individual}-port-switching : select port power switching mode
|
||||
(default is individual)
|
||||
(boolean, default is individual)
|
||||
- dynamic-power-switching : enable auto-switching from self- to bus-powered
|
||||
operation if the local power source is removed or unavailable
|
||||
operation if the local power source is removed or unavailable (boolean)
|
||||
- oc-delay-us : Delay time (in microseconds) for filtering the over-current
|
||||
sense inputs. Valid values are 100, 4000, 8000 (default) and 16000. If
|
||||
an invalid value is given, the default is used instead.
|
||||
- compound-device : indicate the hub is part of a compound device
|
||||
- port-mapping-mode : enable port mapping mode
|
||||
- compound-device : indicate the hub is part of a compound device (boolean)
|
||||
- port-mapping-mode : enable port mapping mode (boolean)
|
||||
- led-{usb,speed}-mode : led usb/speed indication mode selection
|
||||
(boolean, default is speed mode)
|
||||
- string-support : enable string descriptor support (required for manufacturer,
|
||||
product and serial string configuration)
|
||||
- non-removable-ports : Should specify the ports which have a non-removable
|
||||
device connected.
|
||||
- sp-disabled-ports : Specifies the ports which will be self-power disabled
|
||||
- bp-disabled-ports : Specifies the ports which will be bus-power disabled
|
||||
- sp-max-total-current-microamp: Specifies max current consumed by the hub
|
||||
from VBUS when operating in self-powered hub. It includes the hub
|
||||
silicon along with all associated circuitry including a permanently
|
||||
attached peripheral (range: 0 - 100000 uA, default 1000 uA)
|
||||
- bp-max-total-current-microamp: Specifies max current consumed by the hub
|
||||
from VBUS when operating in self-powered hub. It includes the hub
|
||||
silicon along with all associated circuitry including a permanently
|
||||
attached peripheral (range: 0 - 510000 uA, default 100000 uA)
|
||||
- sp-max-removable-current-microamp: Specifies max current consumed by the hub
|
||||
from VBUS when operating in self-powered hub. It includes the hub
|
||||
silicon along with all associated circuitry excluding a permanently
|
||||
attached peripheral (range: 0 - 100000 uA, default 1000 uA)
|
||||
- bp-max-removable-current-microamp: Specifies max current consumed by the hub
|
||||
from VBUS when operating in self-powered hub. It includes the hub
|
||||
silicon along with all associated circuitry excluding a permanently
|
||||
attached peripheral (range: 0 - 510000 uA, default 100000 uA)
|
||||
- power-on-time-ms : Specifies the time it takes from the time the host
|
||||
initiates the power-on sequence to a port until the port has adequate
|
||||
power. The value is given in ms in a 0 - 510 range (default is 100ms).
|
||||
@@ -56,7 +75,6 @@ Examples:
|
||||
usb2514b@2c {
|
||||
compatible = "microchip,usb2514b";
|
||||
reg = <0x2c>;
|
||||
reset-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
|
||||
vendor-id = /bits/ 16 <0x0000>;
|
||||
product-id = /bits/ 16 <0x0000>;
|
||||
string-support;
|
||||
|
Reference in New Issue
Block a user