Merge branch 'bugfix/kconcheck_file_checks_v5.2' into 'release/v5.2'

Bugfix/kconcheck file checks v5.2

See merge request espressif/esp-idf!28976
This commit is contained in:
Roland Dobai 2024-02-18 15:33:12 +08:00
commit 202c60bf6b
8 changed files with 60 additions and 55 deletions

View File

@ -1119,7 +1119,7 @@ config BT_MAX_DEVICE_NAME_LEN
config BT_BLE_RPA_SUPPORTED
bool "Update RPA to Controller"
depends on (BT_BLUEDROID_ENABLED && ((BT_CONTROLLER_ENABLED && !SOC_BLE_DEVICE_PRIVACY_SUPPORTED) || BT_CONTROLLER_DISABLED))
depends on (BT_BLUEDROID_ENABLED && ((BT_CONTROLLER_ENABLED && !SOC_BLE_DEVICE_PRIVACY_SUPPORTED) || BT_CONTROLLER_DISABLED)) # NOERROR
default n if (BT_CONTROLLER_ENABLED && !SOC_BLE_DEVICE_PRIVACY_SUPPORTED)
default y if BT_CONTROLLER_DISABLED
help
@ -1160,21 +1160,21 @@ config BT_BLE_42_FEATURES_SUPPORTED
config BT_BLE_FEAT_PERIODIC_ADV_SYNC_TRANSFER
bool "Enable BLE periodic advertising sync transfer feature"
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_ESP_NIMBLE_CONTROLLER) || BT_CONTROLLER_DISABLED))
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_ESP_NIMBLE_CONTROLLER) || BT_CONTROLLER_DISABLED)) # NOERROR
default n
help
This enables BLE periodic advertising sync transfer feature
config BT_BLE_FEAT_PERIODIC_ADV_ENH
bool "Enable periodic adv enhancements(adi support)"
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_ESP_NIMBLE_CONTROLLER) || BT_CONTROLLER_DISABLED))
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_ESP_NIMBLE_CONTROLLER) || BT_CONTROLLER_DISABLED)) # NOERROR
default n
help
Enable the periodic advertising enhancements
config BT_BLE_FEAT_CREATE_SYNC_ENH
bool "Enable create sync enhancements(reporting disable and duplicate filtering enable support)"
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_ESP_NIMBLE_CONTROLLER) || BT_CONTROLLER_DISABLED))
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_ESP_NIMBLE_CONTROLLER) || BT_CONTROLLER_DISABLED)) # NOERROR
default n
help
Enable the create sync enhancements

View File

@ -111,28 +111,33 @@ menu "Power Management"
select PM_RESTORE_CACHE_TAGMEM_AFTER_LIGHT_SLEEP if ESP32S3_DATA_CACHE_16KB
default y
help
If enabled, the CPU will be powered down in light sleep, ESP chips supports saving and restoring CPU's running
context before and after light sleep, the feature provides applications with seamless CPU powerdowned lightsleep
without user awareness.
But this will takes up some internal memory. On esp32c3 soc, enabling this option will consume 1.68 KB of internal
RAM and will reduce sleep current consumption by about 100 uA. On esp32s3 soc, enabling this option will consume
8.58 KB of internal RAM and will reduce sleep current consumption by about 650 uA.
If enabled, the CPU will be powered down in light sleep,
ESP chips supports saving and restoring CPU's running context before and after light sleep,
the feature provides applications with seamless CPU powerdowned lightsleep without user awareness.
But this will takes up some internal memory.
On esp32c3 soc, enabling this option will consume 1.68 KB of internal RAM
and will reduce sleep current consumption by about 100 uA.
On esp32s3 soc, enabling this option will consume 8.58 KB of internal RAM
and will reduce sleep current consumption by about 650 uA.
config PM_RESTORE_CACHE_TAGMEM_AFTER_LIGHT_SLEEP
bool "Restore I/D-cache tag memory after power down CPU light sleep"
depends on IDF_TARGET_ESP32S3 && PM_POWER_DOWN_CPU_IN_LIGHT_SLEEP
default y
help
Cache tag memory and CPU both belong to the CPU power domain. ESP chips supports saving and restoring Cache tag memory
before and after sleep, this feature supports accesses to the external memory that was cached before sleep still
be cached when the CPU wakes up from a powerdowned CPU lightsleep. This option controls the restore method for Cache
tag memory in lightsleep.
If this option is enabled, the I/D-cache tag memory will be backuped to the internal RAM before sleep and restored
upon wakeup. Depending on the the cache configuration, if this option is enabled, it will consume up to 9 KB
of internal RAM.
If this option is disabled, all cached data won't be kept after sleep, the DCache will be writeback before
sleep and invalid all cached data after sleep, all accesses to external memory(Flash/PSRAM) will be cache
missed after waking up, resulting in performance degradation due to increased memory accesses latency.
Cache tag memory and CPU both belong to the CPU power domain.
ESP chips supports saving and restoring Cache tag memory before and after sleep,
this feature supports accesses to the external memory that was cached before sleep still
be cached when the CPU wakes up from a powerdowned CPU lightsleep.
This option controls the restore method for Cache tag memory in lightsleep.
If this option is enabled, the I/D-cache tag memory will be backuped to the internal RAM
before sleep and restored upon wakeup.
Depending on the the cache configuration, if this option is enabled,
it will consume up to 9 KB of internal RAM.
If this option is disabled, all cached data won't be kept after sleep,
the DCache will be writeback before sleep and invalid all cached data after sleep,
all accesses to external memory(Flash/PSRAM) will be cache missed after waking up,
resulting in performance degradation due to increased memory accesses latency.
config PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP
bool "Power down Digital Peripheral in light sleep (EXPERIMENTAL)"

View File

@ -703,7 +703,8 @@ menu "LWIP"
cause Wi-Fi/Ethernet fail to release RX buffer in time.
It is possible that all RX buffers for MAC layer are used by OOSEQ.
Control the number of out-of-order pbufs to ensure that the MAC layer has enough RX buffer to receive packets.
Control the number of out-of-order pbufs to ensure
that the MAC layer has enough RX buffer to receive packets.
In the Wi-Fi scenario, recommended OOSEQ PBUFS Range: 0 <= TCP_OOSEQ_MAX_PBUFS <= CONFIG_ESP_WIFI_DYNAMIC_RX_BUFFER_NUM/(MAX_TCP_NUMBER + 1)

View File

@ -33,7 +33,7 @@ Format rules for Kconfig files are as follows:
- Option names in any menus should have consistent prefixes. The prefix currently should have at least 3 characters.
- The unit of indentation should be 4 spaces. All sub-items belonging to a parent item are indented by one level deeper. For example, ``menu`` is indented by 0 spaces, ``config`` ``menu`` by 4 spaces, ``help`` in ``config`` by 8 spaces, and the text under ``help`` by 12 spaces.
- No trailing spaces are allowed at the end of the lines.
- The maximum length of options is 40 characters.
- The maximum length of options is 50 characters.
- The maximum length of lines is 120 characters.
.. note::

View File

@ -33,7 +33,7 @@ Kconfig 文件的格式规定如下:
- 在所有菜单中,选项名称的前缀需保持一致。目前,前缀长度应为至少 3 个字符。
- 每级采用 4 个空格的缩进方式,子项需比父项多缩进一级。例如, ``menu`` 缩进 0 个空格,``menu`` 中的 ``config`` 则缩进 4 个空格, ``config`` 中的 ``help`` 缩进 8 个空格, ``help`` 下的文本缩进 12 个空格。
- 行末不得出现尾随空格。
- 选项最长为 40 个字符。
- 选项最长为 50 个字符。
- 每行最长为 120 个字符。
.. note::

View File

@ -5,15 +5,15 @@ menu "Test config"
range 0 3
prompt "Performance level"
config A
config PERFORMANCE_A
bool
default "y"
config B
config PERFORMANCE_B
bool
default "n"
config C
config PERFORMANCE_C
bool
default "y"
endmenu
endmenu # Test config

View File

@ -1,9 +1,8 @@
#!/usr/bin/env python
#
# SPDX-FileCopyrightText: 2021-2022 Espressif Systems (Shanghai) CO LTD
# SPDX-FileCopyrightText: 2021-2024 Espressif Systems (Shanghai) CO LTD
# SPDX-License-Identifier: Apache-2.0
#
import os
import sys
import tempfile
@ -72,12 +71,12 @@ entries:
[sections:test]
entries:
value_1
if A = y:
if PERFORMANCE_A = y:
value_2
value_3
if A = n:
if PERFORMANCE_A = n:
value_4
if B = n:
if PERFORMANCE_B = n:
value_5
""")
fragment_file = parse_fragment_file(test_fragment, self.sdkconfig)
@ -89,11 +88,11 @@ entries:
[sections:test]
entries:
value_1
if B = y:
if PERFORMANCE_B = y:
value_2
elif C = y:
elif PERFORMANCE_C = y:
value_3
elif A = y:
elif PERFORMANCE_A = y:
value_4
else:
value_5
@ -108,13 +107,13 @@ entries:
[sections:test]
entries:
value_1
if A = y:
if PERFORMANCE_A = y:
value_2
if B = y:
if PERFORMANCE_B = y:
value_3
else:
value_4
if C = y:
if PERFORMANCE_C = y:
value_5
value_6
value_7
@ -128,7 +127,7 @@ entries:
test_fragment = self.create_fragment_file(u"""
[sections:test]
entries:
if A = n:
if PERFORMANCE_A = n:
value_2
""")
with self.assertRaises(ParseFatalException):
@ -185,7 +184,7 @@ key_1:
test_fragment = self.create_fragment_file(u"""
[sections:test]
entries:
if B = y:
if PERFORMANCE_B = y:
else:
value_1
""")
@ -195,9 +194,9 @@ entries:
test_fragment = self.create_fragment_file(u"""
[sections:test]
entries:
if B = y:
if PERFORMANCE_B = y:
value_1
else B = y:
else PERFORMANCE_B = y:
""")
with self.assertRaises(ParseFatalException):
parse_fragment_file(test_fragment, self.sdkconfig)
@ -205,9 +204,9 @@ entries:
test_fragment = self.create_fragment_file(u"""
[sections:test]
entries:
if B = y:
if PERFORMANCE_B = y:
value_1
elif B = y:
elif PERFORMANCE_B = y:
else:
value_2
""")
@ -218,7 +217,7 @@ entries:
test_fragment = self.create_fragment_file(u"""
[sections:test]
entries:
elif B = y:
elif PERFORMANCE_B = y:
value_1
else:
value_2
@ -254,7 +253,7 @@ entries:
def test_whole_conditional_fragment(self):
test_fragment = self.create_fragment_file(u"""
if B = y:
if PERFORMANCE_B = y:
[sections:test1]
entries:
value_1
@ -263,11 +262,11 @@ else:
entries:
value_2
if A = y:
if PERFORMANCE_A = y:
[sections:test3]
entries:
value_3
if C = y:
if PERFORMANCE_C = y:
value_6
[sections:test4]
@ -292,7 +291,7 @@ entries:
def test_equivalent_conditional_fragment(self):
test_fragment1 = self.create_fragment_file(u"""
if A = y:
if PERFORMANCE_A = y:
[sections:test1]
entries:
value_1
@ -309,7 +308,7 @@ else:
test_fragment2 = self.create_fragment_file(u"""
[sections:test1]
entries:
if A = y:
if PERFORMANCE_A = y:
value_1
else:
value_2
@ -355,7 +354,7 @@ entries:
test_fragment = self.create_fragment_file(u"""
[sections:test]
entries:
if B = y:
if PERFORMANCE_B = y:
.section1
""")
with self.assertRaises(ParseFatalException):
@ -449,7 +448,7 @@ entries:
test_fragment = self.create_fragment_file(u"""
[scheme:test]
entries:
if B = y:
if PERFORMANCE_B = y:
sections1 -> target1
""")
with self.assertRaises(ParseFatalException):
@ -527,7 +526,7 @@ entries:
archive:
lib.a
entries:
if B = y:
if PERFORMANCE_B = y:
* (noflash) # if condition is false, then no 'entries' key value
""")