SPIFFS: Selectable configuration of SPIFFS
This commit is contained in:
parent
964a2f850a
commit
5051c5c528
10 changed files with 199 additions and 101 deletions
|
@ -1,7 +1,28 @@
|
|||
# Component makefile for extras/spiffs
|
||||
|
||||
# If spiffs is configured as SINGLETON it must be configured in compile time.
|
||||
SPIFFS_SINGLETON ?= 1
|
||||
|
||||
SPIFFS_BASE_ADDR ?= 0x300000
|
||||
SPIFFS_SIZE ?= 0x100000
|
||||
SPIFFS_LOG_PAGE_SIZE ?= 256
|
||||
SPIFFS_LOG_BLOCK_SIZE ?= 8192
|
||||
|
||||
|
||||
spiffs_CFLAGS += -DSPIFFS_SINGLETON=$(SPIFFS_SINGLETON)
|
||||
ifeq ($(SPIFFS_SINGLETON),1)
|
||||
# Singleton configuration
|
||||
spiffs_CFLAGS += -DSPIFFS_BASE_ADDR=$(SPIFFS_BASE_ADDR)
|
||||
spiffs_CFLAGS += -DSPIFFS_SIZE=$(SPIFFS_SIZE)
|
||||
endif
|
||||
|
||||
spiffs_CFLAGS += -DSPIFFS_LOG_PAGE_SIZE=$(SPIFFS_LOG_PAGE_SIZE)
|
||||
spiffs_CFLAGS += -DSPIFFS_LOG_BLOCK_SIZE=$(SPIFFS_LOG_BLOCK_SIZE)
|
||||
|
||||
# Main program needs SPIFFS definitions because it includes spiffs_config.h
|
||||
PROGRAM_CFLAGS += $(spiffs_CFLAGS)
|
||||
|
||||
spiffs_CFLAGS := $(CFLAGS) $(spiffs_CFLAGS)
|
||||
|
||||
INC_DIRS += $(spiffs_ROOT)
|
||||
INC_DIRS += $(spiffs_ROOT)spiffs/src
|
||||
|
@ -10,11 +31,6 @@ INC_DIRS += $(spiffs_ROOT)spiffs/src
|
|||
spiffs_SRC_DIR = $(spiffs_ROOT)spiffs/src
|
||||
spiffs_SRC_DIR += $(spiffs_ROOT)
|
||||
|
||||
spiffs_CFLAGS = $(CFLAGS)
|
||||
spiffs_CFLAGS += -DSPIFFS_BASE_ADDR=$(SPIFFS_BASE_ADDR)
|
||||
spiffs_CFLAGS += -DSPIFFS_SIZE=$(SPIFFS_SIZE)
|
||||
|
||||
|
||||
# Create an SPIFFS image of specified directory and flash it with
|
||||
# the rest of the firmware.
|
||||
#
|
||||
|
@ -33,20 +49,16 @@ all: $$(SPIFFS_IMAGE)
|
|||
|
||||
clean: clean_spiffs_img clean_mkspiffs
|
||||
|
||||
$$(SPIFFS_IMAGE): $$(MKSPIFFS) $$(SPIFFS_FILE_LIST)
|
||||
$$< $(1) $$@
|
||||
$$(SPIFFS_IMAGE): $$(MKSPIFFS) $$(SPIFFS_FILE_LIST) Makefile
|
||||
$$< -D $(1) -f $$@ -s $(SPIFFS_SIZE) -p $(SPIFFS_LOG_PAGE_SIZE) \
|
||||
-b $(SPIFFS_LOG_BLOCK_SIZE)
|
||||
|
||||
# Rebuild SPIFFS if Makefile is changed, where SPIFF_SIZE is defined
|
||||
$$(spiffs_ROOT)spiffs_config.h: Makefile
|
||||
$$(Q) touch $$@
|
||||
|
||||
$$(MKSPIFFS)_MAKE:
|
||||
$$(MAKE) -C $$(MKSPIFFS_DIR) SPIFFS_SIZE=$(SPIFFS_SIZE)
|
||||
|
||||
# if SPIFFS_SIZE in Makefile is changed rebuild mkspiffs
|
||||
$$(MKSPIFFS): Makefile
|
||||
$$(MAKE) -C $$(MKSPIFFS_DIR) clean
|
||||
$$(MAKE) -C $$(MKSPIFFS_DIR) SPIFFS_SIZE=$(SPIFFS_SIZE)
|
||||
$$(MKSPIFFS):
|
||||
$$(MAKE) -C $$(MKSPIFFS_DIR)
|
||||
|
||||
clean_spiffs_img:
|
||||
$$(Q) rm -f $$(SPIFFS_IMAGE)
|
||||
|
@ -54,11 +66,6 @@ clean_spiffs_img:
|
|||
clean_mkspiffs:
|
||||
$$(Q) $$(MAKE) -C $$(MKSPIFFS_DIR) clean
|
||||
|
||||
# run make for mkspiffs always
|
||||
all: $$(MKSPIFFS)_MAKE
|
||||
|
||||
.PHONY: $$(MKSPIFFS)_MAKE
|
||||
|
||||
SPIFFS_ESPTOOL_ARGS = $(SPIFFS_BASE_ADDR) $$(SPIFFS_IMAGE)
|
||||
endef
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue