X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=lwext4%2Fext4_config.h;h=59f1a81afc61a6a3fd633659a4109794c7f72166;hb=e0099ab67ad94cce497c1a04da78511344dafc31;hp=5b0af0c2c62bb228c6d475027f088d277a8d4b84;hpb=d409b47eebae48e79ff24c54f7eea4b2a3e81b61;p=lwext4.git diff --git a/lwext4/ext4_config.h b/lwext4/ext4_config.h index 5b0af0c..59f1a81 100644 --- a/lwext4/ext4_config.h +++ b/lwext4/ext4_config.h @@ -54,42 +54,28 @@ /*****************************************************************************/ #if CONFIG_EXT_FEATURE_SET_LVL == F_SET_EXT2 -#define CONFIG_DIR_INDEX_ENABLE 0 -#define CONFIG_EXTENT_ENABLE 0 +/*Superblock features flag EXT2*/ +#define CONFIG_SUPPORTED_FCOM EXT2_SUPPORTED_FCOM +#define CONFIG_SUPPORTED_FINCOM (EXT2_SUPPORTED_FINCOM | EXT_FINCOM_IGNORED) +#define CONFIG_SUPPORTED_FRO_COM EXT2_SUPPORTED_FRO_COM -/*Superblock features flag*/ -#define CONFIG_FEATURE_COMPAT_SUPP EXT2_FEATURE_COMPAT_SUPP - -#define CONFIG_FEATURE_INCOMPAT_SUPP \ - (EXT2_FEATURE_INCOMPAT_SUPP | FEATURE_INCOMPAT_IGNORED) - -#define CONFIG_FEATURE_RO_COMPAT_SUPP EXT2_FEATURE_RO_COMPAT_SUPP #elif CONFIG_EXT_FEATURE_SET_LVL == F_SET_EXT3 -#define CONFIG_DIR_INDEX_ENABLE 1 -#define CONFIG_EXTENT_ENABLE 0 - -/*Superblock features flag*/ -#define CONFIG_FEATURE_COMPAT_SUPP EXT3_FEATURE_COMPAT_SUPP - -#define CONFIG_FEATURE_INCOMPAT_SUPP \ - (EXT3_FEATURE_INCOMPAT_SUPP | FEATURE_INCOMPAT_IGNORED) - -#define CONFIG_FEATURE_RO_COMPAT_SUPP EXT3_FEATURE_RO_COMPAT_SUPP +/*Superblock features flag EXT3*/ +#define CONFIG_SUPPORTED_FCOM EXT3_SUPPORTED_FCOM +#define CONFIG_SUPPORTED_FINCOM (EXT3_SUPPORTED_FINCOM | EXT_FINCOM_IGNORED) +#define CONFIG_SUPPORTED_FRO_COM EXT3_SUPPORTED_FRO_COM #elif CONFIG_EXT_FEATURE_SET_LVL == F_SET_EXT4 -#define CONFIG_DIR_INDEX_ENABLE 1 -#define CONFIG_EXTENT_ENABLE 1 - -/*Superblock features flag*/ -#define CONFIG_FEATURE_COMPAT_SUPP EXT4_FEATURE_COMPAT_SUPP - -#define CONFIG_FEATURE_INCOMPAT_SUPP \ - (EXT4_FEATURE_INCOMPAT_SUPP | FEATURE_INCOMPAT_IGNORED) - -#define CONFIG_FEATURE_RO_COMPAT_SUPP EXT4_FEATURE_RO_COMPAT_SUPP +/*Superblock features flag EXT4*/ +#define CONFIG_SUPPORTED_FCOM EXT4_SUPPORTED_FCOM +#define CONFIG_SUPPORTED_FINCOM (EXT4_SUPPORTED_FINCOM | EXT_FINCOM_IGNORED) +#define CONFIG_SUPPORTED_FRO_COM EXT4_SUPPORTED_FRO_COM #else #define "Unsupported CONFIG_EXT_FEATURE_SET_LVL" #endif +#define CONFIG_DIR_INDEX_ENABLE (CONFIG_SUPPORTED_FCOM & EXT4_FCOM_DIR_INDEX) +#define CONFIG_EXTENT_ENABLE (CONFIG_SUPPORTED_FINCOM & EXT4_FINCOM_EXTENTS) + /*****************************************************************************/ /**@brief Enable directory indexing comb sort*/ @@ -114,7 +100,7 @@ /**@brief Include assert codes from ext4_debug or standard library.*/ #ifndef CONFIG_HAVE_OWN_ASSERT -#define CONFIG_HAVE_OWN_ASSERT 0 +#define CONFIG_HAVE_OWN_ASSERT 1 #endif /**@brief Statistics of block device*/ @@ -142,6 +128,22 @@ #define CONFIG_HAVE_OWN_OFLAGS 0 #endif +/**@brief Use full extent implemrntation*/ +#ifndef CONFIG_EXTENT_FULL +#define CONFIG_EXTENT_FULL 1 +#endif + +#ifdef __GNUC__ +#ifndef __unused +#define __unused __attribute__ ((__unused__)) +#endif +#endif + +#ifndef ext4_offsetof +#define ext4_offsetof(type, field) \ + ((long)(&(((type *)0)->field))) +#endif + #endif /* EXT4_CONFIG_H_ */ /**