1 /* 2 * Copyright (c) 2022-2022 Huawei Technologies Co., Ltd. All rights reserved. 3 * 4 * UniProton is licensed under Mulan PSL v2. 5 * You can use this software according to the terms and conditions of the Mulan PSL v2. 6 * You may obtain a copy of Mulan PSL v2 at: 7 * http://license.coscl.org.cn/MulanPSL2 8 * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, 9 * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, 10 * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. 11 * See the Mulan PSL v2 for more details. 12 * Create: 2022-09-21 13 * Description: 文件系统vfs层 14 */ 15 16 #ifndef VFS_PARTITION_H 17 #define VFS_PARTITION_H 18 19 #include "prt_typedef.h" 20 21 #define MAX_PARTITION_NUM 4 22 23 S32 OsGetPartIdByPartName(const char *partName); 24 S32 OsGetDevIdByDevName(const char *dev); 25 struct TagDeviceDesc *OsGetDeviceList(void); 26 27 struct TagDeviceDesc { 28 struct TagFsMap *dFs; /* 文件系统信息 */ 29 struct TagDeviceDesc *dNext; /* 指向下一个挂载节点 */ 30 const char *dPath; /* 挂载节点路径, /system, /usr, etc. */ 31 const char *dDev; /* 设备名, "emmc0p0", "emmc0p1", etc. */ 32 void *dData; /* 挂载节点数据 */ 33 const char *dFsType; /* 文件系统类型 */ 34 S32 *dLengthArray; /* 设备分区长度记录数组 */ 35 uintptr_t *dAddrArray; /* 设备分区地址记录数组 */ 36 S32 dPartNum; /* 设备分区号 */ 37 }; 38 39 #endif /* VFS_PARTITION_H */ 40