aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/ports/NRF51/NRF51822/wdg_lld.c
diff options
context:
space:
mode:
authorFabio Utzig <utzig@utzig.org>2016-04-04 19:22:07 -0300
committerFabio Utzig <utzig@utzig.org>2016-04-04 19:22:07 -0300
commitdd9ca763bd552a76851c614a1b2dc2c6f3f516ea (patch)
treecab19155eb09ee42e511c4705e217646623c5d22 /os/hal/ports/NRF51/NRF51822/wdg_lld.c
parent0bafaa0473267aea00bdc8a005be69d80b96431c (diff)
downloadChibiOS-Contrib-dd9ca763bd552a76851c614a1b2dc2c6f3f516ea.tar.gz
ChibiOS-Contrib-dd9ca763bd552a76851c614a1b2dc2c6f3f516ea.tar.bz2
ChibiOS-Contrib-dd9ca763bd552a76851c614a1b2dc2c6f3f516ea.zip
Move files to new naming std
Diffstat (limited to 'os/hal/ports/NRF51/NRF51822/wdg_lld.c')
-rw-r--r--os/hal/ports/NRF51/NRF51822/wdg_lld.c150
1 files changed, 0 insertions, 150 deletions
diff --git a/os/hal/ports/NRF51/NRF51822/wdg_lld.c b/os/hal/ports/NRF51/NRF51822/wdg_lld.c
deleted file mode 100644
index 0a25ceb..0000000
--- a/os/hal/ports/NRF51/NRF51822/wdg_lld.c
+++ /dev/null
@@ -1,150 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2016 Stephane D'Alu
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-/**
- * @file NRF51822/wdg_lld.c
- * @brief WDG Driver subsystem low level driver source template.
- *
- * @addtogroup WDG
- * @{
- */
-
-#include "hal.h"
-
-#if HAL_USE_WDG || defined(__DOXYGEN__)
-
-/*===========================================================================*/
-/* Driver local definitions. */
-/*===========================================================================*/
-
-#define RELOAD_REQUEST_VALUE 0x6E524635
-
-/*===========================================================================*/
-/* Driver exported variables. */
-/*===========================================================================*/
-
-WDGDriver WDGD1;
-
-/*===========================================================================*/
-/* Driver local variables. */
-/*===========================================================================*/
-
-/*===========================================================================*/
-/* Driver local functions. */
-/*===========================================================================*/
-
-/*===========================================================================*/
-/* Driver interrupt handlers. */
-/*===========================================================================*/
-
-#if WDG_USE_TIMEOUT_CALLBACK == TRUE
-/**
- * @brief Watchdog vector.
- * @details This interrupt is used when watchdog timeout.
- *
- * @note Only 2 cycles at NRF51_LFCLK_FREQUENCY are available
- * to they good bye.
- *
- * @isr
- */
-OSAL_IRQ_HANDLER(Vector84) {
-
- OSAL_IRQ_PROLOGUE();
- osalSysLockFromISR();
-
- /* Notify */
- if (WDGD1.config->callback)
- WDGD1.config->callback();
-
- /* Wait for reboot */
- while (1) { /* */ }
-
- osalSysUnlockFromISR();
- OSAL_IRQ_EPILOGUE();
-}
-#endif
-
-/*===========================================================================*/
-/* Driver exported functions. */
-/*===========================================================================*/
-
-/**
- * @brief Low level WDG driver initialization.
- *
- * @notapi
- */
-void wdg_lld_init(void) {
- WDGD1.state = WDG_STOP;
- WDGD1.wdt = NRF_WDT;
-}
-
-/**
- * @brief Configures and activates the WDG peripheral.
- *
- * @note Once started there is no way out.
- *
- * @param[in] wdgp pointer to the @p WDGDriver object
- *
- * @notapi
- */
-void wdg_lld_start(WDGDriver *wdgp) {
-#if WDG_USE_TIMEOUT_CALLBACK == TRUE
- wdgp->wdt->INTENSET = WDT_INTENSET_TIMEOUT_Msk;
-#endif
-
- /* When to pause? (halt, sleep) */
- wdgp->wdt->CONFIG =
- (wdgp->config->flags.pause_on_sleep * WDT_CONFIG_SLEEP_Msk) |
- (wdgp->config->flags.pause_on_halt * WDT_CONFIG_HALT_Msk );
-
- /* Timeout in milli-seconds */
- uint64_t tout = (NRF51_LFCLK_FREQUENCY * wdgp->config->timeout_ms / 1000) - 1;
- osalDbgAssert(tout <= 0xFFFFFFFF, "watchdog timout value exceeded");
- wdgp->wdt->CRV = (uint32_t)tout;
-
- /* Reload request (using RR0) */
- wdgp->wdt->RREN = WDT_RREN_RR0_Msk;
-
- /* Say your prayers, little one. */
- wdgp->wdt->TASKS_START = 1;
-}
-
-/**
- * @brief Deactivates the WDG peripheral.
- *
- * @param[in] wdgp pointer to the @p WDGDriver object
- *
- * @api
- */
-void wdg_lld_stop(WDGDriver *wdgp) {
- (void)wdgp;
- osalDbgAssert(false, "WDG cannot be stopped once activated");
-}
-
-/**
- * @brief Reloads WDG's counter.
- *
- * @param[in] wdgp pointer to the @p WDGDriver object
- *
- * @notapi
- */
-void wdg_lld_reset(WDGDriver * wdgp) {
- wdgp->wdt->RR[0] = RELOAD_REQUEST_VALUE;
-}
-
-#endif /* HAL_USE_WDG */
-
-/** @} */