diff --git a/components/dfs/filesystems/elmfat/dfs_elm.c b/components/dfs/filesystems/elmfat/dfs_elm.c index 4495bd9b3e6d45919611161f2995f326777dbe58..3658a5dc80e82daeba3093b4067231ad1daa7cb2 100644 --- a/components/dfs/filesystems/elmfat/dfs_elm.c +++ b/components/dfs/filesystems/elmfat/dfs_elm.c @@ -25,6 +25,7 @@ * 2012-07-26 aozima implement ff_memalloc and ff_memfree. * 2012-12-19 Bernard fixed the O_APPEND and lseek issue. * 2013-03-01 aozima fixed the stat(st_mtime) issue. + * 2014-01-26 Bernard Check the sector size before mount. */ #include @@ -122,9 +123,9 @@ int dfs_elm_mount(struct dfs_filesystem *fs, unsigned long rwflag, const void *d /* check sector size */ if (rt_device_control(fs->dev_id, RT_DEVICE_CTRL_BLK_GETGEOME, &geometry) == RT_EOK) { - if (geometry.block_size > _MAX_SS) + if (geometry.bytes_per_sector > _MAX_SS) { - rt_kprintf("Block size of device is great than sector size of FAT.\n"); + rt_kprintf("The sector size of device is greater than the sector size of FAT.\n"); return -DFS_STATUS_EINVAL; } }