summaryrefslogtreecommitdiffstats
path: root/reg/regdefs.h
diff options
context:
space:
mode:
Diffstat (limited to 'reg/regdefs.h')
-rw-r--r--reg/regdefs.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/reg/regdefs.h b/reg/regdefs.h
index 6a38c76..fa14689 100644
--- a/reg/regdefs.h
+++ b/reg/regdefs.h
@@ -7,6 +7,10 @@
#define REG_16(a) (*(volatile uint16_t *)(a))
#define REG_32(a) (*(volatile uint32_t *)(a))
+#define REG_8_M(start, len) ((uint8_t)(BITS(len) << (start)))
+#define REG_16_M(start, len) ((uint16_t)(BITS(len) << (start)))
+#define REG_32_M(start, len) ((uint32_t)(BITS(len) << (start)))
+
#define BV(b) (1 << (b))
#define IS_BIT_SET(reg, bit) (!!((reg) & BV(bit)))
#define WAIT_BIT_UNSET(reg, bit) do { } while (IS_BIT_SET(reg, bit))