Commit Graph

20 Commits

Author SHA1 Message Date
Anas Nashif 656f4dfdac cleanup: include/: move fs.h to fs/fs.h
move fs.h to fs/fs.h and
create a shim for backward-compatibility.

No functional changes to the headers.
A warning in the shim can be controlled with CONFIG_COMPAT_INCLUDES.

Related to #16539

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-06-27 22:55:49 -04:00
Jan Van Winkel 3815ae6f7f fs: Added API to read mount point
Added API the read mount point names

Signed-off-by: Jan Van Winkel <jan.van_winkel@dxplore.eu>
2019-06-11 08:31:54 -04:00
Anas Nashif 437cbbeb3b doc: consolidated filesystem API reference
Fixed doxygen groups for filesystems and created one stop reference for
filesystems in the docs.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-02-05 07:04:40 -05:00
Anas Nashif 05a8537c03 doc: group file system/storage APIs
Group NVS, Filesystems and Settings under "File System and Storage" in
doxygen.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-12-10 20:38:09 -05:00
Flavio Ceolin 67ca176754 headers: Fix headers across the project
Any word started with underscore followed by and uppercase letter or a
second underscore is a reserved word according with C99.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
2018-09-17 15:49:26 -04:00
Ramakrishna Pallala eb0aaca64d lib: posix: Add Posix Style File System API support
Add IEEE 1003.1 Posix Style file system API support.
These API's will internally use corresponding Zephyr
File System API's.

Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
2018-05-18 13:32:36 +03:00
Ramakrishna Pallala b99ff6f9e1 subsys: fs: Extend storage_dev type beyond 'struct device'
Extend storage_dev type beyond 'struct device' by changing
the variable type to void pointer. This will be needed if we
have additional transactional layers b/w filesystem and the
actual backend device.

Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
2018-05-08 08:53:01 -04:00
David B. Kinder 3314c3675f doc: misspellings in public API doxygen comments
occasional spelling-check pass found some misspellings

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-04-05 19:16:24 -04:00
Ramakrishna Pallala 25302b1980 subsys: fs: Add Virtual File system Switch (VFS) support
Add support for Virtual File system Switch (VFS) by
introducing mount point concept to Zephyr. This allows
the applications to mount multiple file systems at
different mount points (ex: "/fatfs" and "/nffs"). The
mount point structure contains all the necessary info
required to instantiate, mount and operate on file system.

Decouple applications from directly accessing individual
file systems API's or internal functions by introducing
file system registration mechanism in VFS.

Move the file system defination and mount responsibility
to application so that application can decide which file system
to use and where to mount.

Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
2018-03-10 21:38:04 -05:00
David B. Kinder 621ac8f84b doc: add missing API content
Some API material (from doxygen comments) wasn't included in the
generated documentation because there was no doxygengroup Sphinx
directive to display them. This PR add content into appropriate places
in existing documentation (e.g., Bluetooth Cryptography APIs into the
Bluetooth API doc) and creates two new collections for Display and
Miscellaneous APIs.

Comments added to the .rst files to mention doxygengroups that are
intentionally excluded (because they're organizational groups containing
subgroups that are included).

Sorted the Bluetooth API list, mostly.

Fixed a couple doxygen group titles defined in the include files, and
added a few patterns to filter new "expected" errors from the document
generation process.

Legacy and deprecated APIs remain left out, as intended:

   http_legacy  (net/http_legacy.h)
   spi_interface_legacy  (spi_legacy.h)
   zoap  (net/zoap.h)

fixes: Issue #5051

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-12-01 08:58:56 -05:00
Anas Nashif 7b0f3512b3 fs: api: add doxygen group for filesystem
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-11-22 13:27:01 -05:00
David B. Kinder ac74d8b652 license: Replace Apache boilerplate with SPDX tag
Replace the existing Apache 2.0 boilerplate header with an SPDX tag
throughout the zephyr code tree. This patch was generated via a
script run over the master branch.

Also updated doc/porting/application.rst that had a dependency on
line numbers in a literal include.

Manually updated subsys/logging/sys_log.c that had a malformed
header in the original file.  Also cleanup several cases that already
had a SPDX tag and we either got a duplicate or missed updating.

Jira: ZEP-1457

Change-Id: I6131a1d4ee0e58f5b938300c2d2fc77d2e69572c
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2017-01-19 03:50:58 +00:00
Johan Hedberg b108d02eba fs: Make API naming adhere to the appropriate namespace
The namespace allocated for the filesystem API is fs_* and FS_*. That
means all symbols and defines should adhere to it.

Jira: ZEP-1155

Change-Id: I422310448b7c7c347f621aea6d7b1d97ef25c94d
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-10-31 08:08:10 +02:00
Ramesh Thomas d31b3fe3f7 fs: Fixes some type incompatibilities flagged by llvm
Change-Id: I37df470ace779b9654f8b10e50ec83d9f629c965
Signed-off-by: Ramesh Thomas <ramesh.thomas@intel.com>
2016-10-04 00:19:22 -07:00
Ramesh Thomas 97d8fd1748 fs: Add file system API to flush cache of an open file
This API flushes the cached data of an open file to the
storage media. This can be called after writes to avoid data
loss if power is removed unexpectedly.

Jira: ZEP-767
Change-Id: I0f99f2f34126aa8e6a43f69c7a1b6d903937de11
Signed-off-by: Ramesh Thomas <ramesh.thomas@intel.com>
2016-09-23 00:06:32 +00:00
Ramesh Thomas 524004d54b fs: Adds file system API to get volume statistics
Adds API to return volume statistics. This is similar to
fstatvfs() POSIX function but limited to total size, free space,
allocation unit size and optimal transfer block size.

Jira: ZEP-636
Change-Id: Ie9e7367b9164277875860c2d0e8de883b2fca07a
Signed-off-by: Ramesh Thomas <ramesh.thomas@intel.com>
2016-09-23 00:06:32 +00:00
Ramesh Thomas 211db5352d fs: Adds file system API to grow or shrink a file
Adds fs_truncate() function which can be used to change the size
of a file. The name is counter intuitive but that is how the POSIX
version is named. It shrinks as well as grows a file.

Jira: ZEP-635 ZEP-622
Change-Id: If7b8cad17e1b80479a529c60a32c12fb134cd456
Signed-off-by: Ramesh Thomas <ramesh.thomas@intel.com>
2016-09-23 00:06:31 +00:00
Ramesh Thomas 5013d521d3 doc: Fixes a typo in the file system documentation
SEE_CUR -> SEEK_CUR

Change-Id: I62bba618bb942489e01e66e01d5f4806122a4e21
Signed-off-by: Ramesh Thomas <ramesh.thomas@intel.com>
2016-08-05 23:14:25 +00:00
Ramesh Thomas 0e4396917f doc: Add file system documentation
Adds documentation of file system APIs

Jira: ZEP-643
Change-Id: Ieac14a3dcf4913aeba6da2d3dc718eaa09b6cd88
Signed-off-by: Ramesh Thomas <ramesh.thomas@intel.com>
2016-08-05 20:37:52 +00:00
Ramesh Thomas c9ec4ee452 fs: Add Zephyr File System API
Adds the header files containing Zephyr File System API
descriptions and interfaces.

Origin: Original
Jira: ZEP-228 ZEP-480
Change-Id: I76a000187a133df7a82329af78aec9ea6511915c
Signed-off-by: Ramesh Thomas <ramesh.thomas@intel.com>
2016-08-01 16:47:33 -07:00