diff options
author | Anand Moon <linux.amoon@gmail.com> | 2023-01-18 04:44:15 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-01-19 14:13:28 +0100 |
commit | 71593b2020b37fd39ac91efae64d79962eb6c867 (patch) | |
tree | e95dbc0ef5354f1590ad1cffbc2ca8c4dcc422cc /arch/arm64/boot | |
parent | 31360c28dfdd18d77496bcceee44c10ab86cf7a0 (diff) | |
download | linux-stable-71593b2020b37fd39ac91efae64d79962eb6c867.tar.gz linux-stable-71593b2020b37fd39ac91efae64d79962eb6c867.tar.bz2 linux-stable-71593b2020b37fd39ac91efae64d79962eb6c867.zip |
arm64: dts: amlogic: Used onboard usb hub reset on odroid c4
On Odroid c4 previously use gpio-hog to reset the usb hub,
switch to used on-board usb hub reset to enable the usb hub
and enable power to hub.
USB hub is combination of USB 2.0 and USB 3.0 root hub so
use peer-hub node to link then.
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
Link: https://lore.kernel.org/r/20230118044418.875-8-linux.amoon@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch/arm64/boot')
-rw-r--r-- | arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts | 36 |
1 files changed, 23 insertions, 13 deletions
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts index 8c30ce63686e..d04768a66bfe 100644 --- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts @@ -26,20 +26,30 @@ sound { model = "ODROID-C4"; }; -}; -&gpio { - /* - * WARNING: The USB Hub on the Odroid-C4 needs a reset signal - * to be turned high in order to be detected by the USB Controller - * This signal should be handled by a USB specific power sequence - * in order to reset the Hub when USB bus is powered down. - */ - hog-0 { - gpio-hog; - gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>; - output-high; - line-name = "usb-hub-reset"; + /* USB hub supports both USB 2.0 and USB 3.0 root hub */ + usb-hub { + dr_mode = "host"; + #address-cells = <1>; + #size-cells = <0>; + + /* 2.0 hub on port 1 */ + hub_2_0: hub@1 { + compatible = "usb2109,2817"; + reg = <1>; + peer-hub = <&hub_3_0>; + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>; + vdd-supply = <&vcc_5v>; + }; + + /* 3.1 hub on port 4 */ + hub_3_0: hub@2 { + compatible = "usb2109,817"; + reg = <2>; + peer-hub = <&hub_2_0>; + reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>; + vdd-supply = <&vcc_5v>; + }; }; }; |