fs: Adds the glue layer for the Fat FS module

Adds the glue layer to interface the Fat FS module with Zephyr
file system API.

Origin: Original
Jira: ZEP-228 ZEP-483
Change-Id: I878fdad8ecaf46992d6163e24a9b0b633f49154f
Signed-off-by: Ramesh Thomas <ramesh.thomas@intel.com>
This commit is contained in:
Ramesh Thomas 2016-07-29 02:24:37 -07:00
commit e89c739e6f
3 changed files with 277 additions and 0 deletions

41
include/fs/fat_fs.h Normal file
View file

@ -0,0 +1,41 @@
/*
* Copyright (c) 2016 Intel Corporation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef _FAT_FS_H_
#define _FAT_FS_H_
#include <sys/types.h>
#include <ff.h>
#ifdef __cplusplus
extern "C" {
#endif
ZFILE_DEFINE(FIL fp);
ZDIR_DEFINE(DIR dp);
#define MAX_FILE_NAME 12 /* Uses 8.3 SFN */
static inline off_t fs_tell(struct _zfile_object *zfp)
{
return f_tell(&zfp->fp);
}
#ifdef __cplusplus
}
#endif
#endif /* _FAT_FS_H_ */