Re: [U-Boot] [PATCH V2 4/5] ext4: implement exists() for ext4fs

2014-01-26 Thread Simon Glass
On 23 January 2014 12:56, Stephen Warren swar...@wwwdotorg.org wrote:

 From: Stephen Warren swar...@nvidia.com

 This hooks into the generic file exists support added in an earlier
 patch, and provides an implementation for the ext4 filesystem.

 Signed-off-by: Stephen Warren swar...@nvidia.com


Acked-by: Simon Glass s...@chromium.org
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH V2 4/5] ext4: implement exists() for ext4fs

2014-01-23 Thread Stephen Warren
From: Stephen Warren swar...@nvidia.com

This hooks into the generic file exists support added in an earlier
patch, and provides an implementation for the ext4 filesystem.

Signed-off-by: Stephen Warren swar...@nvidia.com
---
 fs/ext4/ext4fs.c | 8 
 fs/fs.c  | 2 +-
 include/ext4fs.h | 1 +
 3 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/fs/ext4/ext4fs.c b/fs/ext4/ext4fs.c
index 735b2564175b..71ecdd8e9a31 100644
--- a/fs/ext4/ext4fs.c
+++ b/fs/ext4/ext4fs.c
@@ -174,6 +174,14 @@ int ext4fs_ls(const char *dirname)
return 0;
 }
 
+int ext4fs_exists(const char *filename)
+{
+   int file_len;
+
+   file_len = ext4fs_open(filename);
+   return (file_len = 0) ? 0 : 1;
+}
+
 int ext4fs_read(char *buf, unsigned len)
 {
if (ext4fs_root == NULL || ext4fs_file == NULL)
diff --git a/fs/fs.c b/fs/fs.c
index 4f344c6d6d72..3f14d0169b43 100644
--- a/fs/fs.c
+++ b/fs/fs.c
@@ -91,7 +91,7 @@ static struct fstype_info fstypes[] = {
.probe = ext4fs_probe,
.close = ext4fs_close,
.ls = ext4fs_ls,
-   .exists = fs_exists_unsupported,
+   .exists = ext4fs_exists,
.read = ext4_read_file,
.write = fs_write_unsupported,
},
diff --git a/include/ext4fs.h b/include/ext4fs.h
index 242938039662..aacb147de24b 100644
--- a/include/ext4fs.h
+++ b/include/ext4fs.h
@@ -134,6 +134,7 @@ int ext4fs_read(char *buf, unsigned len);
 int ext4fs_mount(unsigned part_length);
 void ext4fs_close(void);
 int ext4fs_ls(const char *dirname);
+int ext4fs_exists(const char *filename);
 void ext4fs_free_node(struct ext2fs_node *node, struct ext2fs_node *currroot);
 int ext4fs_devread(lbaint_t sector, int byte_offset, int byte_len, char *buf);
 void ext4fs_set_blk_dev(block_dev_desc_t *rbdd, disk_partition_t *info);
-- 
1.8.1.5

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot