|
|
|
#Makefile with the options specific to the build of a non-upgradable firmware with
|
|
|
|
#the espfs combined into the flash binary.
|
|
|
|
|
|
|
|
# linker script used for the linker step
|
|
|
|
LD_SCRIPT = eagle.app.v6.ld
|
|
|
|
# Extra script to tell the linker the correct irom0 memory available
|
|
|
|
EXTRA_LD_SCRIPTS = ldscript_memspecific.ld
|
|
|
|
|
|
|
|
TARGET_OUT := $(addprefix $(BUILD_BASE)/,$(TARGET).out)
|
|
|
|
|
|
|
|
.PHONY: ldscript_memspecific.ld
|
|
|
|
|
|
|
|
BLANKPOS="$$(printf "0x%X" $$(($(ESP_SPI_FLASH_SIZE_K)*1024-0x2000)))"
|
|
|
|
INITDATAPOS="$$(printf "0x%X" $$(($(ESP_SPI_FLASH_SIZE_K)*1024-0x4000)))"
|
|
|
|
|
|
|
|
ldscript_memspecific.ld:
|
|
|
|
$(vecho) "GEN $@"
|
|
|
|
$(Q) echo "MEMORY { irom0_0_seg : org = 0x40240000, len = "$$(printf "0x%X" $$(($(ESP_SPI_FLASH_SIZE_K)*1024-0x4000)))" }"> ldscript_memspecific.ld
|
|
|
|
|
|
|
|
|
|
|
|
$(TARGET_OUT): $(APP_AR) $(EXTRA_LD_SCRIPTS)
|
|
|
|
$(vecho) "LD $@"
|
|
|
|
$(Q) $(LD) -Llibesphttpd -L$(SDK_LIBDIR) $(LD_SCRIPT) $(EXTRA_LD_SCRIPTS) $(LDFLAGS) -Wl,--start-group $(LIBS) $(APP_AR) -Wl,--end-group -o $@
|
|
|
|
|
|
|
|
|
|
|
|
$(FW_BASE): $(TARGET_OUT)
|
|
|
|
$(vecho) "FW $@"
|
|
|
|
$(Q) mkdir -p $@
|
|
|
|
$(Q) $(ESPTOOL) elf2image $(TARGET_OUT) --output $@/
|
|
|
|
|
|
|
|
flash: $(TARGET_OUT) $(FW_BASE)
|
|
|
|
$(Q) $(ESPTOOL) $(ESPTOOL_OPTS) write_flash $(ESPTOOL_FLASHDEF) 0x00000 $(FW_BASE)/0x00000.bin 0x40000 $(FW_BASE)/0x40000.bin
|
|
|
|
|
|
|
|
blankflash:
|
|
|
|
$(Q) $(ESPTOOL) $(ESPTOOL_OPTS) write_flash $(ESPTOOL_FLASHDEF) $(BLANKPOS) $(SDK_BASE)/bin/blank.bin $(INITDATAPOS) $(SDK_BASE)/bin/esp_init_data_default.bin
|
|
|
|
|