grblHAL core  20260922
vfs.c File Reference
#include <string.h>
#include <stdlib.h>
#include <errno.h>
#include "hal.h"
#include "vfs.h"

Typedefs

typedef void(* vfs_ptr) (void)
 

Functions

FLASHMEM char * vfs_fixpath (char *path)
 
FLASHMEM vfs_file_tvfs_open (const char *filename, const char *mode)
 
FLASHMEM void vfs_close (vfs_file_t *file)
 
FLASHMEM size_t vfs_read (void *buffer, size_t size, size_t count, vfs_file_t *file)
 
FLASHMEM size_t vfs_write (const void *buffer, size_t size, size_t count, vfs_file_t *file)
 
FLASHMEM int vfs_puts (const char *s, vfs_file_t *file)
 
FLASHMEM size_t vfs_tell (vfs_file_t *file)
 
FLASHMEM int vfs_seek (vfs_file_t *file, size_t offset)
 
FLASHMEM int vfs_truncate (vfs_file_t *file, size_t offset)
 
FLASHMEM bool vfs_eof (vfs_file_t *file)
 
FLASHMEM int vfs_rename (const char *from, const char *to)
 
FLASHMEM int vfs_unlink (const char *filename)
 
FLASHMEM int vfs_mkdir (const char *path)
 
FLASHMEM int vfs_rmdir (const char *path)
 
FLASHMEM int vfs_chdir (const char *path)
 
FLASHMEM vfs_dir_tvfs_opendir (const char *path)
 
FLASHMEM vfs_dirent_tvfs_readdir (vfs_dir_t *dir)
 
FLASHMEM void vfs_closedir (vfs_dir_t *dir)
 
FLASHMEM char * vfs_getcwd (char *buf, size_t len)
 
FLASHMEM int vfs_chmod (const char *filename, vfs_st_mode_t attr, vfs_st_mode_t mask)
 
FLASHMEM int vfs_stat (const char *filename, vfs_stat_t *st)
 
FLASHMEM int vfs_utime (const char *filename, struct tm *modified)
 
FLASHMEM vfs_free_tvfs_fgetfree (const char *path)
 
FLASHMEM bool vfs_mount (const void *device, const char *path, const vfs_t *fs, vfs_st_mode_t mode)
 
FLASHMEM bool vfs_unmount (const void *device, const char *path)
 
FLASHMEM vfs_drive_tvfs_get_drive (const char *path)
 
FLASHMEM vfs_drives_tvfs_drives_open (void)
 
FLASHMEM vfs_drive_tvfs_drives_read (vfs_drives_t *handle, bool add_hidden)
 
FLASHMEM void vfs_drives_close (vfs_drives_t *handle)
 
FLASHMEM vfs_free_tvfs_drive_getfree (vfs_drive_t *drive)
 
FLASHMEM int vfs_drive_format (vfs_drive_t *drive)
 
FLASHMEM bool vfs_mount_set_mode (const char *path, vfs_st_mode_t mode)
 
FLASHMEM const char * vfs_locate_file (const char *filename)
 

Variables

volatile int vfs_errno = 0
 
vfs_events_t vfs = {0}
 

Typedef Documentation

◆ vfs_ptr

typedef void(* vfs_ptr) (void)

Function Documentation

◆ vfs_chdir()

FLASHMEM int vfs_chdir ( const char *  path)

◆ vfs_chmod()

FLASHMEM int vfs_chmod ( const char *  filename,
vfs_st_mode_t  attr,
vfs_st_mode_t  mask 
)

◆ vfs_close()

FLASHMEM void vfs_close ( vfs_file_t file)

◆ vfs_closedir()

FLASHMEM void vfs_closedir ( vfs_dir_t dir)

◆ vfs_drive_format()

FLASHMEM int vfs_drive_format ( vfs_drive_t drive)

◆ vfs_drive_getfree()

FLASHMEM vfs_free_t* vfs_drive_getfree ( vfs_drive_t drive)

◆ vfs_drives_close()

FLASHMEM void vfs_drives_close ( vfs_drives_t handle)

◆ vfs_drives_open()

FLASHMEM vfs_drives_t* vfs_drives_open ( void  )

◆ vfs_drives_read()

FLASHMEM vfs_drive_t* vfs_drives_read ( vfs_drives_t handle,
bool  add_hidden 
)

◆ vfs_eof()

FLASHMEM bool vfs_eof ( vfs_file_t file)

◆ vfs_fgetfree()

FLASHMEM vfs_free_t* vfs_fgetfree ( const char *  path)

◆ vfs_fixpath()

FLASHMEM char* vfs_fixpath ( char *  path)

◆ vfs_get_drive()

FLASHMEM vfs_drive_t* vfs_get_drive ( const char *  path)

◆ vfs_getcwd()

FLASHMEM char* vfs_getcwd ( char *  buf,
size_t  len 
)

◆ vfs_locate_file()

FLASHMEM const char* vfs_locate_file ( const char *  filename)

◆ vfs_mkdir()

FLASHMEM int vfs_mkdir ( const char *  path)

◆ vfs_mount()

FLASHMEM bool vfs_mount ( const void *  device,
const char *  path,
const vfs_t fs,
vfs_st_mode_t  mode 
)

◆ vfs_mount_set_mode()

FLASHMEM bool vfs_mount_set_mode ( const char *  path,
vfs_st_mode_t  mode 
)

◆ vfs_open()

FLASHMEM vfs_file_t* vfs_open ( const char *  filename,
const char *  mode 
)

◆ vfs_opendir()

FLASHMEM vfs_dir_t* vfs_opendir ( const char *  path)

◆ vfs_puts()

FLASHMEM int vfs_puts ( const char *  s,
vfs_file_t file 
)

◆ vfs_read()

FLASHMEM size_t vfs_read ( void *  buffer,
size_t  size,
size_t  count,
vfs_file_t file 
)

◆ vfs_readdir()

FLASHMEM vfs_dirent_t* vfs_readdir ( vfs_dir_t dir)

◆ vfs_rename()

FLASHMEM int vfs_rename ( const char *  from,
const char *  to 
)

◆ vfs_rmdir()

FLASHMEM int vfs_rmdir ( const char *  path)

◆ vfs_seek()

FLASHMEM int vfs_seek ( vfs_file_t file,
size_t  offset 
)

◆ vfs_stat()

FLASHMEM int vfs_stat ( const char *  filename,
vfs_stat_t st 
)

◆ vfs_tell()

FLASHMEM size_t vfs_tell ( vfs_file_t file)

◆ vfs_truncate()

FLASHMEM int vfs_truncate ( vfs_file_t file,
size_t  offset 
)

◆ vfs_unlink()

FLASHMEM int vfs_unlink ( const char *  filename)

◆ vfs_unmount()

FLASHMEM bool vfs_unmount ( const void *  device,
const char *  path 
)

◆ vfs_utime()

FLASHMEM int vfs_utime ( const char *  filename,
struct tm modified 
)

◆ vfs_write()

FLASHMEM size_t vfs_write ( const void *  buffer,
size_t  size,
size_t  count,
vfs_file_t file 
)

Variable Documentation

◆ embedded

uint8_t embedded

◆ littlefs

uint8_t littlefs

◆ root

static vfs_mount_t root
Initial value:
= {
.path = "/",
.vfs = &fs_null,
.mode = { .directory = true, .read_only = true, .hidden = true },
.next = NULL
}

◆ unused

uint8_t unused

◆ vfs

vfs_events_t vfs = {0}

◆ vfs_errno

volatile int vfs_errno = 0