10#include <sys/socket.h>
16#if defined(USE_ESP32) || defined(USE_LIBRETINY)
18 esphome_main_task_notify_from_isr(px_higher_priority_task_woken);
24#if defined(USE_ESP8266) || defined(USE_RP2040)
36static volatile bool s_delay_expired =
false;
38static int64_t alarm_callback_(alarm_id_t
id,
void *user_data) {
41 s_delay_expired =
true;
56 s_delay_expired =
false;
57 alarm_id_t alarm = add_alarm_in_ms(ms, alarm_callback_,
nullptr,
true);
void wakeable_delay(uint32_t ms)
Providing packet encoding functions for exchanging data with a remote host.
void wake_loop_threadsafe()
Non-ISR: always inline.
void ESPHOME_ALWAYS_INLINE wake_loop_impl()
Inline implementation — IRAM callers inline this directly.
volatile bool g_main_loop_woke
void HOT delay(uint32_t ms)
Application App
Global storage of Application pointer - only one Application can exist.
void IRAM_ATTR wake_loop_any_context()
IRAM_ATTR entry point for ISR callers — defined in wake.cpp.
void IRAM_ATTR wake_loop_isrsafe(BaseType_t *px_higher_priority_task_woken)
IRAM_ATTR entry points — defined in wake.cpp.
Platform-specific main loop wake primitives.