1 /* Copyright 2013 The ChromiumOS Authors 2 * Use of this source code is governed by a BSD-style license that can be 3 * found in the LICENSE file. 4 */ 5 6 /* Per-test config flags */ 7 8 #ifndef __TEST_TEST_CONFIG_H 9 #define __TEST_TEST_CONFIG_H 10 11 /* Test config flags only apply for test builds */ 12 #ifdef TEST_BUILD 13 14 /* Host commands are sorted. */ 15 #define CONFIG_HOSTCMD_SECTION_SORTED 16 17 /* Don't compile features unless specifically testing for them */ 18 #undef CONFIG_VBOOT_HASH 19 #undef CONFIG_USB_PD_LOGGING 20 21 #ifdef TEST_AES 22 #define CONFIG_AES 23 #define CONFIG_AES_GCM 24 #endif 25 26 #ifdef TEST_BASE32 27 #define CONFIG_BASE32 28 #endif 29 30 #ifdef TEST_BASE64 31 #define CONFIG_BASE64 32 #endif 33 34 #ifdef TEST_FLASH_LOG 35 #define CONFIG_CRC8 36 #define CONFIG_FLASH_ERASED_VALUE32 (-1U) 37 #define CONFIG_FLASH_LOG 38 #define CONFIG_FLASH_LOG_BASE (CONFIG_PROGRAM_MEMORY_BASE + 0x800) 39 #define CONFIG_FLASH_LOG_SPACE 0x800 40 #define CONFIG_MALLOC 41 #endif 42 43 #ifdef TEST_MATH_UTIL 44 #define CONFIG_MATH_UTIL 45 #endif 46 47 #ifdef TEST_FLOAT 48 #define CONFIG_FPU 49 #define CONFIG_MAG_CALIBRATE 50 #endif 51 52 #ifdef TEST_FP 53 #undef CONFIG_FPU 54 #define CONFIG_MAG_CALIBRATE 55 #endif 56 57 #ifdef TEST_RMA_AUTH 58 59 /* Test server public and private keys */ 60 #define RMA_KEY_BLOB \ 61 { \ 62 0x03, 0xae, 0x2d, 0x2c, 0x06, 0x23, 0xe0, 0x73, 0x0d, 0xd3, \ 63 0xb7, 0x92, 0xac, 0x54, 0xc5, 0xfd, 0x7e, 0x9c, 0xf0, \ 64 0xa8, 0xeb, 0x7e, 0x2a, 0xb5, 0xdb, 0xf4, 0x79, 0x5f, \ 65 0x8a, 0x0f, 0x28, 0x3f, 0x10 \ 66 } 67 68 #define RMA_TEST_SERVER_PRIVATE_KEY \ 69 { \ 70 0x47, 0x3b, 0xa5, 0xdb, 0xc4, 0xbb, 0xd6, 0x77, 0x20, 0xbd, \ 71 0xd8, 0xbd, 0xc8, 0x7a, 0xbb, 0x07, 0x03, 0x79, 0xba, \ 72 0x7b, 0x52, 0x8c, 0xec, 0xb3, 0x4d, 0xaa, 0x69, 0xf5, \ 73 0x65, 0xb4, 0x31, 0xad \ 74 } 75 #define RMA_TEST_SERVER_KEY_ID 0x10 76 77 #define CONFIG_BASE32 78 #define CONFIG_CURVE25519 79 #define CONFIG_RMA_AUTH 80 #define CONFIG_RNG 81 #define CONFIG_SHA256 82 #define CC_EXTENSION CC_COMMAND 83 84 #endif 85 86 #ifdef TEST_CRC32 87 #define CONFIG_SW_CRC 88 #endif 89 90 #ifdef TEST_RSA 91 #define CONFIG_RSA 92 #define CONFIG_RSA_KEY_SIZE 2048 93 #define CONFIG_RWSIG_TYPE_RWSIG 94 #endif 95 96 #ifdef TEST_RSA3 97 #define CONFIG_RSA 98 #undef CONFIG_RSA_KEY_SIZE 99 #define CONFIG_RSA_KEY_SIZE 2048 100 #define CONFIG_RSA_EXPONENT_3 101 #define CONFIG_RWSIG_TYPE_RWSIG 102 #endif 103 104 #ifdef TEST_SHA256 105 #define CONFIG_SHA256 106 #endif 107 108 #ifdef TEST_SHA256_UNROLLED 109 #define CONFIG_SHA256 110 #define CONFIG_SHA256_UNROLLED 111 #endif 112 113 #ifdef TEST_SHMALLOC 114 #define CONFIG_MALLOC 115 #endif 116 117 #ifdef TEST_THERMAL 118 #define CONFIG_CHIPSET_CAN_THROTTLE 119 #define CONFIG_FANS 1 120 #define CONFIG_I2C 121 #define CONFIG_I2C_CONTROLLER 122 #define CONFIG_TEMP_SENSOR 123 #define CONFIG_THROTTLE_AP 124 #define CONFIG_THERMISTOR 125 #define CONFIG_THERMISTOR_NCP15WB 126 #define I2C_PORT_THERMAL 0 127 int ncp15wb_calculate_temp(uint16_t adc); 128 #endif 129 130 #ifdef TEST_FAN 131 #define CONFIG_FANS 1 132 #endif 133 134 #ifdef TEST_BUTTON 135 #define CONFIG_KEYBOARD_PROTOCOL_8042 136 #define CONFIG_VOLUME_BUTTONS 137 #endif 138 139 #ifdef TEST_CEC 140 #define CONFIG_CEC 141 #endif 142 143 #ifdef TEST_EC_COMM 144 /* Test EC-EFS2.0 */ 145 #define CONFIG_CRC8 146 #define CONFIG_EC_EFS_SUPPORT 147 #define CONFIG_EC_EFS2_VERSION 0 148 #endif 149 150 #ifdef TEST_EC_COMM21 151 /* Test EC-EFS2.1 */ 152 #define CONFIG_CRC8 153 #define CONFIG_EC_EFS_SUPPORT 154 #define CONFIG_EC_EFS2_VERSION 1 155 #endif 156 157 #if defined(TEST_NVMEM) || defined(TEST_NVMEM_VARS) 158 #define CONFIG_CRC8 159 #define CONFIG_FLASH_ERASED_VALUE32 (-1U) 160 #define CONFIG_FLASH_LOG 161 #define CONFIG_FLASH_LOG_BASE CONFIG_PROGRAM_MEMORY_BASE 162 #define CONFIG_FLASH_LOG_SPACE 0x800 163 #define CONFIG_FLASH_NVMEM 164 #define CONFIG_FLASH_NVMEM_OFFSET_A 0x3d000 165 #define CONFIG_FLASH_NVMEM_OFFSET_B 0x7d000 166 #define CONFIG_FLASH_NVMEM_BASE_A \ 167 (CONFIG_PROGRAM_MEMORY_BASE + CONFIG_FLASH_NVMEM_OFFSET_A) 168 #define CONFIG_FLASH_NVMEM_BASE_B \ 169 (CONFIG_PROGRAM_MEMORY_BASE + CONFIG_FLASH_NVMEM_OFFSET_B) 170 #define CONFIG_FLASH_NEW_NVMEM_BASE_A (CONFIG_FLASH_NVMEM_BASE_A + 0x800) 171 #define CONFIG_FLASH_NEW_NVMEM_BASE_B (CONFIG_FLASH_NVMEM_BASE_B + 0x800) 172 #define CONFIG_MALLOC 173 /* This is legacy NVMEM partition size. */ 174 #define NVMEM_PARTITION_SIZE 0x3000 175 #define NEW_FLASH_HALF_NVMEM_SIZE \ 176 (NVMEM_PARTITION_SIZE - CONFIG_FLASH_BANK_SIZE) 177 #define NEW_NVMEM_PARTITION_SIZE (NVMEM_PARTITION_SIZE - CONFIG_FLASH_BANK_SIZE) 178 #define NEW_NVMEM_TOTAL_PAGES \ 179 (2 * NEW_NVMEM_PARTITION_SIZE / CONFIG_FLASH_BANK_SIZE) 180 #define CONFIG_SW_CRC 181 #define CONFIG_FLASH_NVMEM_VARS 182 183 #ifndef __ASSEMBLER__ 184 enum nvmem_users { NVMEM_TPM = 0, NVMEM_CR50, NVMEM_NUM_USERS }; 185 #endif 186 #endif 187 188 #ifdef TEST_PINWEAVER 189 #define CONFIG_DCRYPTO_MOCK 190 #define CONFIG_PINWEAVER 191 #define CONFIG_SHA256 192 #endif /* TEST_PINWEAVER */ 193 194 #ifdef TEST_RTC 195 #define CONFIG_HOSTCMD_RTC 196 #endif 197 198 #ifdef TEST_U2F 199 #define CONFIG_DCRYPTO 200 #define CONFIG_U2F 201 #define CC_EXTENSION CC_COMMAND 202 #endif 203 204 #ifdef TEST_VBOOT 205 #define CONFIG_RWSIG 206 #define CONFIG_SHA256 207 #define CONFIG_RSA 208 #define CONFIG_RWSIG_TYPE_RWSIG 209 #define CONFIG_RW_B 210 #define CONFIG_RW_B_MEM_OFF CONFIG_RO_MEM_OFF 211 #undef CONFIG_RO_SIZE 212 #define CONFIG_RO_SIZE (CONFIG_FLASH_SIZE / 4) 213 #undef CONFIG_RW_SIZE 214 #define CONFIG_RW_SIZE CONFIG_RO_SIZE 215 #define CONFIG_RW_A_STORAGE_OFF CONFIG_RW_STORAGE_OFF 216 #define CONFIG_RW_B_STORAGE_OFF (CONFIG_RW_A_STORAGE_OFF + CONFIG_RW_SIZE) 217 #define CONFIG_RW_A_SIGN_STORAGE_OFF \ 218 (CONFIG_RW_A_STORAGE_OFF + CONFIG_RW_SIZE - CONFIG_RW_SIG_SIZE) 219 #define CONFIG_RW_B_SIGN_STORAGE_OFF \ 220 (CONFIG_RW_B_STORAGE_OFF + CONFIG_RW_SIZE - CONFIG_RW_SIG_SIZE) 221 #endif 222 223 #ifdef TEST_X25519 224 #define CONFIG_CURVE25519 225 #endif /* TEST_X25519 */ 226 227 #endif /* TEST_BUILD */ 228 #endif /* __TEST_TEST_CONFIG_H */ 229