/** ****************************************************************************** * @file paltform_watchdog.c * @author William Xu * @version V1.0.0 * @date 05-May-2014 * @brief This file provide WDG driver functions. ****************************************************************************** * UNPUBLISHED PROPRIETARY SOURCE CODE * Copyright (c) 2016 MXCHIP Inc. * * The contents of this file may not be disclosed to third parties, copied or * duplicated in any form, in whole or in part, without the prior written * permission of MXCHIP Corporation. ****************************************************************************** */ #include "mico_platform.h" #include "mico_rtos.h" #include "common.h" #include "debug.h" #include "platform.h" #include "platform_peripheral.h" /****************************************************** * Constants ******************************************************/ /****************************************************** * Enumerations ******************************************************/ /****************************************************** * Type Definitions ******************************************************/ /****************************************************** * Structures ******************************************************/ /****************************************************** * Variables Definitions ******************************************************/ /****************************************************** * Function Declarations ******************************************************/ extern VOID WDGInitial(u32 Period); extern VOID WDGStart(VOID); extern VOID WDGStop(VOID); extern VOID WDGRefresh(VOID); /****************************************************** * Function Definitions ******************************************************/ OSStatus platform_watchdog_init( uint32_t timeout_ms ) { // PLATFORM_TO_DO #ifndef MICO_DISABLE_WATCHDOG OSStatus err = kNoErr; WDGInitial(timeout_ms); WDGStart(); exit: return err; #else UNUSED_PARAMETER( timeout_ms ); return kUnsupportedErr; #endif } OSStatus MicoWdgFinalize( void ) { // PLATFORM_TO_DO return kNoErr; } bool platform_watchdog_check_last_reset( void ) { return false; } OSStatus platform_watchdog_kick( void ) { #ifndef MICO_DISABLE_WATCHDOG WDGRefresh(); return kNoErr; #else return kUnsupportedErr; #endif }