fix(phy): fix phy init data type and multiple bin offset incorrect

This commit is contained in:
yinqingzhao
2026-08-28 17:36:46 +08:00
committed by Yin Qing Zhao
parent cbeb35d8b4
commit b8cff1cf5d
3 changed files with 11 additions and 4 deletions

View File

@@ -27,8 +27,8 @@ extern "C" {
#if CONFIG_ESP_PHY_MULTIPLE_INIT_DATA_BIN
#define PHY_CRC_ALGORITHM 1
#define PHY_COUNTRY_CODE_LEN 2
#define PHY_INIT_DATA_TYPE_OFFSET 254
#define PHY_SUPPORT_MULTIPLE_BIN_OFFSET 253
#define PHY_INIT_DATA_TYPE_OFFSET 126
#define PHY_SUPPORT_MULTIPLE_BIN_OFFSET 125
#endif
extern const char phy_init_magic_pre[];

View File

@@ -27,8 +27,8 @@ extern "C" {
#if CONFIG_ESP_PHY_MULTIPLE_INIT_DATA_BIN
#define PHY_CRC_ALGORITHM 1
#define PHY_COUNTRY_CODE_LEN 2
#define PHY_INIT_DATA_TYPE_OFFSET 254
#define PHY_SUPPORT_MULTIPLE_BIN_OFFSET 253
#define PHY_INIT_DATA_TYPE_OFFSET 126
#define PHY_SUPPORT_MULTIPLE_BIN_OFFSET 125
#endif
extern const char phy_init_magic_pre[];

View File

@@ -126,6 +126,13 @@ static uint8_t s_phy_modem_init_ref = 0;
extern uint8_t multi_phy_init_data_bin_start[] asm("_binary_phy_multiple_init_data_bin_start");
extern uint8_t multi_phy_init_data_bin_end[] asm("_binary_phy_multiple_init_data_bin_end");
#endif
/* Both flags live in the last bytes of an init data entry */
_Static_assert(PHY_INIT_DATA_TYPE_OFFSET == sizeof(esp_phy_init_data_t) - 2,
"PHY_INIT_DATA_TYPE_OFFSET does not match the PHY init data of this target");
_Static_assert(PHY_SUPPORT_MULTIPLE_BIN_OFFSET == sizeof(esp_phy_init_data_t) - 3,
"PHY_SUPPORT_MULTIPLE_BIN_OFFSET does not match the PHY init data of this target");
/* The following static variables are only used by Wi-Fi tasks, so they can be handled without lock */
static phy_init_data_type_t s_phy_init_data_type = 0;