morris 0afafb743d Merge branch 'bugfix/app_compatible_with_3_1_bootloader' into 'master' vor 4 Jahren
..
include 722a6b7cf4 docs: update programming guide for esp32s3 chip independent system chapters vor 4 Jahren
ld 16891e7a6c System: fix RTCFAST section alignment vor 4 Jahren
port 0afafb743d Merge branch 'bugfix/app_compatible_with_3_1_bootloader' into 'master' vor 4 Jahren
test eddc196081 esp_clk: refactor target/clk.h to private/esp_clk.h vor 4 Jahren
test_eh_frame_parser 0771bd1711 espsystem: Rearchitecture and fix eh_frame_parser bugs vor 4 Jahren
CMakeLists.txt 8df306ab60 freertos,esp_system: make dependencies on some components optional vor 4 Jahren
Kconfig 209702d055 esp_ipc: Update documentation and API descriptions vor 4 Jahren
README.md 32aa5f7e25 esp_system: add notes on timekeeping vor 5 Jahren
app.lf bbc599493e esp32: move common fragment definitions vor 5 Jahren
crosscore_int.c 09487761cf ESP8684: add freertos, hal, esp_system support vor 4 Jahren
debug_stubs.c bb9cd84cdc debug_stubs: Refactor and add support for RISCV vor 4 Jahren
eh_frame_parser.c 0771bd1711 espsystem: Rearchitecture and fix eh_frame_parser bugs vor 4 Jahren
esp_err.c c16ceafa5c esp_common: move esp_err vor 5 Jahren
esp_ipc.c 209702d055 esp_ipc: Update documentation and API descriptions vor 4 Jahren
esp_system.c dd938eb952 System/Security: Memprot API unified (ESP32C3) vor 4 Jahren
fpga_overrides.c 09487761cf ESP8684: add freertos, hal, esp_system support vor 4 Jahren
freertos_hooks.c 0e0914476c esp_common: move freertos hooks vor 5 Jahren
int_wdt.c 16677b0d3c global: make periph enable/disable APIs private vor 4 Jahren
linker.lf 9069f70db3 system: add option to enable undefined behavior sanitizer (UBSAN) vor 4 Jahren
panic.c 09487761cf ESP8684: add freertos, hal, esp_system support vor 4 Jahren
sdkconfig.rename 5e3689ae0f esp32h2: update esp_system and esp_hw_support to support esp32h2 vor 4 Jahren
stack_check.c 6e80811ca2 log: Remove redundant definition of LOG_LOCAL_LEVEL vor 4 Jahren
startup.c 8df306ab60 freertos,esp_system: make dependencies on some components optional vor 4 Jahren
system_time.c 09487761cf ESP8684: add freertos, hal, esp_system support vor 4 Jahren
task_wdt.c 16677b0d3c global: make periph enable/disable APIs private vor 4 Jahren
ubsan.c 9069f70db3 system: add option to enable undefined behavior sanitizer (UBSAN) vor 4 Jahren
xt_wdt.c 4869b3cd4a WDT: Add support for XTAL32K Watchdog timer vor 4 Jahren

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.