mirror of
https://github.com/esphome/esphome.git
synced 2026-05-28 04:55:48 +08:00
[bk72xx] Apply CFG_SUPPORT_BLE=0 SDK option to BK7238 (#16181)
This commit is contained in:
@@ -62,6 +62,7 @@ CONF_IS_WRGB = "is_wrgb"
|
|||||||
SUPPORTED_PINS = {
|
SUPPORTED_PINS = {
|
||||||
libretiny.const.FAMILY_BK7231N: [16],
|
libretiny.const.FAMILY_BK7231N: [16],
|
||||||
libretiny.const.FAMILY_BK7231T: [16],
|
libretiny.const.FAMILY_BK7231T: [16],
|
||||||
|
libretiny.const.FAMILY_BK7238: [16],
|
||||||
libretiny.const.FAMILY_BK7251: [16],
|
libretiny.const.FAMILY_BK7251: [16],
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -37,6 +37,7 @@ from .const import (
|
|||||||
CONF_UART_PORT,
|
CONF_UART_PORT,
|
||||||
FAMILIES,
|
FAMILIES,
|
||||||
FAMILY_BK7231N,
|
FAMILY_BK7231N,
|
||||||
|
FAMILY_BK7238,
|
||||||
FAMILY_COMPONENT,
|
FAMILY_COMPONENT,
|
||||||
FAMILY_FRIENDLY,
|
FAMILY_FRIENDLY,
|
||||||
FAMILY_RTL8710B,
|
FAMILY_RTL8710B,
|
||||||
@@ -56,19 +57,22 @@ CODEOWNERS = ["@kuba2k2"]
|
|||||||
AUTO_LOAD = ["preferences"]
|
AUTO_LOAD = ["preferences"]
|
||||||
IS_TARGET_PLATFORM = True
|
IS_TARGET_PLATFORM = True
|
||||||
|
|
||||||
# BK7231N SDK options to disable unused features.
|
# BLE 5.x BK SDK options to disable unused features.
|
||||||
# Disabling BLE saves ~21KB RAM and ~200KB Flash because BLE init code is
|
# Disabling BLE saves ~21KB RAM and ~200KB Flash because BLE init code is
|
||||||
# called unconditionally by the SDK. ESPHome doesn't use BLE on LibreTiny.
|
# called unconditionally by the SDK. ESPHome doesn't use BLE on LibreTiny.
|
||||||
#
|
#
|
||||||
# This only works on BK7231N (BLE 5.x). Other BK72XX chips using BLE 4.2
|
# This only works on BLE 5.x BK chips (BK7231N, BK7238). Other BK72XX chips
|
||||||
# (BK7231T, BK7231Q, BK7251; BK7252 boards use the BK7251 family) have a bug
|
# using BLE 4.2 (BK7231T, BK7231Q, BK7251; BK7252 boards use the BK7251 family)
|
||||||
# where the BLE library still links and references undefined symbols when
|
# have a bug where the BLE library still links and references undefined symbols
|
||||||
# CFG_SUPPORT_BLE=0.
|
# when CFG_SUPPORT_BLE=0.
|
||||||
|
#
|
||||||
|
# On BK7238 the SDK also hangs at WiFi STA enable when BLE init runs, so
|
||||||
|
# disabling it is required for reliable boot, not just an optimization.
|
||||||
#
|
#
|
||||||
# Other options like CFG_TX_EVM_TEST, CFG_RX_SENSITIVITY_TEST, CFG_SUPPORT_BKREG,
|
# Other options like CFG_TX_EVM_TEST, CFG_RX_SENSITIVITY_TEST, CFG_SUPPORT_BKREG,
|
||||||
# CFG_SUPPORT_OTA_HTTP, and CFG_USE_SPI_SLAVE were evaluated but provide no # NOLINT
|
# CFG_SUPPORT_OTA_HTTP, and CFG_USE_SPI_SLAVE were evaluated but provide no # NOLINT
|
||||||
# measurable benefit - the linker already strips unreferenced code via -gc-sections.
|
# measurable benefit - the linker already strips unreferenced code via -gc-sections.
|
||||||
_BK7231N_SYS_CONFIG_OPTIONS = [
|
_BLE5_BK_SYS_CONFIG_OPTIONS = [
|
||||||
"CFG_SUPPORT_BLE=0",
|
"CFG_SUPPORT_BLE=0",
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -549,9 +553,9 @@ async def component_to_code(config):
|
|||||||
cg.add_platformio_option("custom_fw_version", __version__)
|
cg.add_platformio_option("custom_fw_version", __version__)
|
||||||
|
|
||||||
# Apply chip-specific SDK options to save RAM/Flash
|
# Apply chip-specific SDK options to save RAM/Flash
|
||||||
if config[CONF_FAMILY] == FAMILY_BK7231N:
|
if config[CONF_FAMILY] in (FAMILY_BK7231N, FAMILY_BK7238):
|
||||||
cg.add_platformio_option(
|
cg.add_platformio_option(
|
||||||
"custom_options.sys_config#h", _BK7231N_SYS_CONFIG_OPTIONS
|
"custom_options.sys_config#h", _BLE5_BK_SYS_CONFIG_OPTIONS
|
||||||
)
|
)
|
||||||
|
|
||||||
# Tune lwIP for ESPHome's actual needs.
|
# Tune lwIP for ESPHome's actual needs.
|
||||||
|
|||||||
Reference in New Issue
Block a user