| 
									
										
										
										
											2019-09-08 21:54:56 +07:00
										 |  |  | CFLAGS += \
 | 
					
						
							| 
									
										
										
										
											2019-11-20 16:06:40 +07:00
										 |  |  |   -flto \
 | 
					
						
							| 
									
										
										
										
											2019-09-08 21:54:56 +07:00
										 |  |  |   -mthumb \
 | 
					
						
							|  |  |  |   -mabi=aapcs \
 | 
					
						
							|  |  |  |   -mcpu=cortex-m4 \
 | 
					
						
							|  |  |  |   -mfloat-abi=hard \
 | 
					
						
							|  |  |  |   -mfpu=fpv4-sp-d16 \
 | 
					
						
							|  |  |  |   -DNRF52840_XXAA \
 | 
					
						
							|  |  |  |   -DCONFIG_GPIO_AS_PINRESET \
 | 
					
						
							|  |  |  |   -DCFG_TUSB_MCU=OPT_MCU_NRF5X | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-05-17 14:24:15 +07:00
										 |  |  | # suppress warning caused by vendor mcu driver
 | 
					
						
							|  |  |  | CFLAGS += -Wno-error=undef -Wno-error=unused-parameter -Wno-error=cast-align | 
					
						
							| 
									
										
										
										
											2019-09-27 00:15:43 +07:00
										 |  |  | 
 | 
					
						
							|  |  |  | # due to tusb_hal_nrf_power_event
 | 
					
						
							| 
									
										
										
										
											2019-10-01 15:43:28 +07:00
										 |  |  | GCCVERSION = $(firstword $(subst ., ,$(shell arm-none-eabi-gcc -dumpversion))) | 
					
						
							|  |  |  | ifeq ($(shell expr $(GCCVERSION) \>= 8), 1) | 
					
						
							| 
									
										
										
										
											2019-09-27 00:15:43 +07:00
										 |  |  | CFLAGS += -Wno-error=cast-function-type | 
					
						
							| 
									
										
										
										
											2019-10-01 15:43:28 +07:00
										 |  |  | endif | 
					
						
							| 
									
										
										
										
											2019-09-08 21:54:56 +07:00
										 |  |  | 
 | 
					
						
							|  |  |  | # All source paths should be relative to the top level.
 | 
					
						
							|  |  |  | LD_FILE = hw/bsp/$(BOARD)/$(BOARD).ld | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | LDFLAGS += -L$(TOP)/hw/mcu/nordic/nrfx/mdk | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | SRC_C += \
 | 
					
						
							|  |  |  | 	hw/mcu/nordic/nrfx/drivers/src/nrfx_power.c \
 | 
					
						
							|  |  |  | 	hw/mcu/nordic/nrfx/mdk/system_nrf52840.c \
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | INC += \
 | 
					
						
							| 
									
										
										
										
											2020-03-24 08:51:11 +07:00
										 |  |  | 	$(TOP)/lib/CMSIS_4/CMSIS/Include \
 | 
					
						
							| 
									
										
										
										
											2019-09-08 21:54:56 +07:00
										 |  |  | 	$(TOP)/hw/mcu/nordic \
 | 
					
						
							|  |  |  | 	$(TOP)/hw/mcu/nordic/nrfx \
 | 
					
						
							|  |  |  | 	$(TOP)/hw/mcu/nordic/nrfx/mdk \
 | 
					
						
							|  |  |  | 	$(TOP)/hw/mcu/nordic/nrfx/hal \
 | 
					
						
							|  |  |  | 	$(TOP)/hw/mcu/nordic/nrfx/drivers/include \
 | 
					
						
							|  |  |  | 	$(TOP)/hw/mcu/nordic/nrfx/drivers/src \
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | SRC_S += hw/mcu/nordic/nrfx/mdk/gcc_startup_nrf52840.S | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ASFLAGS += -D__HEAP_SIZE=0 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # For TinyUSB port source
 | 
					
						
							|  |  |  | VENDOR = nordic | 
					
						
							|  |  |  | CHIP_FAMILY = nrf5x | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # For freeRTOS port source
 | 
					
						
							|  |  |  | FREERTOS_PORT = ARM_CM4F | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # For flash-jlink target
 | 
					
						
							|  |  |  | JLINK_DEVICE = nRF52840_xxAA | 
					
						
							|  |  |  | JLINK_IF = swd | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # flash using Nordic nrfutil (pip2 install nrfutil)
 | 
					
						
							|  |  |  | # 	make BOARD=pca10059 SERIAL=/dev/ttyACM0 all flash
 | 
					
						
							|  |  |  | NRFUTIL = nrfutil | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | $(BUILD)/$(BOARD)-firmware.zip: $(BUILD)/$(BOARD)-firmware.hex | 
					
						
							|  |  |  | 	$(NRFUTIL) pkg generate --hw-version 52 --sd-req 0x0000 --debug-mode --application $^ $@ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | flash: $(BUILD)/$(BOARD)-firmware.zip | 
					
						
							|  |  |  | 	@:$(call check_defined, SERIAL, example: SERIAL=/dev/ttyACM0) | 
					
						
							|  |  |  | 	$(NRFUTIL) dfu usb-serial --package $^ -p $(SERIAL) -b 115200 |