feat(bod): Update bod threshold on esp32p4-eco2

This commit is contained in:
C.S.M 2024-10-12 15:09:03 +08:00
parent 12d6cdb29a
commit 4049f2b5fb
5 changed files with 24 additions and 12 deletions

View File

@ -13,12 +13,15 @@ choice ESP32P4_REV_MIN
bool "Rev v0.0"
config ESP32P4_REV_MIN_1
bool "Rev v0.1"
config ESP32P4_REV_MIN_100
bool "Rev v1.0"
endchoice
config ESP32P4_REV_MIN_FULL
int
default 0 if ESP32P4_REV_MIN_0
default 1 if ESP32P4_REV_MIN_1
default 100 if ESP32P4_REV_MIN_100
config ESP_REV_MIN_FULL
int
@ -28,7 +31,7 @@ config ESP_REV_MIN_FULL
# MAX Revision
#
comment "Maximum Supported ESP32-P4 Revision (Rev v0.99)"
comment "Maximum Supported ESP32-P4 Revision (Rev v1.99)"
# Maximum revision that IDF supports.
# It can not be changed by user.
# Only Espressif can change it when a new version will be supported in IDF.
@ -36,7 +39,7 @@ config ESP_REV_MIN_FULL
config ESP32P4_REV_MAX_FULL
int
default 99
default 199
# keep in sync the "Maximum Supported Revision" description with this value
config ESP_REV_MAX_FULL

View File

@ -65,7 +65,8 @@ static inline void brownout_ll_reset_config(bool reset_ena, uint32_t reset_wait,
*/
static inline void brownout_ll_set_threshold(uint8_t threshold)
{
REGI2C_WRITE_MASK(I2C_BOD, I2C_BOD_THRESHOLD, threshold);
REGI2C_WRITE_MASK(I2C_BOD, I2C_BOD_THRESHOLD_L, threshold);
REGI2C_WRITE_MASK(I2C_BOD, I2C_BOD_THRESHOLD_H, threshold);
}
/**

View File

@ -62,7 +62,8 @@ static inline void brownout_ll_reset_config(bool reset_ena, uint32_t reset_wait,
*/
static inline void brownout_ll_set_threshold(uint8_t threshold)
{
REGI2C_WRITE_MASK(I2C_BOD, I2C_BOD_THRESHOLD, threshold);
REGI2C_WRITE_MASK(I2C_BOD, I2C_BOD_THRESHOLD_L, threshold);
REGI2C_WRITE_MASK(I2C_BOD, I2C_BOD_THRESHOLD_H, threshold);
}
/**

View File

@ -1,5 +1,5 @@
/*
* SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
* SPDX-FileCopyrightText: 2022-2024 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
@ -44,6 +44,10 @@
#define I2C_PMU_OR_DREFH_VDDA_MSB 7
#define I2C_PMU_OR_DREFH_VDDA_LSB 5
#define I2C_BOD_THRESHOLD I2C_PMU_OR_DREFL_VDDA
#define I2C_BOD_THRESHOLD_MSB I2C_PMU_OR_DREFL_VDDA_MSB
#define I2C_BOD_THRESHOLD_LSB I2C_PMU_OR_DREFL_VDDA_LSB
#define I2C_BOD_THRESHOLD_L I2C_PMU_OR_DREFL_VDDA
#define I2C_BOD_THRESHOLD_L_MSB I2C_PMU_OR_DREFL_VDDA_MSB
#define I2C_BOD_THRESHOLD_L_LSB I2C_PMU_OR_DREFL_VDDA_LSB
#define I2C_BOD_THRESHOLD_H I2C_PMU_OR_DREFH_VDDA
#define I2C_BOD_THRESHOLD_H_MSB I2C_PMU_OR_DREFH_VDDA_MSB
#define I2C_BOD_THRESHOLD_H_LSB I2C_PMU_OR_DREFH_VDDA_LSB

View File

@ -14,9 +14,12 @@
* bus. These definitions are used via macros defined in regi2c_ctrl.h.
*/
#define I2C_BOD 0x61
#define I2C_BOD 0x6a
#define I2C_BOD_HOSTID 0
#define I2C_BOD_THRESHOLD 0x5
#define I2C_BOD_THRESHOLD_MSB 2
#define I2C_BOD_THRESHOLD_LSB 0
#define I2C_BOD_THRESHOLD_L 0x9
#define I2C_BOD_THRESHOLD_L_MSB 4
#define I2C_BOD_THRESHOLD_L_LSB 2
#define I2C_BOD_THRESHOLD_H 0x9
#define I2C_BOD_THRESHOLD_H_MSB 7
#define I2C_BOD_THRESHOLD_H_LSB 5