Merge branch 'bugfix/cache_disabled_log_c3' into 'master'

esp_hw_support: always inline cpu_hal_set_vecbase to avoid issues at -O0

See merge request espressif/esp-idf!18630
This commit is contained in:
Marius Vikhammer
2022-07-06 09:55:20 +08:00
3 changed files with 31 additions and 34 deletions

View File

@@ -136,7 +136,7 @@ static inline void cpu_hal_clear_watchpoint(int id)
*
* @param base address to move the exception vector table to
*/
static inline void cpu_hal_set_vecbase(const void *base)
static inline __attribute__((always_inline)) void cpu_hal_set_vecbase(const void *base)
{
esp_cpu_intr_set_ivt_addr(base);
}

View File

@@ -1,33 +0,0 @@
#!/usr/bin/env python
import glob
import os
import re
import ttfw_idf
from tiny_test_fw import Utility
from ttfw_idf.IDFDUT import ESP32DUT
@ttfw_idf.idf_custom_test(env_tag='Example_GENERIC', group='test-apps')
def test_sys_startup(env, extra_data):
config_files = glob.glob(os.path.join(os.path.dirname(__file__), 'sdkconfig.ci.*'))
config_names = [os.path.basename(s).replace('sdkconfig.ci.', '') for s in config_files]
for name in config_names:
Utility.console_log("Checking config \"{}\"... ".format(name), end='')
dut = env.get_dut('startup', 'tools/test_apps/system/startup', app_config_name=name)
dut.start_app()
if (name == 'single_core_variant' and isinstance(dut, ESP32DUT)):
dut.allow_dut_exception = True
dut.expect('Running on single core variant of a chip, but app is built with multi-core support.')
dut.expect(re.compile(r'abort\(\) was called at PC [0-9xa-f]+ on core 0'))
else:
dut.expect('app_main running')
env.close_dut(dut.name)
Utility.console_log('done')
if __name__ == '__main__':
test_sys_startup()

View File

@@ -0,0 +1,30 @@
# SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
# SPDX-License-Identifier: CC0-1.0
import pytest
from pytest_embedded import Dut
@pytest.mark.supported_targets
@pytest.mark.generic
@pytest.mark.parametrize('config', [
'default',
'flash_80m_qio',
'no_vfs',
'no_vfs_partial',
'opt_o0',
'opt_o2',
'stack_check',
'verbose_log',
], indirect=True)
def test_sys_startup(dut: Dut) -> None:
dut.expect_exact('app_main running')
@pytest.mark.esp32
@pytest.mark.esp32s3
@pytest.mark.generic
@pytest.mark.parametrize('config', ['single_core_variant'], indirect=True)
def test_sys_startup_single_core_variant(dut: Dut) -> None:
dut.expect('Running on single core variant of a chip, but app is built with multi-core support.')
dut.expect(r'abort\(\) was called at PC [0-9xa-f]+ on core 0')