SmartSnippets DA1459x SDK
Typedefs | Enumerations | Functions | Variables

Definition of API for the Watchdog timer Low Level Driver. More...

#include <stdbool.h>
#include <stdint.h>
#include <sdk_defs.h>

Go to the source code of this file.

Typedefs

typedef void(* hw_watchdog_interrupt_cb) (unsigned long *exception_args)
 Watchdog timer interrupt callback. More...
 

Enumerations

enum  HW_WDG_RESET { HW_WDG_RESET_NMI = 0, HW_WDG_RESET_RST = 1 }
 Types of generated states if reload value is 0. More...
 

Functions

__ALWAYS_RETAINED_CODE bool hw_watchdog_freeze (void)
 Freeze the watchdog. More...
 
__RETAINED_CODE bool hw_watchdog_unfreeze (void)
 Unfreeze the watchdog. More...
 
__STATIC_FORCEINLINE bool hw_watchdog_check_write_busy (void)
 Check if watchdog is busy writing the watchdog counter.
 
__STATIC_INLINE void hw_watchdog_write_value_ctrl (bool enable)
 Enable/disable writing the Watchdog timer reload value. This filter prevents unintentionally setting the watchdog with a SW run-away. More...
 
__STATIC_FORCEINLINE void hw_watchdog_set_pos_val (uint16_t value)
 Set positive reload value of the watchdog timer. More...
 
__STATIC_INLINE void hw_watchdog_set_neg_val (uint16_t value)
 Set negative reload value of the watchdog timer. More...
 
__STATIC_INLINE uint16_t hw_watchdog_get_val (void)
 Get reload value of the watchdog timer. More...
 
__STATIC_FORCEINLINE void hw_watchdog_gen_RST (void)
 Generate a reset signal of the system when reload value reaches 0. More...
 
__STATIC_FORCEINLINE void hw_watchdog_gen_NMI (void)
 Generate an NMI when reload value reaches 0. More...
 
__STATIC_INLINE void hw_watchdog_freeze_ctrl (bool enable)
 Enable/disable Watchdog freeze functionality. More...
 
void hw_watchdog_register_int (hw_watchdog_interrupt_cb handler)
 Register an interrupt handler. More...
 
__RETAINED_CODE void hw_watchdog_unregister_int (void)
 Unregister an interrupt handler. More...
 
__RETAINED_CODE void hw_watchdog_handle_int (unsigned long *hardfault_args)
 Handle NMI interrupt. More...
 
HW_WDG_RESET hw_watchdog_is_irq_or_rst_gen (void)
 Check what is generated when watchdog reaches 0 value. More...
 

Variables

volatile uint32_t nmi_event_data [9]
 Holds the stack contents when an NMI occurs. More...
 

Detailed Description

Definition of API for the Watchdog timer Low Level Driver.

Copyright (C) 2015-2023 Renesas Electronics Corporation and/or its affiliates. All rights reserved. Confidential Information.

This software ("Software") is supplied by Renesas Electronics Corporation and/or its affiliates ("Renesas"). Renesas grants you a personal, non-exclusive, non-transferable, revocable, non-sub-licensable right and license to use the Software, solely if used in or together with Renesas products. You may make copies of this Software, provided this copyright notice and disclaimer ("Notice") is included in all such copies. Renesas reserves the right to change or discontinue the Software at any time without notice.

THE SOFTWARE IS PROVIDED "AS IS". RENESAS DISCLAIMS ALL WARRANTIES OF ANY KIND, WHETHER EXPRESS, IMPLIED, OR STATUTORY, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. TO THE MAXIMUM EXTENT PERMITTED UNDER LAW, IN NO EVENT SHALL RENESAS BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE, EVEN IF RENESAS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. USE OF THIS SOFTWARE MAY BE SUBJECT TO TERMS AND CONDITIONS CONTAINED IN AN ADDITIONAL AGREEMENT BETWEEN YOU AND RENESAS. IN CASE OF CONFLICT BETWEEN THE TERMS OF THIS NOTICE AND ANY SUCH ADDITIONAL LICENSE AGREEMENT, THE TERMS OF THE AGREEMENT SHALL TAKE PRECEDENCE. BY CONTINUING TO USE THIS SOFTWARE, YOU AGREE TO THE TERMS OF THIS NOTICE.IF YOU DO NOT AGREE TO THESE TERMS, YOU ARE NOT PERMITTED TO USE THIS SOFTWARE.