zhaozhongxiang před 7 roky
rodič
revize
a7aff2e528

+ 0 - 11
lib/drivers/common.c

@@ -42,14 +42,3 @@ uint32_t get_gpio_bit(volatile uint32_t* bits, size_t offset)
     return get_bit(bits, 1, offset);
 }
 
-void machine_irq_enable(void)
-{
-    set_csr(mie, MIP_MEIP);
-    set_csr(mstatus, MSTATUS_MIE);
-}
-
-void machine_irq_disable(void)
-{
-    clear_csr(mie, MIP_MEIP);
-    clear_csr(mstatus, MSTATUS_MIE);
-}

+ 10 - 0
lib/drivers/include/sysctl.h

@@ -1052,6 +1052,16 @@ uint32_t sysctl_set_cpu_frequency(uint32_t frequency);
  */
 void sysctl_set_pll_frequency(uint64_t pll0, uint64_t pll1, uint64_t pll2);
 
+/**
+ * @brief       Enable interrupt
+ */
+void sysctl_enable_irq(void);
+
+/**
+ * @brief       Disable interrupt
+ */
+void sysctl_disable_irq(void);
+
 #ifdef __cplusplus
 }
 #endif

+ 0 - 10
lib/drivers/include/utils.h

@@ -340,16 +340,6 @@ uint32_t get_bit(volatile uint32_t* bits, uint32_t mask, size_t offset);
  */
 uint32_t get_gpio_bit(volatile uint32_t* bits, size_t offset);
 
-/**
- * @brief       Enable interrupt
- */
-void machine_irq_enable();
-
-/**
- * @brief       Disable interrupt
- */
-void machine_irq_disable();
-
 #ifdef __cplusplus
 }
 #endif /* __cplusplus */

+ 13 - 0
lib/drivers/sysctl.c

@@ -18,6 +18,7 @@
 #include <stdio.h>
 #include "sysctl.h"
 #include "string.h"
+#include "encoding.h"
 
 #define SYSCTRL_CLOCK_FREQ_IN0 (26000000UL)
 
@@ -1791,3 +1792,15 @@ uint32_t sysctl_set_cpu_frequency(uint32_t frequency)
     return result;
 }
 
+void sysctl_enable_irq(void)
+{
+    set_csr(mie, MIP_MEIP);
+    set_csr(mstatus, MSTATUS_MIE);
+}
+
+void sysctl_disable_irq(void)
+{
+    clear_csr(mie, MIP_MEIP);
+    clear_csr(mstatus, MSTATUS_MIE);
+}
+