Wu Zheng Hui 04987ac201 Merge branch 'feature/add_ram_loadable_app_support' into 'master' 3 lat temu
..
host_test b02687a6c4 test: migrate linux target host test jobs into pytest-embedded 3 lat temu
include 5e9e8c396f wdt: add support for WDTs on C6 3 lat temu
ld 44df5b31af feature: add ram loadable app support 3 lat temu
port 04987ac201 Merge branch 'feature/add_ram_loadable_app_support' into 'master' 3 lat temu
task_wdt c8614a0dbf esp_timer: add a function to restart timer 3 lat temu
test 68594abe05 sleep: light sleep supported for esp32c6 3 lat temu
test_apps ad55230b0a ledc: Add support for esp32h2; Refactor ledc driver clock source selection related code 3 lat temu
test_eh_frame_parser a9fda54d39 esp_hw_support/esp_system: Re-evaluate header inclusions and include directories 4 lat temu
.build-test-rules.yml 7466ddfa8c ci: Make consistence between pytest_*.py and .build-test-rules.yml for esp32c6 (i.e. to pass check_test_scripts_build_test_rules.py) 3 lat temu
CMakeLists.txt 560ea9b754 systimer: support etm event 3 lat temu
Kconfig cb9786d35e refactor(esp_system): reboot delay: added docs, protected by watchdog 3 lat temu
README.md 32aa5f7e25 esp_system: add notes on timekeeping 4 lat temu
app.lf bbc599493e esp32: move common fragment definitions 4 lat temu
check_system_init_priorities.py 42654927d5 esp_system: add a script to check the startup priorities 3 lat temu
crosscore_int.c 8cc9260f86 ESP32H2: Add system support for ESP32H2 3 lat temu
debug_stubs.c bb9cd84cdc debug_stubs: Refactor and add support for RISCV 4 lat temu
eh_frame_parser.c a9fda54d39 esp_hw_support/esp_system: Re-evaluate header inclusions and include directories 4 lat temu
esp_err.c 44df5b31af feature: add ram loadable app support 3 lat temu
esp_ipc.c 23a290f29f esp_ipc: Use task notifications instead of semaphores 3 lat temu
esp_system.c 5b3a645813 feat(esp_system): Partially buildable on Linux now 3 lat temu
fpga_overrides.c 59cf87fe7d pmu: sleep initialization and sleep start support for esp32c6 3 lat temu
freertos_hooks.c 6005cc9163 hal: Deprecate interrupt_controller_hal.h, cpu_hal.h and cpu_ll.h interfaces 3 lat temu
int_wdt.c 53c7dd4efc WDT: implement interrupt wdt and task wdt for ESP32-C2 3 lat temu
linker.lf 5b3a645813 feat(esp_system): Partially buildable on Linux now 3 lat temu
panic.c cb9786d35e refactor(esp_system): reboot delay: added docs, protected by watchdog 3 lat temu
sdkconfig.rename 6798bfc4b0 TWDT: the Kconfig option ESP_TASK_WDT_EN is now used to enable Task Watchdog 3 lat temu
sdkconfig.rename.esp32 0687daf2c8 kconfig: move remaining kconfig options out of target component 3 lat temu
sdkconfig.rename.esp32c3 d2872095f9 soc: moved kconfig options out of the target component. 3 lat temu
sdkconfig.rename.esp32s2 d2872095f9 soc: moved kconfig options out of the target component. 3 lat temu
sdkconfig.rename.esp32s3 d2872095f9 soc: moved kconfig options out of the target component. 3 lat temu
stack_check.c 4d16f46a88 esp_system: fix placement of __stack_chk_fail from flash to RAM 3 lat temu
startup.c 44df5b31af feature: add ram loadable app support 3 lat temu
system_init_fn.txt 68594abe05 sleep: light sleep supported for esp32c6 3 lat temu
system_time.c 8cc9260f86 ESP32H2: Add system support for ESP32H2 3 lat temu
systick_etm.c 6c1d98d556 systimer: assign counter and alarm in esp_hw_support 3 lat temu
ubsan.c 6005cc9163 hal: Deprecate interrupt_controller_hal.h, cpu_hal.h and cpu_ll.h interfaces 3 lat temu
xt_wdt.c bff6826ee1 bugfix (esp_system): made xt_wdt spinlock static 3 lat temu

README.md

System Notes

Timekeeping

The following are the timekeeping mechanisms available and their differences:

  1. System time (esp_system_get_time)

Time with the origin at g_startup_time. The implementation is not handled by esp_system, but it does provide a default implementation using RTC timer. Currently, esp_timer provides system time, since the hardware timers are under the control of that component. However, no matter the underlying timer, the system time provider should maintain the definition of having the origin point at g_startup_time.

  1. esp_timer time (esp_timer_get_time)

This is the time read from an underlying hardware timer, controlled through config. Origin is at the point where the underlying timer starts counting.

  1. newlib time (gettimeofday)

Timekeeping function in standard library. Can be set (settimeofday) or moved forward/backward (adjtime); with the possibility of the changes being made persistent through config. Currently implemented in terms of system time, as the point of origin is fixed. If persistence is enabled, RTC time is also used in conjuction with system time.

  1. RTC time (esp_rtc_get_time_us)

Time read from RTC timer.