summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernard Xiong <[email protected]>2021-03-12 08:09:00 +0800
committerGitHub <[email protected]>2021-03-12 08:09:00 +0800
commit5c4f92126d579a1a2c8d1e1fdb5bcbba9c094c2c (patch)
tree62025161ded1c9ce0631ef2eca5c10274c6edf4d
parentca8056072d634439836137f22876d34d59019aaa (diff)
parenteb894e88f1c9e0fd7af1ed611605f4afc91e3245 (diff)
Merge pull request #4444 from mysterywolf/wdg
[ab32vg1] 增加看门狗溢出时间宏定义
-rw-r--r--bsp/bluetrum/ab32vg1-ab-prougen/board/board.h10
-rw-r--r--bsp/bluetrum/libraries/hal_drivers/drv_wdt.c34
-rw-r--r--bsp/bluetrum/libraries/hal_drivers/drv_wdt.h23
3 files changed, 49 insertions, 18 deletions
diff --git a/bsp/bluetrum/ab32vg1-ab-prougen/board/board.h b/bsp/bluetrum/ab32vg1-ab-prougen/board/board.h
index fd56ab2883..37383063ba 100644
--- a/bsp/bluetrum/ab32vg1-ab-prougen/board/board.h
+++ b/bsp/bluetrum/ab32vg1-ab-prougen/board/board.h
@@ -12,7 +12,13 @@
#define BOARD_H__
#include <rtthread.h>
-#include "ab32vgx.h"
-#include "drv_gpio.h"
+#include <ab32vgx.h>
+#ifdef RT_USING_PIN
+#include <drv_gpio.h>
+#endif
+#ifdef RT_USING_WDT
+#include <drv_wdt.h>
+#endif
+
#endif
diff --git a/bsp/bluetrum/libraries/hal_drivers/drv_wdt.c b/bsp/bluetrum/libraries/hal_drivers/drv_wdt.c
index 6e99f50afb..28299897d1 100644
--- a/bsp/bluetrum/libraries/hal_drivers/drv_wdt.c
+++ b/bsp/bluetrum/libraries/hal_drivers/drv_wdt.c
@@ -12,6 +12,8 @@
#ifdef RT_USING_WDT
+#include <drv_wdt.h>
+
// #define DRV_DEBUG
#define LOG_TAG "drv.wdt"
#include <drv_log.h>
@@ -49,35 +51,35 @@ static rt_err_t wdt_control(rt_watchdog_t *wdt, int cmd, void *arg)
switch (*((rt_uint32_t *)arg))
{
- case 0:
+ case AB32_WDT_TIMEOUT_1MS:
LOG_I("The watchdog timeout is set to 1ms");
tmp |= (0xa << 24) | (0x00 << 20);
break;
- case 1:
+ case AB32_WDT_TIMEOUT_256MS:
LOG_I("The watchdog timeout is set to 256ms");
tmp |= (0xa << 24) | (0x01 << 20);
break;
- case 2:
+ case AB32_WDT_TIMEOUT_512MS:
LOG_I("The watchdog timeout is set to 512ms");
tmp |= (0xa << 24) | (0x02 << 20);
break;
- case 3:
+ case AB32_WDT_TIMEOUT_1024MS:
LOG_I("The watchdog timeout is set to 1024ms");
tmp |= (0xa << 24) | (0x03 << 20);
break;
- case 4:
+ case AB32_WDT_TIMEOUT_2048MS:
LOG_I("The watchdog timeout is set to 2048ms");
tmp |= (0xa << 24) | (0x04 << 20);
break;
- case 5:
+ case AB32_WDT_TIMEOUT_4096MS:
LOG_I("The watchdog timeout is set to 4096ms");
tmp |= (0xa << 24) | (0x05 << 20);
break;
- case 6:
+ case AB32_WDT_TIMEOUT_8192MS:
LOG_I("The watchdog timeout is set to 8192ms");
tmp |= (0xa << 24) | (0x06 << 20);
break;
- case 7:
+ case AB32_WDT_TIMEOUT_16384MS:
LOG_I("The watchdog timeout is set to 16384ms");
tmp |= (0xa << 24) | (0x07 << 20);
break;
@@ -92,28 +94,28 @@ static rt_err_t wdt_control(rt_watchdog_t *wdt, int cmd, void *arg)
case RT_DEVICE_CTRL_WDT_GET_TIMEOUT:
switch ((WDTCON >> 20) & 0x7)
{
- case 0:
+ case AB32_WDT_TIMEOUT_1MS:
LOG_D("The watchdog timeout is set to 1ms");
break;
- case 1:
+ case AB32_WDT_TIMEOUT_256MS:
LOG_D("The watchdog timeout is set to 256ms");
break;
- case 2:
+ case AB32_WDT_TIMEOUT_512MS:
LOG_D("The watchdog timeout is set to 512ms");
break;
- case 3:
+ case AB32_WDT_TIMEOUT_1024MS:
LOG_D("The watchdog timeout is set to 1024ms");
break;
- case 4:
+ case AB32_WDT_TIMEOUT_2048MS:
LOG_D("The watchdog timeout is set to 2048ms");
break;
- case 5:
+ case AB32_WDT_TIMEOUT_4096MS:
LOG_D("The watchdog timeout is set to 4096ms");
break;
- case 6:
+ case AB32_WDT_TIMEOUT_8192MS:
LOG_D("The watchdog timeout is set to 8192ms");
break;
- case 7:
+ case AB32_WDT_TIMEOUT_16384MS:
LOG_D("The watchdog timeout is set to 16384ms");
break;
default:
diff --git a/bsp/bluetrum/libraries/hal_drivers/drv_wdt.h b/bsp/bluetrum/libraries/hal_drivers/drv_wdt.h
new file mode 100644
index 0000000000..5f8d61aaff
--- /dev/null
+++ b/bsp/bluetrum/libraries/hal_drivers/drv_wdt.h
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 2020-2021, Bluetrum Development Team
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Change Logs:
+ * Date Author Notes
+ * 2021-03-11 Meco Man first version
+ */
+
+#ifndef DRV_WDT_H__
+#define DRV_WDT_H__
+
+#define AB32_WDT_TIMEOUT_1MS 0
+#define AB32_WDT_TIMEOUT_256MS 1
+#define AB32_WDT_TIMEOUT_512MS 2
+#define AB32_WDT_TIMEOUT_1024MS 3
+#define AB32_WDT_TIMEOUT_2048MS 4
+#define AB32_WDT_TIMEOUT_4096MS 5
+#define AB32_WDT_TIMEOUT_8192MS 6
+#define AB32_WDT_TIMEOUT_16384MS 7
+
+#endif