Merge branch 'feature/dcache_write_flash_panic' into 'master'

feat(panic): panic immediately on an attempt to write to flash via dcache

See merge request espressif/esp-idf!34190
This commit is contained in:
Marius Vikhammer
2025-01-03 10:12:30 +08:00
11 changed files with 243 additions and 56 deletions

View File

@@ -573,16 +573,13 @@ def test_assert_cache_disabled(
def cache_error_log_check(dut: PanicTestDut) -> None:
if dut.is_xtensa:
if dut.target == 'esp32s3':
dut.expect_exact("Guru Meditation Error: Core / panic'ed (Cache error)")
dut.expect_exact('Write back error occurred while dcache tries to write back to flash')
dut.expect_exact('The following backtrace may not indicate the code that caused Cache invalid access')
dut.expect_exact("Guru Meditation Error: Core 0 panic'ed (Cache error)")
dut.expect_exact('Dbus write to cache rejected, error address')
else:
dut.expect_exact("Guru Meditation Error: Core 0 panic'ed (LoadStoreError)")
else:
dut.expect_exact("Guru Meditation Error: Core 0 panic'ed (Store access fault)")
dut.expect_reg_dump(0)
if dut.target == 'esp32s3':
dut.expect_reg_dump(1)
dut.expect_cpu_reset()
@@ -596,16 +593,6 @@ def test_assert_cache_write_back_error_can_print_backtrace(
cache_error_log_check(dut)
@pytest.mark.generic
@pytest.mark.supported_targets
@pytest.mark.parametrize('config', ['panic'], indirect=True)
def test_assert_cache_write_back_error_can_print_backtrace2(
dut: PanicTestDut, config: str, test_func_name: str
) -> None:
dut.run_test_func(test_func_name)
cache_error_log_check(dut)
@pytest.mark.esp32
@pytest.mark.generic
@pytest.mark.parametrize('config', ['panic_delay'], indirect=True)