mirror of
https://github.com/apache/nuttx.git
synced 2025-12-14 15:35:54 +08:00
arch/xtensa/esp32s3: Add EXT1 wakeup support in power management
Some checks failed
Build Documentation / build-html (push) Has been cancelled
Some checks failed
Build Documentation / build-html (push) Has been cancelled
Introduce EXT1 wakeup functionality to the ESP32-S3 power management subsystem. With this feature, the ESP32-S3 can wake up from PM_STANDBY or PM_SLEEP when one or more RTC GPIOs trigger the EXT1 condition. Changes include: - Added EXT1 wakeup configuration and preparation logic in rtc code. - Integrated EXT1 handling in pmstandby() and pmsleep(). - New board-level Kconfig options under ESP32-S3 DevKit menu: - CONFIG_PM_EXT1_WAKEUP: enable EXT1 wakeup support - CONFIG_PM_EXT1_WAKEUP_RTC_GPIO<n>: select RTC GPIOs as wake sources - CONFIG_PM_EXT1_WAKEUP_TRIGGER_MODE: choose wakeup on HIGH or LOW level - Fixing Kconfig style - Fixing comments standard - Adding PM documentation for esp32s3-devkit Impact: - No build impact unless CONFIG_PM_EXT1_WAKEUP is enabled. - When enabled, ESP32-S3 can wake from low-power states via RTC GPIOs. - No new public API introduced; controlled via board Kconfig. Tested on ESP32-S3 DevKit: - Configured GPIO4 and GPIO5 as EXT1 wake sources. - Verified wakeup from light sleep and deep sleep on external signals. - Wakeup reason correctly reported as EXT1. Signed-off-by: Thiago Finelon <thiago.sfinelon@gmail.com>
This commit is contained in:
committed by
Alan C. Assis
parent
67d0b975a5
commit
e87c43b798
@@ -637,6 +637,16 @@ Enables PM support. You can define standby mode and sleep mode delay time::
|
|||||||
(20) PM_SLEEP delay (seconds)
|
(20) PM_SLEEP delay (seconds)
|
||||||
(0) PM_SLEEP delay (nanoseconds)
|
(0) PM_SLEEP delay (nanoseconds)
|
||||||
|
|
||||||
|
You can also define an EXT1 wakeup for both sleep modes by selecting which RTC
|
||||||
|
GPIO will be used and the logic level that will trigger it::
|
||||||
|
|
||||||
|
$ make menuconfig
|
||||||
|
-> Board Selection
|
||||||
|
-> [*] PM EXT1 Wakeup
|
||||||
|
PM EXT1 Wakeup Sources --->
|
||||||
|
[ ] RTC_GPIO<N>
|
||||||
|
(0) PM EXT1 Wakeup Trigger Mode
|
||||||
|
|
||||||
Before switching PM status, you need to query the current PM status::
|
Before switching PM status, you need to query the current PM status::
|
||||||
|
|
||||||
nsh> pmconfig
|
nsh> pmconfig
|
||||||
|
|||||||
@@ -610,6 +610,18 @@ using WPA2.
|
|||||||
|
|
||||||
The ``dhcpd_start`` is necessary to let your board to associate an IP to your smartphone.
|
The ``dhcpd_start`` is necessary to let your board to associate an IP to your smartphone.
|
||||||
|
|
||||||
|
Power Management
|
||||||
|
================
|
||||||
|
|
||||||
|
.. tip:: Boards usually expose a pm defconfig which enables power management
|
||||||
|
features. On ESP32-S3, different low power modes can be used to reduce power
|
||||||
|
consumption depending on the application.
|
||||||
|
|
||||||
|
When using this board configuration profile, two wakeup sources are available:
|
||||||
|
|
||||||
|
- Timer (mandatory) : Every time the board enters sleep mode, a timer is started. Once the defined time is reached, the board wakes up.
|
||||||
|
- EXT1 (optional): The board wakes up whenever the selected EXT1 GPIO is asserted to the configured level.
|
||||||
|
|
||||||
PSRAM
|
PSRAM
|
||||||
-----
|
-----
|
||||||
|
|
||||||
|
|||||||
@@ -49,6 +49,7 @@
|
|||||||
#include "hardware/esp32s3_gpio.h"
|
#include "hardware/esp32s3_gpio.h"
|
||||||
|
|
||||||
#include "esp32s3_rtc.h"
|
#include "esp32s3_rtc.h"
|
||||||
|
#include "esp32s3_rtc_gpio.h"
|
||||||
#include "esp32s3_pm.h"
|
#include "esp32s3_pm.h"
|
||||||
|
|
||||||
#include "soc/periph_defs.h"
|
#include "soc/periph_defs.h"
|
||||||
@@ -91,6 +92,8 @@
|
|||||||
#define RTC_VDDSDIO_TIEH_1_8V 0 /* TIEH field value for 1.8V VDDSDIO */
|
#define RTC_VDDSDIO_TIEH_1_8V 0 /* TIEH field value for 1.8V VDDSDIO */
|
||||||
#define RTC_VDDSDIO_TIEH_3_3V 1 /* TIEH field value for 3.3V VDDSDIO */
|
#define RTC_VDDSDIO_TIEH_3_3V 1 /* TIEH field value for 3.3V VDDSDIO */
|
||||||
|
|
||||||
|
#define RTC_EXT0_TRIG_EN BIT(0) /* External wakeup source 0 */
|
||||||
|
#define RTC_EXT1_TRIG_EN BIT(1) /* External wakeup source 1 */
|
||||||
#define RTC_GPIO_TRIG_EN BIT(2) /* GPIO wakeup */
|
#define RTC_GPIO_TRIG_EN BIT(2) /* GPIO wakeup */
|
||||||
#define RTC_TIMER_TRIG_EN BIT(3) /* Timer wakeup */
|
#define RTC_TIMER_TRIG_EN BIT(3) /* Timer wakeup */
|
||||||
#define RTC_WIFI_TRIG_EN BIT(5) /* Wi-Fi wakeup (light sleep only) */
|
#define RTC_WIFI_TRIG_EN BIT(5) /* Wi-Fi wakeup (light sleep only) */
|
||||||
@@ -429,6 +432,40 @@ static uint32_t IRAM_ATTR esp32s3_get_power_down_flags(void)
|
|||||||
return pd_flags;
|
return pd_flags;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Name: esp32s3_ext1_wakeup_prepare
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
* Configure gpio to wake-up
|
||||||
|
*
|
||||||
|
* Input Parameters:
|
||||||
|
* None
|
||||||
|
*
|
||||||
|
* Returned Value:
|
||||||
|
* None
|
||||||
|
*
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
static void IRAM_ATTR esp32s3_ext1_wakeup_prepare(void)
|
||||||
|
{
|
||||||
|
static bool ext1_rtc_gpio_mask_configured = false;
|
||||||
|
if (ext1_rtc_gpio_mask_configured == false)
|
||||||
|
{
|
||||||
|
for (int i = 0; i < RTC_GPIO_NUMBER; i++)
|
||||||
|
{
|
||||||
|
if (g_config.ext1_rtc_gpio_mask & BIT(i))
|
||||||
|
{
|
||||||
|
esp32s3_configrtcio(i, RTC_INPUT_FUNCTION_RTCIO);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ext1_rtc_gpio_mask_configured = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
esp32s3_rtc_ext1_prepare(g_config.ext1_trigger_mode,
|
||||||
|
g_config.ext1_rtc_gpio_mask);
|
||||||
|
}
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Name: esp32s3_timer_wakeup_prepare
|
* Name: esp32s3_timer_wakeup_prepare
|
||||||
*
|
*
|
||||||
@@ -596,6 +633,11 @@ static int IRAM_ATTR esp32s3_sleep_start(uint32_t pd_flags)
|
|||||||
esp32s3_timer_wakeup_prepare();
|
esp32s3_timer_wakeup_prepare();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (g_config.wakeup_triggers & RTC_EXT1_TRIG_EN)
|
||||||
|
{
|
||||||
|
esp32s3_ext1_wakeup_prepare();
|
||||||
|
}
|
||||||
|
|
||||||
result = esp32s3_rtc_sleep_start(g_config.wakeup_triggers, 0);
|
result = esp32s3_rtc_sleep_start(g_config.wakeup_triggers, 0);
|
||||||
|
|
||||||
/* Restore CPU frequency */
|
/* Restore CPU frequency */
|
||||||
@@ -865,6 +907,94 @@ void IRAM_ATTR esp32s3_periph_inform_out_sleep_overhead(uint32_t us)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Name: esp32s3_sleep_enable_ext1_wakeup
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
* Enable wakeup by ext1 gpio
|
||||||
|
*
|
||||||
|
* Input Parameters:
|
||||||
|
* None
|
||||||
|
*
|
||||||
|
* Returned Value:
|
||||||
|
* None
|
||||||
|
*
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
void IRAM_ATTR esp32s3_sleep_enable_ext1_wakeup(void)
|
||||||
|
{
|
||||||
|
g_config.wakeup_triggers |= RTC_EXT1_TRIG_EN;
|
||||||
|
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_TRIGGER_MODE
|
||||||
|
g_config.ext1_trigger_mode = CONFIG_PM_EXT1_WAKEUP_TRIGGER_MODE;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
g_config.ext1_rtc_gpio_mask = 0U;
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO0
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_0_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO1
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_1_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO2
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_2_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO3
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_3_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO4
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_4_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO5
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_5_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO6
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_6_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO7
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_7_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO8
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_8_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO9
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_9_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO10
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_10_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO11
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_11_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO12
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_12_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO13
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_13_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO14
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_14_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO15
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_15_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO16
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_16_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO17
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_17_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO18
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_18_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO19
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_19_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP_RTC_GPIO20
|
||||||
|
g_config.ext1_rtc_gpio_mask |= BIT(RTCIO_CHANNEL_20_GPIO_NUM);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Name: esp32s3_sleep_enable_timer_wakeup
|
* Name: esp32s3_sleep_enable_timer_wakeup
|
||||||
*
|
*
|
||||||
@@ -1025,6 +1155,10 @@ void esp32s3_pmstandby(uint64_t time_in_us)
|
|||||||
{
|
{
|
||||||
uint64_t rtc_diff_us;
|
uint64_t rtc_diff_us;
|
||||||
|
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP
|
||||||
|
esp32s3_sleep_enable_ext1_wakeup();
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Don't power down XTAL - powering it up takes different time on. */
|
/* Don't power down XTAL - powering it up takes different time on. */
|
||||||
|
|
||||||
esp32s3_sleep_enable_timer_wakeup(time_in_us);
|
esp32s3_sleep_enable_timer_wakeup(time_in_us);
|
||||||
@@ -1094,6 +1228,10 @@ void IRAM_ATTR esp32s3_deep_sleep_start(void)
|
|||||||
|
|
||||||
void esp32s3_pmsleep(uint64_t time_in_us)
|
void esp32s3_pmsleep(uint64_t time_in_us)
|
||||||
{
|
{
|
||||||
|
#ifdef CONFIG_PM_EXT1_WAKEUP
|
||||||
|
esp32s3_sleep_enable_ext1_wakeup();
|
||||||
|
#endif
|
||||||
|
|
||||||
esp32s3_sleep_enable_timer_wakeup(time_in_us);
|
esp32s3_sleep_enable_timer_wakeup(time_in_us);
|
||||||
esp32s3_deep_sleep_start();
|
esp32s3_deep_sleep_start();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2431,6 +2431,18 @@ int IRAM_ATTR esp32s3_rtc_sleep_start(uint32_t wakeup_opt,
|
|||||||
return reject;
|
return reject;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void esp32s3_rtc_ext1_prepare(uint32_t trigger_mode, uint32_t rtc_gpio_mask)
|
||||||
|
{
|
||||||
|
if (rtc_gpio_mask > 0)
|
||||||
|
{
|
||||||
|
modifyreg32(RTC_CNTL_RTC_EXT_WAKEUP1_REG, 0 ,
|
||||||
|
RTC_CNTL_EXT_WAKEUP1_STATUS_CLR | rtc_gpio_mask);
|
||||||
|
modifyreg32(RTC_CNTL_RTC_EXT_WAKEUP_CONF_REG, 0,
|
||||||
|
(trigger_mode << RTC_CNTL_EXT_WAKEUP1_LV_S) | \
|
||||||
|
RTC_CNTL_GPIO_WAKEUP_FILTER);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Name: esp32s3_rtc_clk_cpu_freq_set_config
|
* Name: esp32s3_rtc_clk_cpu_freq_set_config
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -514,6 +514,23 @@ int esp_rtc_clk_get_cpu_freq(void);
|
|||||||
|
|
||||||
void esp32s3_rtc_sleep_init(uint32_t flags);
|
void esp32s3_rtc_sleep_init(uint32_t flags);
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Name: esp32s3_rtc_ext1_prepare
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
* Configure RTC_EXT1 wakeup sources
|
||||||
|
*
|
||||||
|
* Input Parameters:
|
||||||
|
* trigger_mode - trigger mode for RTC_EXT1 wakeup sources
|
||||||
|
* rtc_gpio_mask - mask of GPIOs to be used as RTC_EXT1 wakeup sources
|
||||||
|
*
|
||||||
|
* Returned Value:
|
||||||
|
* None
|
||||||
|
*
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
void esp32s3_rtc_ext1_prepare(uint32_t trigger_mode, uint32_t rtc_gpio_mask);
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Name: esp32s3_rtc_sleep_start
|
* Name: esp32s3_rtc_sleep_start
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -80,6 +80,158 @@ endchoice # ESP32S3_SPIFLASH_FS
|
|||||||
|
|
||||||
if PM
|
if PM
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP
|
||||||
|
bool "PM EXT1 Wakeup"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable EXT1 wakeup functionality.
|
||||||
|
This allows the system to wake up from PM_STANDBY or PM_SLEEP
|
||||||
|
when a GPIO pin configured as an EXT1 wakeup source is triggered.
|
||||||
|
|
||||||
|
if PM_EXT1_WAKEUP
|
||||||
|
|
||||||
|
menu "PM EXT1 Wakeup Sources"
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO0
|
||||||
|
bool "RTC_GPIO0"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO0 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO1
|
||||||
|
bool "RTC_GPIO1"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO1 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO2
|
||||||
|
bool "RTC_GPIO2"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO2 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO3
|
||||||
|
bool "RTC_GPIO3"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO3 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO4
|
||||||
|
bool "RTC_GPIO4"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO4 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO5
|
||||||
|
bool "RTC_GPIO5"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO5 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO6
|
||||||
|
bool "RTC_GPIO6"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO6 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO7
|
||||||
|
bool "RTC_GPIO7"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO7 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO8
|
||||||
|
bool "RTC_GPIO8"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO8 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO9
|
||||||
|
bool "RTC_GPIO9"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO9 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO10
|
||||||
|
bool "RTC_GPIO10"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO10 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO11
|
||||||
|
bool "RTC_GPIO11"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO11 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO12
|
||||||
|
bool "RTC_GPIO12"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO12 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO13
|
||||||
|
bool "RTC_GPIO13"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO13 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO14
|
||||||
|
bool "RTC_GPIO14"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO14 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO15
|
||||||
|
bool "RTC_GPIO15"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO15 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO16
|
||||||
|
bool "RTC_GPIO16"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO16 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO17
|
||||||
|
bool "RTC_GPIO17"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO17 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO18
|
||||||
|
bool "RTC_GPIO18"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO18 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO19
|
||||||
|
bool "RTC_GPIO19"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO19 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_RTC_GPIO20
|
||||||
|
bool "RTC_GPIO20"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Enable RTC GPIO20 as an EXT1 wakeup source.
|
||||||
|
|
||||||
|
endmenu # PM_EXT1_WAKEUP_SOURCES
|
||||||
|
|
||||||
|
|
||||||
|
config PM_EXT1_WAKEUP_TRIGGER_MODE
|
||||||
|
int "PM EXT1 Wakeup Trigger Mode"
|
||||||
|
range 0 1
|
||||||
|
default 0
|
||||||
|
---help---
|
||||||
|
Select EXT1 wakeup mode:
|
||||||
|
0 = Wakeup when any selected GPIO is LOW
|
||||||
|
1 = Wakeup when any selected GPIO is HIGH
|
||||||
|
|
||||||
|
endif # PM_EXT1_WAKEUP
|
||||||
|
|
||||||
config PM_ALARM_SEC
|
config PM_ALARM_SEC
|
||||||
int "PM_STANDBY delay (seconds)"
|
int "PM_STANDBY delay (seconds)"
|
||||||
default 15
|
default 15
|
||||||
|
|||||||
Reference in New Issue
Block a user