The littlefs_mount() function sets the mount point for block devices,
so fname[12] shall be generated after calling it.
Signed-off-by: Lukasz Majewski <lukma@denx.de>
Up till now, the littlefs sample program was only supporting the flash
medium. However, it would be also welcome to be able to test reading and
writing data from littlefs stored on block devices - like SD card.
In this case we do use the block API, to read and write data to it.
To achieve this goal - the CONFIG_APP_LITTLEFS_STORAGE_BLK_SDMMC define
has been introduced.
One can change the disk mount point by defining board specific
CONFIG_SDMMC_VOLUME_NAME.
The test for nucleo board equipped with SD card shall be built with:
west build -p always -b nucleo_h743zi ./zephyr/samples/subsys/fs/littlefs \
-DCONF_FILE=prj_blk.conf
Moreover, the README.rst has been extended to describe running this
test on block devices.
Signed-off-by: Lukasz Majewski <lukma@denx.de>
The littlefs_flash_erase() function shall be called from flash specific
littlefs_mount function. This allows removal of the stub function
when block device support is added.
Signed-off-by: Lukasz Majewski <lukma@denx.de>
This KConfig define (by default defined) is necessary to extend the
littlefs test functionality to support other test scenarios - for
example running it on device with block device (i.e. SD card) backend.
Signed-off-by: Lukasz Majewski <lukma@denx.de>
This commit extends the littlefs test to use binary pattern file.
This file has the 0x55 and 0xAA patterns (to avoid fast wear leveling)
written alternately with special "marks" bytes on each eight position.
Those values are incremented each time the board boots. One can adjust
the size of this file with the TEST_FILE_SIZE define.
Signed-off-by: Lukasz Majewski <lukma@denx.de>
The code responsible for incrementing the in-file value has been moved
to the separate function for better readability and reusage.
Signed-off-by: Lukasz Majewski <lukma@denx.de>
The code for presenting content of the directory, has been moved to the
separate function to be easily reusable.
Signed-off-by: Lukasz Majewski <lukma@denx.de>
Replace calls to printk with LOG_PRINTK to use the logging Zephyr
infrastructure. After this change it would be possible to set the
logging mode (to e.g. reduce the verbosity of output and final size
of the binary).
Signed-off-by: Lukasz Majewski <lukma@denx.de>
Excluded due to conflicts with adafruit_2_8_tft_touch_v2.
Both boards got a touch controller.
Signed-off-by: Konstantinos Papadopoulos <kostas.papadopulos@gmail.com>
The nucleo_h743 allows extra capes to extend its functionality.
In our case it has been extended to use 32MiB SPI-NOR memory
connected to QUADSPI dedicated pins from block2.
Moreover, upper 16MiB of SPI-NOR memory has been used to store
littlefs data to test 4B addressing mode (which may cause problems
when NOR-flash is larger than 16 MiB).
Now the littlefs sample can be used to test this extension:
west build -p always -b nucleo_h743zi ./zephyr/samples/subsys/fs/littlefs
Signed-off-by: Lukasz Majewski <lukma@denx.de>
Enable the flash on RT1170 and RT1160. When booting from the CM7 core,
flash will be started in XIP mode and used as storage as well as boot
memory. When booting from the CM4 core, flash is available as storage
only, and does not run in XIP mode.
This commit was tested with the following samples
-flash_shell
-littlefs
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
With "Incompatible (u)intptr_t type and PRIxPTR definitions",
https://github.com/zephyrproject-rtos/zephyr/issues/37718,
issue resolved the FIXME code is no longer needed.
Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
The formatting options, passed to the printk, caused warnings when
compiling for native_posix_64.
Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
Move to CMake 3.20.0.
At the Toolchain WG it was decided to move to CMake 3.20.0.
The main reason for increasing CMake version is better toolchain
support.
Better toolchain support is added in the following CMake versions:
- armclang, CMake 3.15
- Intel oneAPI, CMake 3.20
- IAR, CMake 3.15 and 3.20
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
Fixes sample execution ending early with error, as it attempted
to mount the LittleFS partition second time, after it has already
been mounted by the auto-mount feature.
Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
Add mimxrt685_evk_cm33 board to the platform_allow list
for the littlefs sample application.
Signed-off-by: Saurabh Jagdhane <saurabh.jagdhane@nxp.com>
Limit adafruit_2_8_tft_touch_v2 sample variant execution to the boards
that have this shield available.
In order to run the test in CI bench, add the following in
twister map.yml file on matching board:
fixtures:
- fixture_shield_adafruit_2_8_tft_touch_v2
For instance:
- connected: true
fixtures:
- fixture_shield_adafruit_2_8_tft_touch_v2
id: 0673FF323535474B43171415
platform: nucleo_f429zi
product: STM32 STLink
runner: openocd
serial: /dev/ttyACM0
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
Adds a new sample configuration to build the fat_fs sample with the
adafruit_2_8_tft_touch_v2 shield and SDMMC SPI driver in CI. It has been
tested with frdm_k64f and mimxrt685_evk_cm33 boards, but should work
with any board that supports Arduino SPI and Arduino GPIO features.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
This patch removes sdhc_api references since such API
does not actually exist. SD card controller drivers
use disc driver interface. Accordingly, the SDHC documentation,
which actually describes how to connect a SD card via SPI
and has little to do with SD host controller (SDHC),
is also moved to disk access page and adapted.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Zephyr already has a directory for storage API relevant headers.
Move disk_access.h header to include/storage where it fits better
structurally.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Remove SPI_[0-8] and SPI_[0-8]_OP_MODES Kconfig symbols as no driver
uses them anymore. We also cleanup board and sample code to remove
use of these symbols.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
The commit adds initializations of fs_dir_t variables in preparation
for fs_opendir function change that will require fs_dir_t object, passed
to the function, to be initialized before first usage.
Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
The commit adds initializations of fs_file_t variables in preparation
for fs_open function change that will require fs_file_t object, passed
to the function, to be initialized before first usage.
Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
Extend the nrf52840dk_nrf52840 sample overlay with a fstab entry for a
littlefs file system on the storage partition.
This eliminates the need for application configuration of the file
system parameters and mount data.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Enables the fat_fs sample on the mm_swiftio board by adding a
board-specific Kconfig overlay, and adding sdhc to the list of
board-supported features.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
The legacy macros were first deprecated in Zephyr v2.3. Now that
Zephyr v2.4 has been released, that makes two releases where these
macros have been deprecated, so it's OK to remove them.
This leaves support for legacy binding syntax in place. Removing that
is left to future work.
We need to update various pieces of documentation related to flash
partitions that never got updated when the new API was introduced.
Consolidate this information in the flash_map.h API reference page,
since that's really where users will run into it. This also gives us
the opportunity to improve this documentation.
Adjust a couple of kconfigfunctions.py and sanitycheck bits to use
non-legacy edtlib APIs.
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
The fs_open has been extended with support for open flags.
Currently supported flags are:
FS_O_READ -- open for read
FS_O_WRITE -- open for write
FS_O_CREATE -- create file if it does not exist
FS_O_APPEND -- move to the end of file before each write
The FAT FS and LittleFS front-ends within the Zephyr has also been
modified to utilize the flags.
Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
In fat_fs example, if we choose a large size SD card to connect with,
the result of memory size calculation coule be wrong due to the missing
brace for manipulating operator priority.
Fixes#26266.
Signed-off-by: Jui-Chou Chung <jui-chou.chung@nordicsemi.no>
This provides a better error message when building with CMake and
forgetting ZEPHYR_BASE or not registering Zephyr in the CMake package
registry. See parent commit for more details (split from parent for
better readability).
Signed-off-by: Marc Herbert <marc.herbert@intel.com>
Convert with a combo of scripts and by hand fixups:
git grep -l DT_FLASH_AREA_.*_ID | \
xargs sed -i -r 's/DT_FLASH_AREA_(.*)_ID/FLASH_AREA_ID(\L\1)/'
git grep -l DT_FLASH_AREA_.*_OFFSET | \
xargs sed -i -r 's/DT_FLASH_AREA_(.*)_OFFSET/FLASH_AREA_OFFSET(\L\1)/'
git grep -l DT_FLASH_AREA_.*_SIZE | \
xargs sed -i -r 's/DT_FLASH_AREA_(.*)_SIZE/FLASH_AREA_SIZE(\L\1)/'
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Updates the fat_fs sample documentation to reflect that it can run on
multiple boards, not just the nrf52840_blip.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Refactors the fat_fs sample yaml to depend on a feature rather than
whitelisting specific boards. This implicitly extends the sample to
mimxrt10{60,64}_evk boards, since they already support the feature.
The only whitelist board remaining is the nrf52840_blip, which requires
a device tree overlay for this sample.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>