ESP-IDF
p_twdt_obj
is only used within ESP-IDF.
Symbol previews are coming soon...
Symbols
loading...
Files
loading...
Summary
Syntax
Examples
References
Call Tree
Data Use
Class Tree
Override Tree
Implementations
Instances
Lifecycle
SourceVu
ESP-IDF Framework and Examples
ESP-IDF
p_twdt_obj
p_twdt_obj variable
Syntax
Show:
Summary
Declaration
from
task_wdt.c:85
static
twdt_obj_t
*
p_twdt_obj
=
NULL
;
Examples
References
from
examples
Code
Location
Referrer
static
twdt_obj_t
*
p_twdt_obj
=
NULL
;
task_wdt.c:85
esp_task_wdt_impl_timer_feed
(
p_twdt_obj
->
impl_ctx
)
;
task_wdt.c:103
task_wdt_timer_feed()
SLIST_FOREACH
(
entry
,
&
p_twdt_obj
->
entries_slist
,
slist_entry
)
{
task_wdt.c:107
task_wdt_timer_feed()
SLIST_FOREACH
(
entry
,
&
p_twdt_obj
->
entries_slist
,
slist_entry
)
{
task_wdt.c:125
find_entry_and_check_all_reset()
SLIST_FOREACH
(
entry
,
&
p_twdt_obj
->
entries_slist
,
slist_entry
)
{
task_wdt.c:150
find_entry_from_task_handle_and_check_all_reset()
ESP_GOTO_ON_FALSE_ISR
(
(
p_twdt_obj
!=
NULL
)
,
ESP_ERR_INVALID_STATE
,
state_err
,
TAG
,
"task watchdog was never initialized"
)
;
task_wdt.c:187
add_entry()
SLIST_INSERT_HEAD
(
&
p_twdt_obj
->
entries_slist
,
entry
,
slist_entry
)
;
task_wdt.c:198
add_entry()
if
(
p_twdt_obj
->
waiting_for_task
)
{
task_wdt.c:200
add_entry()
esp_task_wdt_impl_timer_restart
(
p_twdt_obj
->
impl_ctx
)
;
task_wdt.c:201
add_entry()
p_twdt_obj
->
waiting_for_task
=
false
;
task_wdt.c:202
add_entry()
ESP_GOTO_ON_FALSE_ISR
(
(
p_twdt_obj
!=
NULL
)
,
ESP_ERR_INVALID_STATE
,
err
,
TAG
,
"task watchdog was never initialized"
)
;
task_wdt.c:230
delete_entry()
SLIST_REMOVE
(
&
p_twdt_obj
->
entries_slist
,
entry
,
twdt_entry
,
slist_entry
)
;
task_wdt.c:243
delete_entry()
if
(
SLIST_EMPTY
(
&
p_twdt_obj
->
entries_slist
)
)
{
task_wdt.c:245
delete_entry()
p_twdt_obj
->
waiting_for_task
=
true
;
task_wdt.c:246
delete_entry()
esp_task_wdt_impl_timer_stop
(
p_twdt_obj
->
impl_ctx
)
;
task_wdt.c:247
delete_entry()
p_twdt_obj
->
waiting_for_task
=
false
;
task_wdt.c:249
delete_entry()
if
(
!
p_twdt_obj
->
waiting_for_task
&&
all_reset
)
{
task_wdt.c:252
delete_entry()
esp_task_wdt_impl_timeout_triggered
(
p_twdt_obj
->
impl_ctx
)
;
task_wdt.c:476
task_wdt_isr()
bool
panic
=
p_twdt_obj
->
panic
;
task_wdt.c:481
task_wdt_isr()
ESP_RETURN_ON_FALSE
(
p_twdt_obj
==
NULL
,
ESP_ERR_INVALID_STATE
,
TAG
,
"TWDT already initialized"
)
;
task_wdt.c:515
esp_task_wdt_init()
p_twdt_obj
=
obj
;
task_wdt.c:532
esp_task_wdt_init()
p_twdt_obj
->
idle_core_mask
=
config
->
idle_core_mask
;
task_wdt.c:535
esp_task_wdt_init()
if
(
!
SLIST_EMPTY
(
&
p_twdt_obj
->
entries_slist
)
)
{
task_wdt.c:542
esp_task_wdt_init()
p_twdt_obj
->
waiting_for_task
=
false
;
task_wdt.c:543
esp_task_wdt_init()
esp_task_wdt_impl_timer_restart
(
p_twdt_obj
->
impl_ctx
)
;
task_wdt.c:544
esp_task_wdt_init()
p_twdt_obj
->
waiting_for_task
=
true
;
task_wdt.c:546
esp_task_wdt_init()
ESP_RETURN_ON_FALSE
(
p_twdt_obj
!=
NULL
,
ESP_ERR_INVALID_STATE
,
TAG
,
"TWDT not initialized yet"
)
;
task_wdt.c:558
esp_task_wdt_reconfigure()
ret
=
esp_task_wdt_impl_timer_stop
(
p_twdt_obj
->
impl_ctx
)
;
task_wdt.c:564
esp_task_wdt_reconfigure()
p_twdt_obj
->
panic
=
config
->
trigger_panic
;
task_wdt.c:570
esp_task_wdt_reconfigure()
ret
=
esp_task_wdt_impl_timer_reconfigure
(
p_twdt_obj
->
impl_ctx
,
config
)
;
task_wdt.c:573
esp_task_wdt_reconfigure()
old_core_mask
=
p_twdt_obj
->
idle_core_mask
;
task_wdt.c:578
esp_task_wdt_reconfigure()
p_twdt_obj
->
idle_core_mask
=
config
->
idle_core_mask
;
task_wdt.c:581
esp_task_wdt_reconfigure()
if
(
!
SLIST_EMPTY
(
&
p_twdt_obj
->
entries_slist
)
)
{
task_wdt.c:593
esp_task_wdt_reconfigure()
esp_task_wdt_impl_timer_restart
(
p_twdt_obj
->
impl_ctx
)
;
task_wdt.c:594
esp_task_wdt_reconfigure()
if
(
p_twdt_obj
==
NULL
)
{
task_wdt.c:607
esp_task_wdt_stop()
ret
=
esp_task_wdt_impl_timer_stop
(
p_twdt_obj
->
impl_ctx
)
;
task_wdt.c:613
esp_task_wdt_stop()
if
(
p_twdt_obj
==
NULL
)
{
task_wdt.c:625
esp_task_wdt_restart()
ret
=
esp_task_wdt_impl_timer_restart
(
p_twdt_obj
->
impl_ctx
)
;
task_wdt.c:631
esp_task_wdt_restart()
ESP_RETURN_ON_FALSE
(
p_twdt_obj
!=
NULL
,
ESP_ERR_INVALID_STATE
,
TAG
,
"TWDT was never initialized"
)
;
task_wdt.c:642
esp_task_wdt_deinit()
unsubscribe_idle
(
p_twdt_obj
->
idle_core_mask
)
;
task_wdt.c:645
esp_task_wdt_deinit()
ESP_GOTO_ON_FALSE_ISR
(
SLIST_EMPTY
(
&
p_twdt_obj
->
entries_slist
)
,
ESP_ERR_INVALID_STATE
,
err
,
TAG
,
"Tasks/users still subscribed"
)
;
task_wdt.c:648
esp_task_wdt_deinit()
esp_task_wdt_impl_timer_stop
(
p_twdt_obj
->
impl_ctx
)
;
task_wdt.c:651
esp_task_wdt_deinit()
esp_task_wdt_impl_timer_free
(
p_twdt_obj
->
impl_ctx
)
;
task_wdt.c:654
esp_task_wdt_deinit()
free
(
p_twdt_obj
)
;
task_wdt.c:657
esp_task_wdt_deinit()
p_twdt_obj
=
NULL
;
task_wdt.c:658
esp_task_wdt_deinit()
subscribe_idle
(
p_twdt_obj
->
idle_core_mask
)
;
// Resubscribe idle tasks
task_wdt.c:663
esp_task_wdt_deinit()
ESP_RETURN_ON_FALSE
(
p_twdt_obj
!=
NULL
,
ESP_ERR_INVALID_STATE
,
TAG
,
"TWDT was never initialized"
)
;
task_wdt.c:669
esp_task_wdt_add()
ESP_RETURN_ON_FALSE
(
p_twdt_obj
!=
NULL
,
ESP_ERR_INVALID_STATE
,
TAG
,
"TWDT was never initialized"
)
;
task_wdt.c:684
esp_task_wdt_add_user()
ESP_RETURN_ON_FALSE
(
p_twdt_obj
!=
NULL
,
ESP_ERR_INVALID_STATE
,
TAG
,
"TWDT was never initialized"
)
;
task_wdt.c:696
esp_task_wdt_reset()
ESP_RETURN_ON_FALSE
(
p_twdt_obj
!=
NULL
,
ESP_ERR_INVALID_STATE
,
TAG
,
"TWDT was never initialized"
)
;
task_wdt.c:721
esp_task_wdt_reset_user()
ESP_RETURN_ON_FALSE
(
p_twdt_obj
!=
NULL
,
ESP_ERR_INVALID_STATE
,
TAG
,
"TWDT was never initialized"
)
;
task_wdt.c:744
esp_task_wdt_delete()
ESP_RETURN_ON_FALSE
(
p_twdt_obj
!=
NULL
,
ESP_ERR_INVALID_STATE
,
TAG
,
"TWDT was never initialized"
)
;
task_wdt.c:757
esp_task_wdt_delete_user()
ESP_RETURN_ON_FALSE
(
p_twdt_obj
!=
NULL
,
ESP_ERR_INVALID_STATE
,
TAG
,
"TWDT was never initialized"
)
;
task_wdt.c:763
esp_task_wdt_status()
if
(
SLIST_EMPTY
(
&
p_twdt_obj
->
entries_slist
)
)
{
task_wdt.c:783
esp_task_wdt_print_triggered_tasks()
SLIST_FOREACH
(
entry
,
&
p_twdt_obj
->
entries_slist
,
slist_entry
)
{
task_wdt.c:798
esp_task_wdt_print_triggered_tasks()
Call Tree
from
examples
All items filtered out
All items filtered out
Data Use
from
examples
p_twdt_obj
is written by 2 functions and is read by 19 functions:
esp_task_wdt_init()
esp_task_wdt_deinit()
All items filtered out
p_twdt_obj
task_wdt_timer_feed()
find_entry_and_check_all_reset()
find_entry_from_task_handle_and_check_all_reset()
add_entry()
delete_entry()
task_wdt_isr()
esp_task_wdt_init()
esp_task_wdt_reconfigure()
esp_task_wdt_stop()
esp_task_wdt_restart()
esp_task_wdt_deinit()
esp_task_wdt_add()
esp_task_wdt_add_user()
esp_task_wdt_reset()
esp_task_wdt_reset_user()
esp_task_wdt_delete()
esp_task_wdt_delete_user()
esp_task_wdt_status()
esp_task_wdt_print_triggered_tasks()
All items filtered out
Class Tree
from
examples
All items filtered out
All items filtered out
Override Tree
from
examples
All items filtered out
All items filtered out
Implementations
from
examples
All items filtered out
All items filtered out
Instances
from
examples
Lifecycle
from
examples
All items filtered out
All items filtered out