[T106][ZXW-22]7520V3SCV2.01.01.02P42U09_VEC_V0.8_AP_VEC origin source commit

Change-Id: Ic6e05d89ecd62fc34f82b23dcf306c93764aec4b
diff --git a/cp/ps/plat/inc/oss/oss_fs.h b/cp/ps/plat/inc/oss/oss_fs.h
new file mode 100644
index 0000000..2ed7e13
--- /dev/null
+++ b/cp/ps/plat/inc/oss/oss_fs.h
@@ -0,0 +1,147 @@
+/**************************************************************************

+*

+*                  Copyright (c) 2012 ZTE Corporation.

+*

+***************************************************************************

+* Ä£ ¿é Ãû : P98C_OSS

+* ÎÄ ¼þ Ãû : oss_fs.h

+* Ïà¹ØÎļþ : 

+* ʵÏÖ¹¦ÄÜ : Îļþϵͳ

+* ×÷    Õß : chenxingfang

+* °æ    ±¾ : V1.0

+* Íê³ÉÈÕÆÚ : 2012-08-10

+* ÆäËü˵Ã÷ : 

+**************************************************************************/

+

+/**************************************************************************

+* Ð޸ļǼ

+**************************************************************************/

+#ifndef _OSS_FS_H

+#define _OSS_FS_H

+

+/**************************************************************************

+* #includeÇø

+**************************************************************************/

+#ifdef __cplusplus

+extern "C"

+{

+#endif

+

+/**************************************************************************

+* ³£Á¿¶¨ÒåÇø

+**************************************************************************/

+/* ¶ÁдλÖà */

+#define ZOSS_SEEK_SET               0x0           /* set to offset                            */

+#define ZOSS_SEEK_CUR               0x1           /* set to current position plus offset      */

+#define ZOSS_SEEK_END               0x2           /* set to the size of the file plus offset  */

+

+/* ÅäÖòÎÊý */

+#define ZOSS_MAX_FILENAME_LEN       255         /* Îļþ¡¢Ä¿Â¼Ãû×î´ó³¤¶È, °üº¬Â·¾¶   */

+

+/* Îļþ¡¢Ä¿Â¼ÊôÐÔ£¬°Ë½øÖƱíʾ */

+#define ZOSS_ATTR_IFDIR             040000      /* Ŀ¼λ                       */

+    

+#define ZOSS_ATTR_RD_USR            0400        /* user¶Á                       */

+#define ZOSS_ATTR_WR_USR            0200        /* userд                       */

+#define ZOSS_ATTR_EX_USR            0100        /* userÖ´ÐÐ                     */

+    

+#define ZOSS_ATTR_RD_GRP            0040        /* group¶Á                      */

+#define ZOSS_ATTR_WR_GRP            0020        /* groupд                      */

+#define ZOSS_ATTR_EX_GRP            0010        /* groupÖ´ÐÐ                    */

+    

+#define ZOSS_ATTR_RD_OTH            0004        /* other¶Á                      */

+#define ZOSS_ATTR_WR_OTH            0002        /* otherд                      */

+#define ZOSS_ATTR_EX_OTH            0001        /* otherÖ´ÐÐ                    */

+    

+#define ZOSS_ATTR_RWX_USR           0700        /* userµÄ¶ÁдִÐÐ               */

+#define ZOSS_ATTR_RWX_GRP           0070        /* groupµÄ¶ÁдִÐÐ              */

+#define ZOSS_ATTR_RWX_OTH           0007        /* otherµÄ¶ÁдִÐÐ              */

+    

+#define ZOSS_ATTR_RD_ALL            0444        /* user,group,otherµÄ¶Á         */

+#define ZOSS_ATTR_WR_ALL            0222        /* user,group,otherµÄд         */

+#define ZOSS_ATTR_EX_ALL            0111        /* user£¬group,otherµÄÖ´ÐÐ      */

+    

+#define ZOSS_ATTR_RWX_ALL           0777        /* user£¬group,otherµÄ¶ÁдִÐÐ  */

+

+#ifdef _OS_LINUX

+# define FILE   int

+#endif

+

+/**************************************************************************

+* Êý¾Ý½á¹¹¶¨ÒåÇø

+**************************************************************************/

+typedef struct  

+{

+#if defined(_OS_TOS) && defined(CYGPKG_FILEIO_DIRENT_DTYPE)

+    mode_t  d_type;

+#endif

+

+    CHAR    d_name[ZOSS_MAX_FILENAME_LEN + 1];

+}ZOSS_S_DIRENT;

+

+typedef struct  

+{

+    UINT32  st_dev;     /* Device ID number             */

+    UINT32  st_ino;     /* File serial number           */

+    mode_t  st_mode;    /* Mode of file                 */

+    UINT16  st_nlink;   /* Number of hard links to file */

+    UINT32  st_uid;     /* User ID of file              */

+    UINT32  st_gid;     /* Group ID of file             */

+    UINT32  st_rdev;    /* Device ID if special file    */

+    UINT32  st_size;    /* File size in bytes           */

+    time_t  st_atime;   /* Time of last access          */

+    time_t  st_mtime;   /* Time of last modification    */

+    time_t  st_ctime;   /* Time of last status change   */

+}ZOSS_S_STAT;

+

+/**************************************************************************

+* º¯ÊýÉùÃ÷Çø

+**************************************************************************/

+UINT32  zOss_FCreate(const CHAR *filename);

+FILE   *zOss_FOpen(const CHAR *filename, const CHAR *mode);

+UINT32  zOss_FSeek(FILE *stream, SINT32 offset, SINT32 whence);

+SSIZE_T zOss_FRead(VOID *data, SSIZE_T size, SSIZE_T count, FILE *stream);

+SSIZE_T zOss_FWrite(const VOID *data, SSIZE_T size, SSIZE_T count, FILE *stream);

+UINT32  zOss_FEof(FILE *stream);

+UINT32  zOss_FError(FILE *stream);

+UINT32  zOss_FTruncate(FILE *stream, UINT32 size);

+UINT32  zOss_FFlush(FILE *stream);

+UINT32  zOss_FTell(FILE *stream);

+UINT32  zOss_FClose(FILE *stream);

+UINT32  zOss_FRename(const CHAR *old_filename, const CHAR *new_filename);

+UINT32  zOss_FDelete(const CHAR *filename);

+UINT32  zOss_FLength(FILE *stream);

+BOOL    zOss_FExist(const CHAR *filename);

+UINT32  zOss_Mkdir(const CHAR *dirname);

+UINT32  zOss_Rmdir(const CHAR *dirname);

+UINT32  zOss_Rndir(const CHAR *old_dirname, const CHAR *new_dirname);

+UINT32  zOss_GetPwd(CHAR *dirname, UINT32 dirnamelen);

+UINT32  zOss_ChDir(CHAR *dirname);

+BOOL    zOss_IsDir(const CHAR *dirname);

+UINT32  zOss_OpenDir(const CHAR *dirname, VOID **dir_entry_ptr);

+UINT32  zOss_CloseDir(VOID **dir_entry_ptr);

+UINT32  zOss_ReadDir(VOID **dir_entry_ptr, ZOSS_S_DIRENT *dir_item_ptr);

+VOID    zOss_Rewinddir(VOID *dir_entry_ptr);

+UINT32  zOss_ChMod(const CHAR *pathname, mode_t attrs);

+UINT32  zOss_Stat(const CHAR *pathname, ZOSS_S_STAT *buf);

+UINT32  zOss_MountDisk(CHAR diskname);

+UINT32  zOss_UnMountDisk(CHAR diskname);

+UINT32  zOss_UnMountAllDisk(VOID);

+UINT32  zOss_GetDiskFreeSpace(CHAR diskname, UINT64 *space);

+UINT32  zOss_GetDiskCapacity(CHAR diskname, UINT64 *space);

+UINT32  zOss_GetAllDynamicDisk(CHAR *disk, UINT32 size);

+UINT32  zOss_SyncFS(VOID);

+UINT32  zOss_MountDynamicDisk(CHAR *pWinDir, CHAR *pLinuxDir, CHAR *pDevName, char *pFsName);

+UINT32  zOss_UnMountDynamicDisk(CHAR *pWinDir);

+UINT32  zOss_FsMount(VOID);

+

+/**************************************************************************

+* È«¾Ö±äÁ¿ÉùÃ÷Çø

+**************************************************************************/

+

+#ifdef __cplusplus

+}

+#endif

+

+#endif  /* _OSS_FS_H    */

+