summaryrefslogtreecommitdiff
path: root/src/stm/stm32l.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/stm/stm32l.h')
-rw-r--r--src/stm/stm32l.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/stm/stm32l.h b/src/stm/stm32l.h
index 1d636037..63bde0f8 100644
--- a/src/stm/stm32l.h
+++ b/src/stm/stm32l.h
@@ -435,6 +435,9 @@ extern struct stm_flash stm_flash;
#define STM_FLASH_PEKEYR_PEKEY1 0x89ABCDEF
#define STM_FLASH_PEKEYR_PEKEY2 0x02030405
+#define STM_FLASH_PRGKEYR_PRGKEY1 0x8C9DAEBF
+#define STM_FLASH_PRGKEYR_PRGKEY2 0x13141516
+
struct stm_rcc {
vuint32_t cr;
vuint32_t icscr;
@@ -811,6 +814,24 @@ extern struct stm_lcd stm_lcd;
#define STM_LCD_CLR_UDDC (3)
#define STM_LCD_CLR_SOFC (1)
+/* The SYSTICK starts at 0xe000e010 */
+
+struct stm_systick {
+ vuint32_t csr;
+ vuint32_t rvr;
+ vuint32_t cvr;
+ vuint32_t calib;
+};
+
+extern struct stm_systick stm_systick;
+
+#define STM_SYSTICK_CSR_ENABLE 0
+#define STM_SYSTICK_CSR_TICKINT 1
+#define STM_SYSTICK_CSR_CLKSOURCE 2
+#define STM_SYSTICK_CSR_CLKSOURCE_HCLK_8 0
+#define STM_SYSTICK_CSR_CLKSOURCE_HCLK 1
+#define STM_SYSTICK_CSR_COUNTFLAG 16
+
/* The NVIC starts at 0xe000e100, so add that to the offsets to find the absolute address */
struct stm_nvic {