]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
arm64: dts: ti: k3-am62-verdin-dahlia: support sleep-moci
authorStefan Eichenberger <stefan.eichenberger@toradex.com>
Fri, 1 Mar 2024 08:49:01 +0000 (09:49 +0100)
committerNishanth Menon <nm@ti.com>
Mon, 29 Apr 2024 19:35:29 +0000 (14:35 -0500)
Previously, we had the sleep-moci pin set to always on. However, the
Dahlia carrier board supports disabling the sleep-moci when the system
is suspended to power down peripherals that support it. This reduces
overall power consumption. This commit adds support for this feature by
disabling the reg_force_sleep_moci regulator and adding a new regulator
for the USB hub that can be turned off when the system is suspended.

Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com>
Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Link: https://lore.kernel.org/r/20240301084901.16656-3-eichest@gmail.com
Signed-off-by: Nishanth Menon <nm@ti.com>
arch/arm64/boot/dts/ti/k3-am62-verdin-dahlia.dtsi

index 9202181fbd6528e92f6f440bb0f48dc4fde2674b..e8f4d136e5dfb4dd67c16f450141ebf9cd498b24 100644 (file)
                        sound-dai = <&mcasp0>;
                };
        };
+
+       reg_usb_hub: regulator-usb-hub {
+               compatible = "regulator-fixed";
+               enable-active-high;
+               /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */
+               gpio = <&main_gpio0 31 GPIO_ACTIVE_HIGH>;
+               regulator-boot-on;
+               regulator-name = "HUB_PWR_EN";
+       };
 };
 
 /* Verdin ETHs */
        status = "okay";
 };
 
+/* Do not force CTRL_SLEEP_MOCI# always enabled */
+&reg_force_sleep_moci {
+       status = "disabled";
+};
+
 /* Verdin SD_1 */
 &sdhci1 {
        status = "okay";
 };
 
 &usb1 {
+       #address-cells = <1>;
+       #size-cells = <0>;
        status = "okay";
+
+       usb-hub@1 {
+               compatible = "usb424,2744";
+               reg = <1>;
+               vdd-supply = <&reg_usb_hub>;
+       };
 };
 
 /* Verdin CTRL_WAKE1_MICO# */