we are using I.MX8 mini on which Linux is running on we are putting Linux in deep sleep mode but for waking up from deep sleep mode we are using GPIO based wakeup so we are made changes in imx8mm-evk
pinctrl_gpio_keys: gpiokey {
fsl,pins = <
MX8MM_IOMUXC_SAI5_RXD0_GPIO3_IO21 0x05
>;
};
gpio-keys {
compatible = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpio_keys>;
wakeup_button {
label = "Power Button";
gpios = <&gpio3 21 GPIO_ACTIVE_LOW>;
linux,code = <KEY_POWER>;
wakeup-source;
};
};
};
and build image using bitbake command i.e bitbake virtual/kernel -f -c deploy but after flashing image in SD card and booting in linux. but GPIO based wake up is not working. please help me with this
Hi Pranoti
one can check if MX8MM_IOMUXC_SAI5_RXD0.. is used in other dts configurations
like pinctrl_sai5: sai5grp :
Best regards
igor
Works fine.
HW: i.MX8MM EVK
SW: LF-v5.10.9_1.0.0
imx8mm-evk-gpio-key-wakeup-demo.dts
#include "imx8mm-evk.dts"
/{
gpio-keys {
compatible = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpio_keys>;
power {
label = "GPIO Power";
linux,code = <KEY_POWER>;
gpios = <&gpio3 21 GPIO_ACTIVE_LOW>;
wakeup-source;
debounce-interval = <50>;
};
};
};
&iomuxc {
/delete-node/ pinctrl_pdm;
pinctrl_gpio_keys: gpio_keys_grp {
fsl,pins = <
MX8MM_IOMUXC_SAI5_RXD0_GPIO3_IO21 0x19
>;
};
};
&micfil {
status = "disabled";
};