11 #ifndef XTF_X86_CONFIG_H 12 #define XTF_X86_CONFIG_H 14 #define XTF_VIRT_START (1 << 20) 18 #if defined(CONFIG_ENV_pv64) 21 #define CONFIG_64BIT 1 22 #define CONFIG_PAGING_LEVELS 4 23 #define ENVIRONMENT_DESCRIPTION "PV 64bit (Long mode 4 levels)" 25 #undef CONFIG_ENV_pv64 27 #elif defined(CONFIG_ENV_pv32pae) 30 #define CONFIG_32BIT 1 31 #define CONFIG_PAGING_LEVELS 3 32 #define ENVIRONMENT_DESCRIPTION "PV 32bit (PAE 3 levels)" 34 #undef CONFIG_ENV_pv32pae 36 #elif defined(CONFIG_ENV_hvm64) 39 #define CONFIG_64BIT 1 40 #define CONFIG_PAGING_LEVELS 4 41 #define ENVIRONMENT_DESCRIPTION "HVM 64bit (Long mode 4 levels)" 43 #undef CONFIG_ENV_hvm64 45 #elif defined(CONFIG_ENV_hvm32pae) 48 #define CONFIG_32BIT 1 49 #define CONFIG_PAGING_LEVELS 3 50 #define ENVIRONMENT_DESCRIPTION "HVM 32bit (PAE 3 levels)" 52 #undef CONFIG_ENV_hvm32pae 54 #elif defined(CONFIG_ENV_hvm32pse) 57 #define CONFIG_32BIT 1 58 #define CONFIG_PAGING_LEVELS 2 59 #define ENVIRONMENT_DESCRIPTION "HVM 32bit (PSE 2 levels)" 61 #undef CONFIG_ENV_hvm32pse 63 #elif defined(CONFIG_ENV_hvm32) 66 #define CONFIG_32BIT 1 67 #define CONFIG_PAGING_LEVELS 0 68 #define ENVIRONMENT_DESCRIPTION "HVM 32bit (No paging)" 70 #undef CONFIG_ENV_hvm32 73 # error Bad environment Varadic macro helpers - Here be many dragons.