| 
									
										
										
										
											2025-06-04 11:21:27 +10:00
										 |  |  | ST_FAMILY = n6 | 
					
						
							|  |  |  | ST_PREFIX = stm32${ST_FAMILY}xx | 
					
						
							|  |  |  | ST_CMSIS = hw/mcu/st/cmsis_device_$(ST_FAMILY) | 
					
						
							|  |  |  | ST_HAL_DRIVER = hw/mcu/st/${ST_PREFIX}_hal_driver | 
					
						
							| 
									
										
										
										
											2025-06-12 15:08:46 +07:00
										 |  |  | ST_TCPP0203 = hw/mcu/st/stm32-tcpp0203 | 
					
						
							| 
									
										
										
										
											2025-06-04 11:21:27 +10:00
										 |  |  | 
 | 
					
						
							|  |  |  | UF2_FAMILY_ID = 0x6db66083 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | include $(TOP)/$(BOARD_PATH)/board.mk | 
					
						
							|  |  |  | CPU_CORE ?= cortex-m55 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # ----------------------
 | 
					
						
							|  |  |  | # Port & Speed Selection
 | 
					
						
							|  |  |  | # ----------------------
 | 
					
						
							|  |  |  | RHPORT_DEVICE ?= 1 | 
					
						
							|  |  |  | RHPORT_HOST ?= 1 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ifndef RHPORT_DEVICE_SPEED | 
					
						
							| 
									
										
										
										
											2025-06-12 14:07:51 +07:00
										 |  |  |   RHPORT_DEVICE_SPEED = OPT_MODE_HIGH_SPEED | 
					
						
							| 
									
										
										
										
											2025-06-04 11:21:27 +10:00
										 |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ifndef RHPORT_HOST_SPEED | 
					
						
							| 
									
										
										
										
											2025-06-12 14:07:51 +07:00
										 |  |  |   RHPORT_HOST_SPEED = OPT_MODE_HIGH_SPEED | 
					
						
							| 
									
										
										
										
											2025-06-04 11:21:27 +10:00
										 |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # --------------
 | 
					
						
							|  |  |  | # Compiler Flags
 | 
					
						
							|  |  |  | # --------------
 | 
					
						
							|  |  |  | CFLAGS += \
 | 
					
						
							|  |  |  |   -DCFG_TUSB_MCU=OPT_MCU_STM32N6 \
 | 
					
						
							|  |  |  | 	-DBOARD_TUD_RHPORT=${RHPORT_DEVICE} \
 | 
					
						
							|  |  |  | 	-DBOARD_TUD_MAX_SPEED=${RHPORT_DEVICE_SPEED} \
 | 
					
						
							|  |  |  | 	-DBOARD_TUH_RHPORT=${RHPORT_HOST} \
 | 
					
						
							| 
									
										
										
										
											2025-06-12 14:07:51 +07:00
										 |  |  | 	-DBOARD_TUH_MAX_SPEED=${RHPORT_HOST_SPEED} \
 | 
					
						
							|  |  |  | 	-DSEGGER_RTT_SECTION=\"noncacheable_buffer\" \
 | 
					
						
							|  |  |  | 	-DBUFFER_SIZE_UP=0x3000 \
 | 
					
						
							| 
									
										
										
										
											2025-06-04 11:21:27 +10:00
										 |  |  | 
 | 
					
						
							|  |  |  | # GCC Flags
 | 
					
						
							|  |  |  | CFLAGS_GCC += \
 | 
					
						
							|  |  |  |   -flto \
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # suppress warning caused by vendor mcu driver
 | 
					
						
							|  |  |  | CFLAGS_GCC += \
 | 
					
						
							|  |  |  |   -Wno-error=cast-align \
 | 
					
						
							|  |  |  |   -Wno-error=unused-parameter \
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | LDFLAGS_GCC += \
 | 
					
						
							|  |  |  |   -nostdlib -nostartfiles \
 | 
					
						
							|  |  |  |   --specs=nosys.specs --specs=nano.specs | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # -----------------
 | 
					
						
							|  |  |  | # Sources & Include
 | 
					
						
							|  |  |  | # -----------------
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | SRC_C += \
 | 
					
						
							|  |  |  | 	src/portable/synopsys/dwc2/dcd_dwc2.c \
 | 
					
						
							|  |  |  | 	src/portable/synopsys/dwc2/hcd_dwc2.c \
 | 
					
						
							|  |  |  | 	src/portable/synopsys/dwc2/dwc2_common.c \
 | 
					
						
							|  |  |  | 	$(ST_CMSIS)/Source/Templates/system_${ST_PREFIX}_fsbl.c \
 | 
					
						
							|  |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal.c \
 | 
					
						
							|  |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal_cortex.c \
 | 
					
						
							|  |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal_dma.c \
 | 
					
						
							|  |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal_gpio.c \
 | 
					
						
							|  |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal_hcd.c \
 | 
					
						
							| 
									
										
										
										
											2025-06-12 14:07:51 +07:00
										 |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal_i2c.c \
 | 
					
						
							| 
									
										
										
										
											2025-06-04 11:21:27 +10:00
										 |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal_pcd.c \
 | 
					
						
							|  |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal_pcd_ex.c \
 | 
					
						
							| 
									
										
										
										
											2025-06-12 14:07:51 +07:00
										 |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal_pwr.c \
 | 
					
						
							| 
									
										
										
										
											2025-06-04 11:21:27 +10:00
										 |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal_pwr_ex.c \
 | 
					
						
							|  |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal_rcc.c \
 | 
					
						
							|  |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal_rcc_ex.c \
 | 
					
						
							|  |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal_rif.c \
 | 
					
						
							|  |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal_uart.c \
 | 
					
						
							|  |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_hal_uart_ex.c \
 | 
					
						
							|  |  |  | 	$(ST_HAL_DRIVER)/Src/${ST_PREFIX}_ll_usb.c \
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | INC += \
 | 
					
						
							|  |  |  | 	$(TOP)/$(BOARD_PATH) \
 | 
					
						
							|  |  |  | 	$(TOP)/lib/CMSIS_5/CMSIS/Core/Include \
 | 
					
						
							|  |  |  | 	$(TOP)/$(ST_CMSIS)/Include \
 | 
					
						
							|  |  |  | 	$(TOP)/$(ST_HAL_DRIVER)/Inc | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Startup
 | 
					
						
							| 
									
										
										
										
											2025-06-12 14:07:51 +07:00
										 |  |  | SRC_S_GCC += $(ST_CMSIS)/Source/Templates/gcc/startup_$(MCU_VARIANT)_fsbl.s | 
					
						
							| 
									
										
										
										
											2025-06-04 11:21:27 +10:00
										 |  |  | SRC_S_IAR += $(ST_CMSIS)/Source/Templates/iar/startup_$(MCU_VARIANT).s | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Linker
 | 
					
						
							| 
									
										
										
										
											2025-06-12 14:07:51 +07:00
										 |  |  | LD_FILE_GCC ?= $(ST_CMSIS)/Source/Templates/gcc/linker/$(MCU_VARIANT)_flash.ld | 
					
						
							| 
									
										
										
										
											2025-06-04 11:21:27 +10:00
										 |  |  | LD_FILE_IAR ?= $(ST_CMSIS)/Source/Templates/iar/linker/$(MCU_VARIANT)_flash.icf |