Armada 388 Clearfog Pro has a USB-2.0 capable minipcie connector "CON2". Clearfog Base has an M.2 connector combining USB-2.0 and USB-3.0 plus various pins controlled by the host: - FULL_CARD_POWER_OFF#: When low, M.2 LTE modules are switched off. Many modules include pull-down, thus it must be driven high actively. - RESET#: Puts modules into reset when low. Modules are expected to include pull-up. - GNSS_DISABLE# - W_DISABLE# Enable the usb controller node for the first combined usb-2.0/3.0 controller, for both clearfog base and pro. To Clearfog base add gpio hogs for power-off and reset to ensure modules are operational by default. Cc: stable@xxxxxxxxxxxxxxx Signed-off-by: Josua Mayer <josua@xxxxxxxxxxxxx> --- .../boot/dts/marvell/armada-388-clearfog-base.dts | 21 +++++++++++++++++++++ arch/arm/boot/dts/marvell/armada-388-clearfog.dts | 5 +++++ 2 files changed, 26 insertions(+) diff --git a/arch/arm/boot/dts/marvell/armada-388-clearfog-base.dts b/arch/arm/boot/dts/marvell/armada-388-clearfog-base.dts index f7daa3bc707e..03153186c7bb 100644 --- a/arch/arm/boot/dts/marvell/armada-388-clearfog-base.dts +++ b/arch/arm/boot/dts/marvell/armada-388-clearfog-base.dts @@ -33,6 +33,22 @@ ð1 { phy = <&phy1>; }; +&expander0 { + m2-full-card-power-off-hog { + gpio-hog; + gpios = <2 GPIO_ACTIVE_LOW>; + output-low; + line-name = "m2-full-card-power-off"; + }; + + m2-reset-hog { + gpio-hog; + gpios = <10 GPIO_ACTIVE_LOW>; + output-low; + line-name = "m2-reset"; + }; +}; + &gpio0 { phy1_reset { gpio-hog; @@ -66,3 +82,8 @@ rear_button_pins: rear-button-pins { marvell,function = "gpio"; }; }; + +/* SRDS #4 - USB-2.0/3.0 Host, M.2 */ +&usb3_0 { + status = "okay"; +}; diff --git a/arch/arm/boot/dts/marvell/armada-388-clearfog.dts b/arch/arm/boot/dts/marvell/armada-388-clearfog.dts index 09bf2e6d4ed0..d6d7cc885f4d 100644 --- a/arch/arm/boot/dts/marvell/armada-388-clearfog.dts +++ b/arch/arm/boot/dts/marvell/armada-388-clearfog.dts @@ -182,3 +182,8 @@ &spi1 { */ pinctrl-0 = <&spi1_pins &clearfog_spi1_cs_pins &mikro_spi_pins>; }; + +/* USB-2.0 Host, CON2 - nearest CPU */ +&usb3_0 { + status = "okay"; +}; -- 2.43.0