+/* only mask default irqs, see NVIC_SET_PRIORITY users
+ * note: usb code uses 112 priority */
+#define __mask_irq() do { \
+ int basepri_ = 128 - 16; \
+ __asm__ volatile("msr BASEPRI, %0" :: "r"(basepri_)); \
+} while (0)
+#define __unmask_irq() do { \
+ int basepri_ = 0; \
+ __asm__ volatile("msr BASEPRI, %0" :: "r"(basepri_)); \
+} while (0)
+