7
7
# - SD_HEX : to bootloader hex binary
8
8
# ------------------------------------------------------------------------------
9
9
10
+ # local customization
10
11
-include Makefile.user
11
12
12
13
SDK_PATH = lib/sdk/components
@@ -37,7 +38,7 @@ OUT_NAME = $(BOARD)_bootloader-$(GIT_VERSION)
37
38
MERGED_FILE = $(OUT_NAME ) _$(SD_NAME ) _$(SD_VERSION )
38
39
39
40
# ------------------------------------------------------------------------------
40
- # Tool configure
41
+ # Tool Configure
41
42
# ------------------------------------------------------------------------------
42
43
43
44
# Toolchain commands
@@ -208,39 +209,46 @@ ASM_SRC = $(NRFX_PATH)/mdk/gcc_startup_$(MCU_SUB_VARIANT).S
208
209
# ------------------------------------------------------------------------------
209
210
210
211
# src
211
- IPATH += src
212
- IPATH += src/boards
213
- IPATH += src/boards/$(BOARD )
214
- IPATH += src/cmsis/include
215
- IPATH += src/usb
216
- IPATH += $(TUSB_PATH )
212
+ IPATH += \
213
+ src \
214
+ src/boards \
215
+ src/boards/$(BOARD) \
216
+ src/cmsis/include \
217
+ src/usb \
218
+ $(TUSB_PATH)
217
219
218
220
# nrfx
219
- IPATH += $(NRFX_PATH )
220
- IPATH += $(NRFX_PATH ) /mdk
221
- IPATH += $(NRFX_PATH ) /hal
222
- IPATH += $(NRFX_PATH ) /drivers/include
223
- IPATH += $(NRFX_PATH ) /drivers/src
224
-
225
- IPATH += $(SDK11_PATH ) /libraries/bootloader_dfu/hci_transport
226
- IPATH += $(SDK11_PATH ) /libraries/bootloader_dfu
227
- IPATH += $(SDK11_PATH ) /drivers_nrf/pstorage
228
- IPATH += $(SDK11_PATH ) /ble/common
229
- IPATH += $(SDK11_PATH ) /ble/ble_services/ble_dfu
230
- IPATH += $(SDK11_PATH ) /ble/ble_services/ble_dis
231
-
232
- IPATH += $(SDK_PATH ) /libraries/timer
233
- IPATH += $(SDK_PATH ) /libraries/scheduler
234
- IPATH += $(SDK_PATH ) /libraries/crc16
235
- IPATH += $(SDK_PATH ) /libraries/util
236
- IPATH += $(SDK_PATH ) /libraries/hci/config
237
- IPATH += $(SDK_PATH ) /libraries/uart
238
- IPATH += $(SDK_PATH ) /libraries/hci
239
- IPATH += $(SDK_PATH ) /drivers_nrf/delay
240
-
241
- # Softdevice
242
- IPATH += $(SD_PATH ) /$(SD_FILENAME ) _API/include
243
- IPATH += $(SD_PATH ) /$(SD_FILENAME ) _API/include/nrf52
221
+ IPATH += \
222
+ $(NRFX_PATH) \
223
+ $(NRFX_PATH)/mdk \
224
+ $(NRFX_PATH)/hal \
225
+ $(NRFX_PATH)/drivers/include \
226
+ $(NRFX_PATH)/drivers/src
227
+
228
+ # sdk11 for cdc/ble dfu
229
+ IPATH += \
230
+ $(SDK11_PATH)/libraries/bootloader_dfu/hci_transport \
231
+ $(SDK11_PATH)/libraries/bootloader_dfu \
232
+ $(SDK11_PATH)/drivers_nrf/pstorage \
233
+ $(SDK11_PATH)/ble/common \
234
+ $(SDK11_PATH)/ble/ble_services/ble_dfu \
235
+ $(SDK11_PATH)/ble/ble_services/ble_dis
236
+
237
+ # later sdk with updated drivers
238
+ IPATH += \
239
+ $(SDK_PATH)/libraries/timer \
240
+ $(SDK_PATH)/libraries/scheduler \
241
+ $(SDK_PATH)/libraries/crc16 \
242
+ $(SDK_PATH)/libraries/util \
243
+ $(SDK_PATH)/libraries/hci/config \
244
+ $(SDK_PATH)/libraries/uart \
245
+ $(SDK_PATH)/libraries/hci \
246
+ $(SDK_PATH)/drivers_nrf/delay
247
+
248
+ # SoftDevice
249
+ IPATH += \
250
+ $(SD_PATH)/$(SD_FILENAME)_API/include \
251
+ $(SD_PATH)/$(SD_FILENAME)_API/include/nrf52
244
252
245
253
# ------------------------------------------------------------------------------
246
254
# Compiler Flags
@@ -278,9 +286,6 @@ CFLAGS += \
278
286
# Suppress warning caused by SDK
279
287
CFLAGS += -Wno-unused-parameter -Wno-expansion-to-defined
280
288
281
- # TinyUSB tusb_hal_nrf_power_event
282
- CFLAGS += -Wno-cast-function-type
283
-
284
289
# Nordic Softdevice SDK header files contains inline assembler that has
285
290
# broken constraints. As a result the IPA-modref pass, introduced in gcc-11,
286
291
# is able to "prove" that arguments to wrapper functions generated with
@@ -332,6 +337,7 @@ LIBS += -lm -lc
332
337
# ------------------------------------------------------------------------------
333
338
# Assembler flags
334
339
# ------------------------------------------------------------------------------
340
+
335
341
ASFLAGS += $(CFLAGS )
336
342
337
343
# function for removing duplicates in a list
@@ -356,7 +362,7 @@ INC_PATHS = $(addprefix -I,$(IPATH))
356
362
# BUILD TARGETS
357
363
# ------------------------------------------------------------------------------
358
364
359
- .PHONY : all clean flash dfu-flash sd gdbflash gdb
365
+ .PHONY : all clean flash dfu-flash flash-dfu flash-sd flash-mbr gdbflash gdb
360
366
361
367
# default target to build
362
368
all : $(BUILD ) /$(OUT_NAME ) .out $(BUILD ) /$(OUT_NAME ) _nosd.hex $(BUILD ) /update-$(OUT_NAME ) _nosd.uf2 $(BUILD ) /$(MERGED_FILE ) .hex $(BUILD ) /$(MERGED_FILE ) .zip
@@ -431,7 +437,9 @@ copy-artifact: $(BIN)
431
437
@$(CP ) $(BUILD ) /$(MERGED_FILE ) .hex $(BIN )
432
438
@$(CP ) $(BUILD ) /$(MERGED_FILE ) .zip $(BIN )
433
439
434
- # ------------------- Flash target -------------------
440
+ # --------------------------------------
441
+ # Flash Target
442
+ # --------------------------------------
435
443
436
444
check_defined = \
437
445
$(strip $(foreach 1,$1, \
@@ -440,29 +448,29 @@ __check_defined = \
440
448
$(if $(value $1),, \
441
449
$(error Undefined make flag : $1$(if $2, ($2) )))
442
450
451
+ # erase chip
452
+ erase :
453
+ @echo Erasing flash
454
+ $(call FLASH_ERASE_CMD)
455
+
443
456
# Flash the compiled
444
457
flash : $(BUILD ) /$(OUT_NAME ) _nosd.hex
445
458
@echo Flashing: $(notdir $< )
446
459
$(call FLASH_CMD,$< )
447
460
448
- erase :
449
- @echo Erasing flash
450
- $(call FLASH_ERASE_CMD)
451
-
452
461
# flash SD only
453
- sd :
462
+ flash- sd :
454
463
@echo Flashing: $(SD_HEX )
455
464
$(call FLASH_NOUICR_CMD,$(SD_HEX ) )
456
465
457
466
# flash MBR only
458
- mbr :
467
+ flash- mbr :
459
468
@echo Flashing: $(MBR_HEX )
460
469
$(call FLASH_NOUICR_CMD,$(MBR_HEX ) )
461
470
462
- # ------------------- Flash with NRFUTIL via DFU -------------------
463
-
464
- # dfu using CDC interface
465
- dfu-flash : $(BUILD ) /$(MERGED_FILE ) .zip
471
+ # dfu with adafruit-nrfutil using CDC interface
472
+ dfu-flash : flash-dfu
473
+ flash-dfu : $(BUILD ) /$(MERGED_FILE ) .zip
466
474
@:$(call check_defined, SERIAL, example: SERIAL=/dev/ttyACM0)
467
475
$(NRFUTIL ) --verbose dfu serial --package $< -p $(SERIAL ) -b 115200 --singlebank --touch 1200
468
476
0 commit comments