ARM: dts: keystone: specify usb mode explicitly

The USB OTG mode is not supported by Kestone 2 devices, as result, the
USB devices enumeration and detection will not work properly when
kernel is built with CONFIG_USB_DWC3_DUAL_ROLE=y (default for multi
platform build):
 - it's required to load gadget drivers manually to make host mode
work and this confuses current Keystone 2 users
 - device mode is not working, because port can't detect and switch to
peripheral/host mode dynamically.

Hence, specify usb mode explicitly in DT: usb0 = "host" for all KS2
devices and usb1 = "peripheral" for K2E.

Cc: Sekhar Nori <nsekhar@ti.com>
Cc: Roger Quadros <rogerq@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Santosh Shilimkar <ssantosh@kernel.org>
This commit is contained in:
Grygorii Strashko 2016-08-31 16:29:59 -04:00 committed by Santosh Shilimkar
parent 29b4817d40
commit 644978440c
5 changed files with 24 additions and 8 deletions

View file

@ -47,18 +47,26 @@
status = "okay"; status = "okay";
}; };
&usb { &keystone_usb0 {
status = "okay"; status = "okay";
}; };
&usb0 {
dr_mode = "host";
};
&usb1_phy { &usb1_phy {
status = "okay"; status = "okay";
}; };
&usb1 { &keystone_usb1 {
status = "okay"; status = "okay";
}; };
&usb1 {
dr_mode = "peripheral";
};
&i2c0 { &i2c0 {
dtt@50 { dtt@50 {
compatible = "at,24c1024"; compatible = "at,24c1024";

View file

@ -61,7 +61,7 @@
status = "disabled"; status = "disabled";
}; };
usb1: usb@25000000 { keystone_usb1: usb@25000000 {
compatible = "ti,keystone-dwc3"; compatible = "ti,keystone-dwc3";
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
@ -74,7 +74,7 @@
dma-ranges; dma-ranges;
status = "disabled"; status = "disabled";
dwc3@25010000 { usb1: dwc3@25010000 {
compatible = "synopsys,dwc3"; compatible = "synopsys,dwc3";
reg = <0x25010000 0x70000>; reg = <0x25010000 0x70000>;
interrupts = <GIC_SPI 414 IRQ_TYPE_EDGE_RISING>; interrupts = <GIC_SPI 414 IRQ_TYPE_EDGE_RISING>;

View file

@ -83,10 +83,14 @@
status = "okay"; status = "okay";
}; };
&usb { &keystone_usb0 {
status = "okay"; status = "okay";
}; };
&usb0 {
dr_mode = "host";
};
&aemif { &aemif {
cs0 { cs0 {
#address-cells = <2>; #address-cells = <2>;

View file

@ -32,10 +32,14 @@
status = "okay"; status = "okay";
}; };
&usb { &keystone_usb0 {
status = "okay"; status = "okay";
}; };
&usb0 {
dr_mode = "host";
};
&i2c0 { &i2c0 {
dtt@50 { dtt@50 {
compatible = "at,24c1024"; compatible = "at,24c1024";

View file

@ -196,7 +196,7 @@
status = "disabled"; status = "disabled";
}; };
usb: usb@2680000 { keystone_usb0: usb@2680000 {
compatible = "ti,keystone-dwc3"; compatible = "ti,keystone-dwc3";
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
@ -209,7 +209,7 @@
dma-ranges; dma-ranges;
status = "disabled"; status = "disabled";
dwc3@2690000 { usb0: dwc3@2690000 {
compatible = "synopsys,dwc3"; compatible = "synopsys,dwc3";
reg = <0x2690000 0x70000>; reg = <0x2690000 0x70000>;
interrupts = <GIC_SPI 393 IRQ_TYPE_EDGE_RISING>; interrupts = <GIC_SPI 393 IRQ_TYPE_EDGE_RISING>;