mirror of
https://github.com/espressif/esp-idf
synced 2025-03-09 17:19:09 -04:00
Merge branch 'fix/add_sleep_duration_check_for_timer_wakeup_v5.4' into 'release/v5.4'
fix(esp_hw_support): add timer wakeup sleep duration check (v5.4) See merge request espressif/esp-idf!37010
This commit is contained in:
commit
da3f2ea5ce
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2015-2024 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2015-2025 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@ -174,9 +174,13 @@ esp_err_t esp_sleep_enable_ulp_wakeup(void);
|
|||||||
/**
|
/**
|
||||||
* @brief Enable wakeup by timer
|
* @brief Enable wakeup by timer
|
||||||
* @param time_in_us time before wakeup, in microseconds
|
* @param time_in_us time before wakeup, in microseconds
|
||||||
|
* @note The valid `time_in_us` value depends on the bit width of the lp_timer/rtc_timer counter and the
|
||||||
|
* current slow clock source selection (Refer RTC clock source configuration in menuconfig).
|
||||||
|
* Valid values should be positive values less than RTC slow clock period * (2 ^ RTC timer bitwidth).
|
||||||
|
*
|
||||||
* @return
|
* @return
|
||||||
* - ESP_OK on success
|
* - ESP_OK on success
|
||||||
* - ESP_ERR_INVALID_ARG if value is out of range (TBD)
|
* - ESP_ERR_INVALID_ARG if value is out of range.
|
||||||
*/
|
*/
|
||||||
esp_err_t esp_sleep_enable_timer_wakeup(uint64_t time_in_us);
|
esp_err_t esp_sleep_enable_timer_wakeup(uint64_t time_in_us);
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2015-2024 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2015-2025 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@ -145,9 +145,9 @@ uint32_t rtc_clk_cal(rtc_cal_sel_t cal_clk, uint32_t slowclk_cycles)
|
|||||||
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
||||||
{
|
{
|
||||||
assert(period);
|
assert(period);
|
||||||
/* Overflow will happen in this function if time_in_us >= 2^45, which is about 400 days.
|
if (time_in_us > (UINT64_MAX >> RTC_CLK_CAL_FRACT)) {
|
||||||
* TODO: fix overflow.
|
return ((time_in_us / period) << RTC_CLK_CAL_FRACT) + ((time_in_us % period) << RTC_CLK_CAL_FRACT) / period;
|
||||||
*/
|
}
|
||||||
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2020-2024 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2020-2025 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@ -159,9 +159,9 @@ uint32_t rtc_clk_cal(rtc_cal_sel_t cal_clk, uint32_t slowclk_cycles)
|
|||||||
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
||||||
{
|
{
|
||||||
assert(period);
|
assert(period);
|
||||||
/* Overflow will happen in this function if time_in_us >= 2^45, which is about 400 days.
|
if (time_in_us > (UINT64_MAX >> RTC_CLK_CAL_FRACT)) {
|
||||||
* TODO: fix overflow.
|
return ((time_in_us / period) << RTC_CLK_CAL_FRACT) + ((time_in_us % period) << RTC_CLK_CAL_FRACT) / period;
|
||||||
*/
|
}
|
||||||
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2020-2024 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2020-2025 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@ -162,9 +162,9 @@ uint32_t rtc_clk_cal(rtc_cal_sel_t cal_clk, uint32_t slowclk_cycles)
|
|||||||
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
||||||
{
|
{
|
||||||
assert(period);
|
assert(period);
|
||||||
/* Overflow will happen in this function if time_in_us >= 2^45, which is about 400 days.
|
if (time_in_us > (UINT64_MAX >> RTC_CLK_CAL_FRACT)) {
|
||||||
* TODO: fix overflow.
|
return ((time_in_us / period) << RTC_CLK_CAL_FRACT) + ((time_in_us % period) << RTC_CLK_CAL_FRACT) / period;
|
||||||
*/
|
}
|
||||||
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2023-2024 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2023-2025 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@ -172,9 +172,9 @@ uint32_t rtc_clk_cal(rtc_cal_sel_t cal_clk, uint32_t slowclk_cycles)
|
|||||||
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
||||||
{
|
{
|
||||||
assert(period);
|
assert(period);
|
||||||
/* Overflow will happen in this function if time_in_us >= 2^45, which is about 400 days.
|
if (time_in_us > (UINT64_MAX >> RTC_CLK_CAL_FRACT)) {
|
||||||
* TODO: fix overflow.
|
return ((time_in_us / period) << RTC_CLK_CAL_FRACT) + ((time_in_us % period) << RTC_CLK_CAL_FRACT) / period;
|
||||||
*/
|
}
|
||||||
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2022-2024 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2022-2025 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@ -247,9 +247,9 @@ uint32_t rtc_clk_cal(rtc_cal_sel_t cal_clk, uint32_t slowclk_cycles)
|
|||||||
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
||||||
{
|
{
|
||||||
assert(period);
|
assert(period);
|
||||||
/* Overflow will happen in this function if time_in_us >= 2^45, which is about 400 days.
|
if (time_in_us > (UINT64_MAX >> RTC_CLK_CAL_FRACT)) {
|
||||||
* TODO: fix overflow.
|
return ((time_in_us / period) << RTC_CLK_CAL_FRACT) + ((time_in_us % period) << RTC_CLK_CAL_FRACT) / period;
|
||||||
*/
|
}
|
||||||
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2024 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2024-2025 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@ -172,9 +172,9 @@ uint32_t rtc_clk_cal(rtc_cal_sel_t cal_clk, uint32_t slowclk_cycles)
|
|||||||
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
||||||
{
|
{
|
||||||
assert(period);
|
assert(period);
|
||||||
/* Overflow will happen in this function if time_in_us >= 2^45, which is about 400 days.
|
if (time_in_us > (UINT64_MAX >> RTC_CLK_CAL_FRACT)) {
|
||||||
* TODO: fix overflow.
|
return ((time_in_us / period) << RTC_CLK_CAL_FRACT) + ((time_in_us % period) << RTC_CLK_CAL_FRACT) / period;
|
||||||
*/
|
}
|
||||||
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2022-2024 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2022-2025 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@ -247,9 +247,9 @@ uint32_t rtc_clk_cal(rtc_cal_sel_t cal_clk, uint32_t slowclk_cycles)
|
|||||||
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
||||||
{
|
{
|
||||||
assert(period);
|
assert(period);
|
||||||
/* Overflow will happen in this function if time_in_us >= 2^45, which is about 400 days.
|
if (time_in_us > (UINT64_MAX >> RTC_CLK_CAL_FRACT)) {
|
||||||
* TODO: fix overflow.
|
return ((time_in_us / period) << RTC_CLK_CAL_FRACT) + ((time_in_us % period) << RTC_CLK_CAL_FRACT) / period;
|
||||||
*/
|
}
|
||||||
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2022-2024 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2022-2025 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@ -198,9 +198,9 @@ uint32_t rtc_clk_cal(rtc_cal_sel_t cal_clk, uint32_t slowclk_cycles)
|
|||||||
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
||||||
{
|
{
|
||||||
assert(period);
|
assert(period);
|
||||||
/* Overflow will happen in this function if time_in_us >= 2^45, which is about 400 days.
|
if (time_in_us > (UINT64_MAX >> RTC_CLK_CAL_FRACT)) {
|
||||||
* TODO: fix overflow.
|
return ((time_in_us / period) << RTC_CLK_CAL_FRACT) + ((time_in_us % period) << RTC_CLK_CAL_FRACT) / period;
|
||||||
*/
|
}
|
||||||
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2015-2024 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2015-2025 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@ -227,9 +227,9 @@ uint32_t rtc_clk_cal_cycling(rtc_cal_sel_t cal_clk, uint32_t slowclk_cycles)
|
|||||||
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
||||||
{
|
{
|
||||||
assert(period);
|
assert(period);
|
||||||
/* Overflow will happen in this function if time_in_us >= 2^45, which is about 400 days.
|
if (time_in_us > (UINT64_MAX >> RTC_CLK_CAL_FRACT)) {
|
||||||
* TODO: fix overflow.
|
return ((time_in_us / period) << RTC_CLK_CAL_FRACT) + ((time_in_us % period) << RTC_CLK_CAL_FRACT) / period;
|
||||||
*/
|
}
|
||||||
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2015-2024 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2015-2025 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@ -161,9 +161,9 @@ uint32_t rtc_clk_cal(rtc_cal_sel_t cal_clk, uint32_t slowclk_cycles)
|
|||||||
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
uint64_t rtc_time_us_to_slowclk(uint64_t time_in_us, uint32_t period)
|
||||||
{
|
{
|
||||||
assert(period);
|
assert(period);
|
||||||
/* Overflow will happen in this function if time_in_us >= 2^45, which is about 400 days.
|
if (time_in_us > (UINT64_MAX >> RTC_CLK_CAL_FRACT)) {
|
||||||
* TODO: fix overflow.
|
return ((time_in_us / period) << RTC_CLK_CAL_FRACT) + ((time_in_us % period) << RTC_CLK_CAL_FRACT) / period;
|
||||||
*/
|
}
|
||||||
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
return (time_in_us << RTC_CLK_CAL_FRACT) / period;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -15,6 +15,7 @@
|
|||||||
#include "esp_macros.h"
|
#include "esp_macros.h"
|
||||||
#include "esp_memory_utils.h"
|
#include "esp_memory_utils.h"
|
||||||
#include "esp_sleep.h"
|
#include "esp_sleep.h"
|
||||||
|
#include "esp_private/esp_clk_tree_common.h"
|
||||||
#include "esp_private/esp_sleep_internal.h"
|
#include "esp_private/esp_sleep_internal.h"
|
||||||
#include "esp_private/esp_timer_private.h"
|
#include "esp_private/esp_timer_private.h"
|
||||||
#include "esp_private/rtc_clk.h"
|
#include "esp_private/rtc_clk.h"
|
||||||
@ -1687,6 +1688,10 @@ esp_err_t esp_sleep_enable_ulp_wakeup(void)
|
|||||||
|
|
||||||
esp_err_t esp_sleep_enable_timer_wakeup(uint64_t time_in_us)
|
esp_err_t esp_sleep_enable_timer_wakeup(uint64_t time_in_us)
|
||||||
{
|
{
|
||||||
|
if (time_in_us > ((BIT64(SOC_LP_TIMER_BIT_WIDTH_LO + SOC_LP_TIMER_BIT_WIDTH_HI) - 1) / esp_clk_tree_lp_slow_get_freq_hz(ESP_CLK_TREE_SRC_FREQ_PRECISION_APPROX)) * MHZ ) {
|
||||||
|
return ESP_ERR_INVALID_ARG;
|
||||||
|
}
|
||||||
|
|
||||||
s_config.wakeup_triggers |= RTC_TIMER_TRIG_EN;
|
s_config.wakeup_triggers |= RTC_TIMER_TRIG_EN;
|
||||||
s_config.sleep_duration = time_in_us;
|
s_config.sleep_duration = time_in_us;
|
||||||
return ESP_OK;
|
return ESP_OK;
|
||||||
|
@ -56,6 +56,10 @@ __attribute__((unused)) static struct timeval tv_start, tv_stop;
|
|||||||
#if SOC_LIGHT_SLEEP_SUPPORTED
|
#if SOC_LIGHT_SLEEP_SUPPORTED
|
||||||
TEST_CASE("wake up from light sleep using timer", "[lightsleep]")
|
TEST_CASE("wake up from light sleep using timer", "[lightsleep]")
|
||||||
{
|
{
|
||||||
|
TEST_ASSERT_EQUAL(ESP_ERR_INVALID_ARG, esp_sleep_enable_timer_wakeup(UINT64_MAX));
|
||||||
|
uint64_t lp_timer_max_allowed_time_in_us = ((BIT64(SOC_LP_TIMER_BIT_WIDTH_LO + SOC_LP_TIMER_BIT_WIDTH_HI) - 1) / esp_clk_tree_lp_slow_get_freq_hz(ESP_CLK_TREE_SRC_FREQ_PRECISION_APPROX)) * MHZ;
|
||||||
|
TEST_ASSERT_EQUAL(ESP_OK, esp_sleep_enable_timer_wakeup(lp_timer_max_allowed_time_in_us));
|
||||||
|
TEST_ASSERT_EQUAL(ESP_ERR_INVALID_ARG, esp_sleep_enable_timer_wakeup(lp_timer_max_allowed_time_in_us + 1));
|
||||||
esp_sleep_enable_timer_wakeup(2000000);
|
esp_sleep_enable_timer_wakeup(2000000);
|
||||||
gettimeofday(&tv_start, NULL);
|
gettimeofday(&tv_start, NULL);
|
||||||
esp_light_sleep_start();
|
esp_light_sleep_start();
|
||||||
|
@ -711,6 +711,14 @@ config SOC_TIMER_GROUP_SUPPORT_APB
|
|||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
|
||||||
|
config SOC_LP_TIMER_BIT_WIDTH_LO
|
||||||
|
int
|
||||||
|
default 32
|
||||||
|
|
||||||
|
config SOC_LP_TIMER_BIT_WIDTH_HI
|
||||||
|
int
|
||||||
|
default 16
|
||||||
|
|
||||||
config SOC_TOUCH_SENSOR_VERSION
|
config SOC_TOUCH_SENSOR_VERSION
|
||||||
int
|
int
|
||||||
default 1
|
default 1
|
||||||
|
@ -328,6 +328,10 @@
|
|||||||
#define SOC_TIMER_GROUP_TOTAL_TIMERS (4)
|
#define SOC_TIMER_GROUP_TOTAL_TIMERS (4)
|
||||||
#define SOC_TIMER_GROUP_SUPPORT_APB (1)
|
#define SOC_TIMER_GROUP_SUPPORT_APB (1)
|
||||||
|
|
||||||
|
/*-------------------------- LP_TIMER CAPS ----------------------------------*/
|
||||||
|
#define SOC_LP_TIMER_BIT_WIDTH_LO 32 // Bit width of lp_timer low part
|
||||||
|
#define SOC_LP_TIMER_BIT_WIDTH_HI 16 // Bit width of lp_timer high part
|
||||||
|
|
||||||
/*-------------------------- TOUCH SENSOR CAPS -------------------------------*/
|
/*-------------------------- TOUCH SENSOR CAPS -------------------------------*/
|
||||||
#define SOC_TOUCH_SENSOR_VERSION (1U) /*!<Hardware version of touch sensor */
|
#define SOC_TOUCH_SENSOR_VERSION (1U) /*!<Hardware version of touch sensor */
|
||||||
#define SOC_TOUCH_SENSOR_NUM (10)
|
#define SOC_TOUCH_SENSOR_NUM (10)
|
||||||
|
@ -619,6 +619,14 @@ config SOC_TIMER_GROUP_TOTAL_TIMERS
|
|||||||
int
|
int
|
||||||
default 1
|
default 1
|
||||||
|
|
||||||
|
config SOC_LP_TIMER_BIT_WIDTH_LO
|
||||||
|
int
|
||||||
|
default 32
|
||||||
|
|
||||||
|
config SOC_LP_TIMER_BIT_WIDTH_HI
|
||||||
|
int
|
||||||
|
default 16
|
||||||
|
|
||||||
config SOC_MWDT_SUPPORT_XTAL
|
config SOC_MWDT_SUPPORT_XTAL
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
@ -274,6 +274,10 @@
|
|||||||
#define SOC_TIMER_GROUP_SUPPORT_XTAL (1)
|
#define SOC_TIMER_GROUP_SUPPORT_XTAL (1)
|
||||||
#define SOC_TIMER_GROUP_TOTAL_TIMERS (1U)
|
#define SOC_TIMER_GROUP_TOTAL_TIMERS (1U)
|
||||||
|
|
||||||
|
/*-------------------------- LP_TIMER CAPS ----------------------------------*/
|
||||||
|
#define SOC_LP_TIMER_BIT_WIDTH_LO 32 // Bit width of lp_timer low part
|
||||||
|
#define SOC_LP_TIMER_BIT_WIDTH_HI 16 // Bit width of lp_timer high part
|
||||||
|
|
||||||
/*--------------------------- WATCHDOG CAPS ---------------------------------------*/
|
/*--------------------------- WATCHDOG CAPS ---------------------------------------*/
|
||||||
#define SOC_MWDT_SUPPORT_XTAL (1)
|
#define SOC_MWDT_SUPPORT_XTAL (1)
|
||||||
|
|
||||||
|
@ -867,6 +867,14 @@ config SOC_TIMER_GROUP_TOTAL_TIMERS
|
|||||||
int
|
int
|
||||||
default 2
|
default 2
|
||||||
|
|
||||||
|
config SOC_LP_TIMER_BIT_WIDTH_LO
|
||||||
|
int
|
||||||
|
default 32
|
||||||
|
|
||||||
|
config SOC_LP_TIMER_BIT_WIDTH_HI
|
||||||
|
int
|
||||||
|
default 16
|
||||||
|
|
||||||
config SOC_MWDT_SUPPORT_XTAL
|
config SOC_MWDT_SUPPORT_XTAL
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
@ -366,6 +366,10 @@
|
|||||||
#define SOC_TIMER_GROUP_SUPPORT_APB (1)
|
#define SOC_TIMER_GROUP_SUPPORT_APB (1)
|
||||||
#define SOC_TIMER_GROUP_TOTAL_TIMERS (2)
|
#define SOC_TIMER_GROUP_TOTAL_TIMERS (2)
|
||||||
|
|
||||||
|
/*-------------------------- LP_TIMER CAPS ----------------------------------*/
|
||||||
|
#define SOC_LP_TIMER_BIT_WIDTH_LO 32 // Bit width of lp_timer low part
|
||||||
|
#define SOC_LP_TIMER_BIT_WIDTH_HI 16 // Bit width of lp_timer high part
|
||||||
|
|
||||||
/*--------------------------- WATCHDOG CAPS ---------------------------------------*/
|
/*--------------------------- WATCHDOG CAPS ---------------------------------------*/
|
||||||
#define SOC_MWDT_SUPPORT_XTAL (1)
|
#define SOC_MWDT_SUPPORT_XTAL (1)
|
||||||
|
|
||||||
|
@ -811,6 +811,14 @@ config SOC_TIMER_GROUP_TOTAL_TIMERS
|
|||||||
int
|
int
|
||||||
default 4
|
default 4
|
||||||
|
|
||||||
|
config SOC_LP_TIMER_BIT_WIDTH_LO
|
||||||
|
int
|
||||||
|
default 32
|
||||||
|
|
||||||
|
config SOC_LP_TIMER_BIT_WIDTH_HI
|
||||||
|
int
|
||||||
|
default 16
|
||||||
|
|
||||||
config SOC_TOUCH_SENSOR_VERSION
|
config SOC_TOUCH_SENSOR_VERSION
|
||||||
int
|
int
|
||||||
default 2
|
default 2
|
||||||
|
@ -340,6 +340,10 @@
|
|||||||
#define SOC_TIMER_GROUP_SUPPORT_APB (1)
|
#define SOC_TIMER_GROUP_SUPPORT_APB (1)
|
||||||
#define SOC_TIMER_GROUP_TOTAL_TIMERS (4)
|
#define SOC_TIMER_GROUP_TOTAL_TIMERS (4)
|
||||||
|
|
||||||
|
/*-------------------------- LP_TIMER CAPS ----------------------------------*/
|
||||||
|
#define SOC_LP_TIMER_BIT_WIDTH_LO 32 // Bit width of lp_timer low part
|
||||||
|
#define SOC_LP_TIMER_BIT_WIDTH_HI 16 // Bit width of lp_timer high part
|
||||||
|
|
||||||
/*-------------------------- TOUCH SENSOR CAPS -------------------------------*/
|
/*-------------------------- TOUCH SENSOR CAPS -------------------------------*/
|
||||||
#define SOC_TOUCH_SENSOR_VERSION (2) /*!< Hardware version of touch sensor */
|
#define SOC_TOUCH_SENSOR_VERSION (2) /*!< Hardware version of touch sensor */
|
||||||
#define SOC_TOUCH_SENSOR_NUM (15) /*!< 15 Touch channels */
|
#define SOC_TOUCH_SENSOR_NUM (15) /*!< 15 Touch channels */
|
||||||
|
@ -995,6 +995,14 @@ config SOC_TIMER_GROUP_TOTAL_TIMERS
|
|||||||
int
|
int
|
||||||
default 4
|
default 4
|
||||||
|
|
||||||
|
config SOC_LP_TIMER_BIT_WIDTH_LO
|
||||||
|
int
|
||||||
|
default 32
|
||||||
|
|
||||||
|
config SOC_LP_TIMER_BIT_WIDTH_HI
|
||||||
|
int
|
||||||
|
default 16
|
||||||
|
|
||||||
config SOC_TOUCH_SENSOR_VERSION
|
config SOC_TOUCH_SENSOR_VERSION
|
||||||
int
|
int
|
||||||
default 2
|
default 2
|
||||||
|
@ -383,6 +383,10 @@
|
|||||||
#define SOC_TIMER_GROUP_SUPPORT_APB (1)
|
#define SOC_TIMER_GROUP_SUPPORT_APB (1)
|
||||||
#define SOC_TIMER_GROUP_TOTAL_TIMERS (4)
|
#define SOC_TIMER_GROUP_TOTAL_TIMERS (4)
|
||||||
|
|
||||||
|
/*-------------------------- LP_TIMER CAPS ----------------------------------*/
|
||||||
|
#define SOC_LP_TIMER_BIT_WIDTH_LO 32 // Bit width of lp_timer low part
|
||||||
|
#define SOC_LP_TIMER_BIT_WIDTH_HI 16 // Bit width of lp_timer high part
|
||||||
|
|
||||||
/*-------------------------- TOUCH SENSOR CAPS -------------------------------*/
|
/*-------------------------- TOUCH SENSOR CAPS -------------------------------*/
|
||||||
#define SOC_TOUCH_SENSOR_VERSION (2) /*!< Hardware version of touch sensor */
|
#define SOC_TOUCH_SENSOR_VERSION (2) /*!< Hardware version of touch sensor */
|
||||||
#define SOC_TOUCH_SENSOR_NUM (15) /*!< 15 Touch channels */
|
#define SOC_TOUCH_SENSOR_NUM (15) /*!< 15 Touch channels */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user