Open Model Railroad Network (OpenMRN)
Loading...
Searching...
No Matches
TiSPIFFS.hxx
Go to the documentation of this file.
1
34#ifndef _FREERTOS_DRIVERS_SPIFFS_CC3220SF_TISPIFFS_HXX_
35#define _FREERTOS_DRIVERS_SPIFFS_CC3220SF_TISPIFFS_HXX_
36
37#include <cstdint>
38
40
43template<unsigned ERASE_PAGE_SIZE>
44class TiSPIFFS : public SPIFFS
45{
46public:
48 TiSPIFFS(size_t physical_address, size_t size_on_disk,
49 size_t logical_block_size, size_t logical_page_size,
50 size_t max_num_open_descriptors = 16, size_t cache_pages = 8,
51 std::function<void()> post_format_hook = nullptr)
52 : SPIFFS(physical_address, size_on_disk, ERASE_PAGE_SIZE,
53 logical_block_size, logical_page_size,
54 max_num_open_descriptors, cache_pages, post_format_hook)
55 {
56 }
57
60 {
61 unmount();
62 }
63
64private:
69 int32_t flash_read(uint32_t addr, uint32_t size, uint8_t *dst) override;
70
75 int32_t flash_write(uint32_t addr, uint32_t size, uint8_t *src) override;
76
80 int32_t flash_erase(uint32_t addr, uint32_t size) override;
81
83};
84
85#endif // _FREERTOS_DRIVERS_SPIFFS_CC3220SF_TISPIFFS_HXX_
Generic SPIFFS base class.
Definition SPIFFS.hxx:49
void unmount()
Flushes caches and unmounts the filesystem.
Definition SPIFFS.cxx:151
Specialization of Serial SPIFFS driver for TI driverlib devices.
Definition TiSPIFFS.hxx:45
~TiSPIFFS()
Destructor.
Definition TiSPIFFS.hxx:59
TiSPIFFS(size_t physical_address, size_t size_on_disk, size_t logical_block_size, size_t logical_page_size, size_t max_num_open_descriptors=16, size_t cache_pages=8, std::function< void()> post_format_hook=nullptr)
Constructor.
Definition TiSPIFFS.hxx:48
int32_t flash_read(uint32_t addr, uint32_t size, uint8_t *dst) override
SPIFFS callback to read flash, in context.
int32_t flash_erase(uint32_t addr, uint32_t size) override
SPIFFS callback to erase flash, in context.
int32_t flash_write(uint32_t addr, uint32_t size, uint8_t *src) override
SPIFFS callback to write flash, in context.
#define DISALLOW_COPY_AND_ASSIGN(TypeName)
Removes default copy-constructor and assignment added by C++.
Definition macros.h:171