summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hw/bsp/max32650/family.c16
-rw-r--r--hw/bsp/max32650/family.cmake1
-rw-r--r--hw/bsp/max32650/family.mk3
-rw-r--r--hw/bsp/max32666/family.c15
-rw-r--r--hw/bsp/max32666/family.cmake1
-rw-r--r--hw/bsp/max32666/family.mk1
-rw-r--r--hw/bsp/max32690/family.c16
-rw-r--r--hw/bsp/max32690/family.cmake1
-rw-r--r--hw/bsp/max32690/family.mk1
-rw-r--r--hw/bsp/max78002/family.c15
-rw-r--r--hw/bsp/max78002/family.cmake1
-rw-r--r--hw/bsp/max78002/family.mk1
-rw-r--r--src/portable/mentor/musb/musb_max32.h33
-rw-r--r--tools/get_deps.py2
14 files changed, 70 insertions, 37 deletions
diff --git a/hw/bsp/max32650/family.c b/hw/bsp/max32650/family.c
index 16b5233b9..89a5db160 100644
--- a/hw/bsp/max32650/family.c
+++ b/hw/bsp/max32650/family.c
@@ -24,12 +24,24 @@
* This file is part of the TinyUSB stack.
*/
-#include "board.h"
-#include "bsp/board_api.h"
+#ifdef __GNUC__
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wstrict-prototypes" // _mxc_crit_get_state()
+#endif
+
#include "gpio.h"
+#include "mxc_sys.h"
#include "mxc_device.h"
#include "uart.h"
+#ifdef __GNUC__
+#pragma GCC diagnostic pop
+#endif
+
+#include "board.h"
+#include "bsp/board_api.h"
+
+
//--------------------------------------------------------------------+
// Forward USB interrupt events to TinyUSB IRQ Handler
//--------------------------------------------------------------------+
diff --git a/hw/bsp/max32650/family.cmake b/hw/bsp/max32650/family.cmake
index 92b68a1cd..8c4f286a2 100644
--- a/hw/bsp/max32650/family.cmake
+++ b/hw/bsp/max32650/family.cmake
@@ -74,7 +74,6 @@ function(add_board_target BOARD_TARGET)
)
target_include_directories(${BOARD_TARGET} PUBLIC
${CMAKE_CURRENT_FUNCTION_LIST_DIR}
- ${CMSIS_5}/CMSIS/Core/Include
${MAX32_CMSIS}/Include
${MAX32_CMSIS}/Device/Maxim/MAX32650/Include
${MAX32_PERIPH}/Include/MAX32650
diff --git a/hw/bsp/max32650/family.mk b/hw/bsp/max32650/family.mk
index 359261216..d2fc293e4 100644
--- a/hw/bsp/max32650/family.mk
+++ b/hw/bsp/max32650/family.mk
@@ -82,14 +82,13 @@ SRC_C += \
$(PERIPH_SRC)/ICC/icc_reva.c \
$(PERIPH_SRC)/ICC/icc_common.c \
$(PERIPH_SRC)/TPU/tpu_me10.c \
- $(PERIPH_SRC)/TPU/tpu_reva.c \
+ $(PERIPH_SRC)/TPU/tpu_reva.c \
$(PERIPH_SRC)/UART/uart_common.c \
$(PERIPH_SRC)/UART/uart_me10.c \
$(PERIPH_SRC)/UART/uart_reva.c \
INC += \
$(TOP)/$(BOARD_PATH) \
- $(TOP)/lib/CMSIS_5/CMSIS/Core/Include \
$(TOP)/$(MAX32_CMSIS)/Include \
$(TOP)/$(MAX32_CMSIS)/Device/Maxim/MAX32650/Include \
$(TOP)/$(MAX32_PERIPH)/Include/MAX32650 \
diff --git a/hw/bsp/max32666/family.c b/hw/bsp/max32666/family.c
index 1398e09ff..8ee4b6762 100644
--- a/hw/bsp/max32666/family.c
+++ b/hw/bsp/max32666/family.c
@@ -24,13 +24,24 @@
* This file is part of the TinyUSB stack.
*/
-#include "board.h"
-#include "bsp/board_api.h"
+#ifdef __GNUC__
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wstrict-prototypes" // _mxc_crit_get_state()
+#endif
+
#include "gpio.h"
+#include "mxc_sys.h"
#include "mcr_regs.h"
#include "mxc_device.h"
#include "uart.h"
+#ifdef __GNUC__
+#pragma GCC diagnostic pop
+#endif
+
+#include "board.h"
+#include "bsp/board_api.h"
+
//--------------------------------------------------------------------+
// Forward USB interrupt events to TinyUSB IRQ Handler
//--------------------------------------------------------------------+
diff --git a/hw/bsp/max32666/family.cmake b/hw/bsp/max32666/family.cmake
index eb9d2175f..4a3f1a428 100644
--- a/hw/bsp/max32666/family.cmake
+++ b/hw/bsp/max32666/family.cmake
@@ -70,7 +70,6 @@ function(add_board_target BOARD_TARGET)
)
target_include_directories(${BOARD_TARGET} PUBLIC
${CMAKE_CURRENT_FUNCTION_LIST_DIR}
- ${CMSIS_5}/CMSIS/Core/Include
${MAX32_CMSIS}/Include
${MAX32_CMSIS}/Device/Maxim/MAX32665/Include
${MAX32_PERIPH}/Include/MAX32665
diff --git a/hw/bsp/max32666/family.mk b/hw/bsp/max32666/family.mk
index 720d994ef..b4f7d1e57 100644
--- a/hw/bsp/max32666/family.mk
+++ b/hw/bsp/max32666/family.mk
@@ -82,7 +82,6 @@ SRC_C += \
INC += \
$(TOP)/$(BOARD_PATH) \
- $(TOP)/lib/CMSIS_5/CMSIS/Core/Include \
$(TOP)/$(MAX32_CMSIS)/Include \
$(TOP)/$(MAX32_CMSIS)/Device/Maxim/MAX32665/Include \
$(TOP)/$(MAX32_PERIPH)/Include/MAX32665 \
diff --git a/hw/bsp/max32690/family.c b/hw/bsp/max32690/family.c
index f4998bdbe..2418168d4 100644
--- a/hw/bsp/max32690/family.c
+++ b/hw/bsp/max32690/family.c
@@ -24,13 +24,25 @@
* This file is part of the TinyUSB stack.
*/
-#include "board.h"
-#include "bsp/board_api.h"
+#ifdef __GNUC__
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wstrict-prototypes" // _mxc_crit_get_state()
+#endif
+
#include "gpio.h"
+#include "mxc_sys.h"
#include "mcr_regs.h"
#include "mxc_device.h"
#include "uart.h"
+#ifdef __GNUC__
+#pragma GCC diagnostic pop
+#endif
+
+#include "board.h"
+#include "bsp/board_api.h"
+
+
//--------------------------------------------------------------------+
// Forward USB interrupt events to TinyUSB IRQ Handler
//--------------------------------------------------------------------+
diff --git a/hw/bsp/max32690/family.cmake b/hw/bsp/max32690/family.cmake
index 2a9422dbe..58647e432 100644
--- a/hw/bsp/max32690/family.cmake
+++ b/hw/bsp/max32690/family.cmake
@@ -75,7 +75,6 @@ function(add_board_target BOARD_TARGET)
)
target_include_directories(${BOARD_TARGET} PUBLIC
${CMAKE_CURRENT_FUNCTION_LIST_DIR}
- ${CMSIS_5}/CMSIS/Core/Include
${MAX32_CMSIS}/Include
${MAX32_CMSIS}/Device/Maxim/MAX32690/Include
${MAX32_PERIPH}/Include/MAX32690
diff --git a/hw/bsp/max32690/family.mk b/hw/bsp/max32690/family.mk
index c533cf4a4..d4df8ef2f 100644
--- a/hw/bsp/max32690/family.mk
+++ b/hw/bsp/max32690/family.mk
@@ -90,7 +90,6 @@ SRC_C += \
INC += \
$(TOP)/$(BOARD_PATH) \
- $(TOP)/lib/CMSIS_5/CMSIS/Core/Include \
$(TOP)/$(MAX32_CMSIS)/Include \
$(TOP)/$(MAX32_CMSIS)/Device/Maxim/MAX32690/Include \
$(TOP)/$(MAX32_PERIPH)/Include/MAX32690 \
diff --git a/hw/bsp/max78002/family.c b/hw/bsp/max78002/family.c
index 7758083a2..8d51f141c 100644
--- a/hw/bsp/max78002/family.c
+++ b/hw/bsp/max78002/family.c
@@ -24,13 +24,24 @@
* This file is part of the TinyUSB stack.
*/
-#include "board.h"
-#include "bsp/board_api.h"
+#ifdef __GNUC__
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wstrict-prototypes" // _mxc_crit_get_state()
+#endif
+
#include "gpio.h"
+#include "mxc_sys.h"
#include "mcr_regs.h"
#include "mxc_device.h"
#include "uart.h"
+#ifdef __GNUC__
+#pragma GCC diagnostic pop
+#endif
+
+#include "board.h"
+#include "bsp/board_api.h"
+
//--------------------------------------------------------------------+
// Forward USB interrupt events to TinyUSB IRQ Handler
//--------------------------------------------------------------------+
diff --git a/hw/bsp/max78002/family.cmake b/hw/bsp/max78002/family.cmake
index 090f1da43..446930bd8 100644
--- a/hw/bsp/max78002/family.cmake
+++ b/hw/bsp/max78002/family.cmake
@@ -72,7 +72,6 @@ function(add_board_target BOARD_TARGET)
)
target_include_directories(${BOARD_TARGET} PUBLIC
${CMAKE_CURRENT_FUNCTION_LIST_DIR}
- ${CMSIS_5}/CMSIS/Core/Include
${MAX32_CMSIS}/Include
${MAX32_CMSIS}/Device/Maxim/MAX78002/Include
${MAX32_PERIPH}/Include/MAX78002
diff --git a/hw/bsp/max78002/family.mk b/hw/bsp/max78002/family.mk
index 5297815de..997816261 100644
--- a/hw/bsp/max78002/family.mk
+++ b/hw/bsp/max78002/family.mk
@@ -87,7 +87,6 @@ SRC_C += \
INC += \
$(TOP)/$(BOARD_PATH) \
- $(TOP)/lib/CMSIS_5/CMSIS/Core/Include \
$(TOP)/$(MAX32_CMSIS)/Include \
$(TOP)/$(MAX32_CMSIS)/Device/Maxim/MAX78002/Include \
$(TOP)/$(MAX32_PERIPH)/Include/MAX78002 \
diff --git a/src/portable/mentor/musb/musb_max32.h b/src/portable/mentor/musb/musb_max32.h
index 297a695f8..bc6ce76dd 100644
--- a/src/portable/mentor/musb/musb_max32.h
+++ b/src/portable/mentor/musb/musb_max32.h
@@ -31,13 +31,8 @@
extern "C" {
#endif
-#if TU_CHECK_MCU(OPT_MCU_MAX32690, OPT_MCU_MAX32650, OPT_MCU_MAX32666, OPT_MCU_MAX78002)
- #include "mxc_device.h"
- #include "usbhs_regs.h"
-#else
- #error "Unsupported MCUs"
-#endif
-
+#include "mxc_device.h"
+#include "usbhs_regs.h"
#if CFG_TUD_ENABLED
#define USBHS_M31_CLOCK_RECOVERY
@@ -48,39 +43,39 @@ static mxc_usbhs_regs_t* const musb_periph_inst[] = {
};
// Mapping of IRQ numbers to port. Currently just 1.
-static const IRQn_Type musb_irqs[] = {
+static const IRQn_Type musb_irqs[] = {
USB_IRQn
};
TU_ATTR_ALWAYS_INLINE
-static inline void musb_dcd_int_enable(uint8_t rhport)
-{
+static inline void musb_dcd_int_enable(uint8_t rhport) {
NVIC_EnableIRQ(musb_irqs[rhport]);
}
TU_ATTR_ALWAYS_INLINE
-static inline void musb_dcd_int_disable(uint8_t rhport)
-{
+static inline void musb_dcd_int_disable(uint8_t rhport) {
NVIC_DisableIRQ(musb_irqs[rhport]);
}
TU_ATTR_ALWAYS_INLINE
-static inline unsigned musb_dcd_get_int_enable(uint8_t rhport)
-{
+static inline unsigned musb_dcd_get_int_enable(uint8_t rhport) {
+ #ifdef NVIC_GetEnableIRQ // only defined in CMSIS 5
return NVIC_GetEnableIRQ(musb_irqs[rhport]);
+ #else
+ uint32_t IRQn = (uint32_t) musb_irqs[rhport];
+ return ((NVIC->ISER[IRQn >> 5UL] & (1UL << (IRQn & 0x1FUL))) != 0UL) ? 1UL : 0UL;
+ #endif
}
TU_ATTR_ALWAYS_INLINE
-static inline void musb_dcd_int_clear(uint8_t rhport)
-{
- NVIC_ClearPendingIRQ(musb_irqs[rhport]);
+static inline void musb_dcd_int_clear(uint8_t rhport) {
+ NVIC_ClearPendingIRQ(musb_irqs[rhport]);
}
//Used to save and restore user's register map when interrupt occurs
static volatile unsigned isr_saved_index = 0;
-static inline void musb_dcd_int_handler_enter(uint8_t rhport)
-{
+static inline void musb_dcd_int_handler_enter(uint8_t rhport) {
uint32_t mxm_int, mxm_int_en, mxm_is;
//save current register index
diff --git a/tools/get_deps.py b/tools/get_deps.py
index 51d6304ae..f141d3d41 100644
--- a/tools/get_deps.py
+++ b/tools/get_deps.py
@@ -26,7 +26,7 @@ deps_optional = {
'fc100s'],
'hw/mcu/analog/max32' : ['https://github.com/analogdevicesinc/msdk.git',
'b20b398d3e5e2007594e54a74ba3d2a2e50ddd75',
- 'max32690 max32650 max32666 max78002'],
+ 'max32650 max32666 max32690 max78002'],
'hw/mcu/bridgetek/ft9xx/ft90x-sdk': ['https://github.com/BRTSG-FOSS/ft90x-sdk.git',
'91060164afe239fcb394122e8bf9eb24d3194eb1',
'brtmm90x'],