1 include makefile_common.mk
4 # Scratchpad files for OTAP
6 # Append a suffix to the scratchpad file names if
7 # the Generic Bootloader Updater Tool is embedded
9 ifneq ($(bl_updater),no)
10 BL_UPDATER_SUFFIX := "_bl_updater"
12 BL_UPDATER_SUFFIX := ""
15 # Extract area IDs from configuration file
16 STACK_AREA_ID := $(shell $(BOOT_CONF) -i $(config_ini) -sa)
17 APP_AREA_ID := $(shell $(BOOT_CONF) -i $(config_ini) -aa)
19 FULL_SCRATCHPAD_NAME := $(APP_NAME)_$(FIRMWARE_NAME)$(BL_UPDATER_SUFFIX)
20 FULL_SCRATCHPAD_BIN := $(BUILDPREFIX_APP)$(FULL_SCRATCHPAD_NAME).otap
21 APP_SCRATCHPAD_NAME := $(APP_NAME)
22 APP_SCRATCHPAD_BIN := $(BUILDPREFIX_APP)$(APP_SCRATCHPAD_NAME).otap
23 STACK_SCRATCHPAD_NAME := $(FIRMWARE_NAME)$(BL_UPDATER_SUFFIX)
24 STACK_SCRATCHPAD_BIN := $(BUILDPREFIX_APP)$(STACK_SCRATCHPAD_NAME).otap
26 # Append a suffix to the scratchpad file names, when modem firmware is included
27 MODEM_FW_SUFFIX := _modem_fw
29 ifneq ($(modemfw_area_id),)
32 MODEM_FW_FULL_PATH := $(BUILDPREFIX_STACK)$(modem_fw)
33 # Name for target to generate a scratchpad with modem + stack + app
34 FULL_SCRATCHPAD_WITH_MODEMFW_NAME := $(APP_NAME)_$(FIRMWARE_NAME)$(MODEM_FW_SUFFIX)$(BL_UPDATER_SUFFIX)
35 FULL_SCRATCHPAD_WITH_MODEMFW_BIN := $(BUILDPREFIX_APP)$(FULL_SCRATCHPAD_WITH_MODEMFW_NAME).otap
36 # Name for target to generate a scratchpad with modem + stack
37 STACK_SCRATCHPAD_WITH_MODEMFW_NAME := $(FIRMWARE_NAME)$(MODEM_FW_SUFFIX)$(BL_UPDATER_SUFFIX)
38 STACK_SCRATCHPAD_WITH_MODEMFW_BIN := $(BUILDPREFIX_APP)$(STACK_SCRATCHPAD_WITH_MODEMFW_NAME).otap
44 all: $(FULL_SCRATCHPAD_BIN) $(APP_SCRATCHPAD_BIN) $(STACK_SCRATCHPAD_BIN) \
45 $(FULL_SCRATCHPAD_WITH_MODEMFW_BIN) $(STACK_SCRATCHPAD_WITH_MODEMFW_BIN)
48 app_only: $(APP_SCRATCHPAD_BIN)
53 define BUILD_FULL_SCRATCHPAD_WITH_MODEMFW
54 @echo "$(COLOR_INFO)Creating Full Scratchpad with modem:$(COLOR_END) $(2) + $(3) + $(4) -> $(1)"
55 $(D)$(SCRAT_GEN) --configfile=$(config_ini) \
57 $(STACK_CONF):$(modemfw_area_id):$(2) \
58 $(STACK_CONF):$(STACK_AREA_ID):$(3) \
59 $(app_major).$(app_minor).$(app_maintenance).$(app_development):$(APP_AREA_ID):$(4)
62 define BUILD_FULL_SCRATCHPAD
63 @echo "$(COLOR_INFO)Creating Full Scratchpad:$(COLOR_END) $(2) + $(3) -> $(1)"
64 $(D)$(SCRAT_GEN) --configfile=$(config_ini) \
66 $(STACK_CONF):$(STACK_AREA_ID):$(2) \
67 $(app_major).$(app_minor).$(app_maintenance).$(app_development):$(APP_AREA_ID):$(3)
70 define BUILD_APP_SCRATCHPAD
71 @echo "$(COLOR_INFO)Creating App Scratchpad:$(COLOR_END) $(2) -> $(1)"
72 $(D)$(SCRAT_GEN) --configfile=$(config_ini) \
74 $(app_major).$(app_minor).$(app_maintenance).$(app_development):$(APP_AREA_ID):$(2)
77 define BUILD_STACK_SCRATCHPAD
78 @echo "$(COLOR_INFO)Creating Stack Scratchpad:$(COLOR_END) $(2) -> $(1)"
79 $(D)$(SCRAT_GEN) --configfile=$(config_ini) \
81 $(STACK_CONF):$(STACK_AREA_ID):$(2)
84 define BUILD_STACK_SCRATCHPAD_WITH_MODEMFW
85 @echo "$(COLOR_INFO)Creating Stack Scratchpad with modem:$(COLOR_END) $(2) + $(3) -> $(1)"
86 $(D)$(SCRAT_GEN) --configfile=$(config_ini) \
88 $(STACK_CONF):$(modemfw_area_id):$(2) \
89 $(STACK_CONF):$(STACK_AREA_ID):$(3)
95 $(STACK_SCRATCHPAD_BIN): $(stack_hex) $(config_ini)
96 $(call BUILD_STACK_SCRATCHPAD,$(STACK_SCRATCHPAD_BIN),$(stack_hex))
98 $(APP_SCRATCHPAD_BIN): $(APP_HEX) $(config_ini)
99 $(call BUILD_APP_SCRATCHPAD,$(APP_SCRATCHPAD_BIN),$(APP_HEX))
101 $(FULL_SCRATCHPAD_BIN): $(stack_hex) $(APP_HEX) $(config_ini)
102 $(call BUILD_FULL_SCRATCHPAD,$(FULL_SCRATCHPAD_BIN),$(stack_hex),$(APP_HEX))
104 ifneq ($(modemfw_area_id),)
105 ifneq ($(radio),none)
106 $(FULL_SCRATCHPAD_WITH_MODEMFW_BIN):
107 $(call BUILD_FULL_SCRATCHPAD_WITH_MODEMFW,$(FULL_SCRATCHPAD_WITH_MODEMFW_BIN),$(MODEM_FW_FULL_PATH),$(stack_hex),$(APP_HEX))
109 $(STACK_SCRATCHPAD_WITH_MODEMFW_BIN):
110 $(call BUILD_STACK_SCRATCHPAD_WITH_MODEMFW,$(STACK_SCRATCHPAD_WITH_MODEMFW_BIN),$(MODEM_FW_FULL_PATH),$(stack_hex))