summaryrefslogtreecommitdiffstats
path: root/reg/pit.h
diff options
context:
space:
mode:
authorTomasz Kramkowski <tk@the-tk.com>2017-01-21 14:55:27 +0000
committerTomasz Kramkowski <tk@the-tk.com>2017-01-21 14:55:27 +0000
commit68c89856c1fc310ad0d75ae1df9d000704e87c8a (patch)
treeaa60906eb89e33f967d51fa304600f44dd684cdc /reg/pit.h
downloadmk20dx256-68c89856c1fc310ad0d75ae1df9d000704e87c8a.tar.gz
mk20dx256-68c89856c1fc310ad0d75ae1df9d000704e87c8a.tar.xz
mk20dx256-68c89856c1fc310ad0d75ae1df9d000704e87c8a.zip
Init commit
Diffstat (limited to 'reg/pit.h')
-rw-r--r--reg/pit.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/reg/pit.h b/reg/pit.h
new file mode 100644
index 0000000..90587f6
--- /dev/null
+++ b/reg/pit.h
@@ -0,0 +1,26 @@
+#ifndef LIB_REG_PIT_H
+#define LIB_REG_PIT_H
+
+#include "regdefs.h"
+
+#define PIT_MCR REG_32(0x40037000) // PIT Module Control Register
+#define MCR_MDIS 1
+#define MCR_FRZ 0
+
+#define PIT_LDVAL(n) REG_32(0x40037100 + 16 * (n)) // Timer Load Value Register
+#define LDVAL_TSV 0 // Timer Start Value
+#define LDVAL_TSV_M (uint32_t)BITS(32)
+
+#define PIT_CVAL(n) REG_32(0x40037104 + 16 * (n)) // Current Timer Value Register
+#define CVAL_TVL 0 // Current Timer Value
+#define CVAL_TVL_M (uint32_t)BITS(32)
+
+#define PIT_TCTRL(n) REG_32(0x40037108 + 16 * (n)) // Timer Control Register
+#define TCTRL_CHN 2 // Chain Mode
+#define TCTRL_TIE 1 // Timer Interrupt Enable
+#define TCTRL_TEN 0 // Timer Enable
+
+#define PIT_TFLG(n) REG_32(0x4003710C + 16 * (n)) // Timer Flag Register
+#define TFLG_TIF 0 // Timer Interrupt Flag
+
+#endif /* LIB_REG_PIT_H */