summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorRob Clark <robdclark@gmail.com>2017-09-09 13:15:58 -0400
committerTom Rini <trini@konsulko.com>2017-09-15 09:03:13 -0400
commit89191d626793490b579e1d36e7d7a4464a20f9f6 (patch)
treed4e236f4727d390695f844a063619c5c418584dd /include
parent41fa83d1a6cdd8ddfb3fbe332252193ff8fb8b71 (diff)
fat/fs: move ls to generic implementation
Add a generic implementation of 'ls' using opendir/readdir/closedir, and replace fat's custom implementation. Other filesystems should move to the generic implementation after they add opendir/readdir/closedir support. Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Ɓukasz Majewski <lukma@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include')
-rw-r--r--include/fat.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/include/fat.h b/include/fat.h
index b255ce5337..83cd90017e 100644
--- a/include/fat.h
+++ b/include/fat.h
@@ -11,6 +11,7 @@
#define _FAT_H_
#include <asm/byteorder.h>
+#include <fs.h>
#define CONFIG_SUPPORT_VFAT
/* Maximum Long File Name length supported here is 128 UTF-16 code units */
@@ -179,7 +180,6 @@ static inline u32 clust_to_sect(fsdata *fsdata, u32 clust)
}
int file_fat_detectfs(void);
-int file_fat_ls(const char *dir);
int fat_exists(const char *filename);
int fat_size(const char *filename, loff_t *size);
int file_fat_read_at(const char *filename, loff_t pos, void *buffer,
@@ -192,5 +192,8 @@ int file_fat_write(const char *filename, void *buf, loff_t offset, loff_t len,
loff_t *actwrite);
int fat_read_file(const char *filename, void *buf, loff_t offset, loff_t len,
loff_t *actread);
+int fat_opendir(const char *filename, struct fs_dir_stream **dirsp);
+int fat_readdir(struct fs_dir_stream *dirs, struct fs_dirent **dentp);
+void fat_closedir(struct fs_dir_stream *dirs);
void fat_close(void);
#endif /* _FAT_H_ */