mma_core.c
1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 3 #include <console/console.h> 4 #include <fsp/util.h> 5 #include <fsp/soc_binding.h> 6 7 static const uint8_t mma_results_uuid[16] = { 0x28, 0xe9, 0xf4, 0x08, 8 0x5f, 0x0f, 0xd4, 0x46, 9 0x84, 0x10, 0x47, 0x9f, 0xda, 0x27, 0x9d, 0xb6 }; 10 11 int fsp_locate_mma_results(const void **mma_hob, size_t *mma_hob_size) 12 { 13 *mma_hob_size = 0; 14 *mma_hob = fsp_find_extension_hob_by_guid(mma_results_uuid, 15 mma_hob_size); 16 17 if (!(*mma_hob_size) || !(*mma_hob)) 18 return -1; 19 return 0; 20 } 21 22 void setup_mma(FSP_M_CONFIG *memory_cfg) 23 { 24 struct mma_config_param mma_cfg; 25 26 if (mma_map_param(&mma_cfg)) { 27 printk(BIOS_DEBUG, "MMA: set up failed\n"); 28 return; 29 } 30 31 /* Enable EvLoader to run load and run MMA tests.*/ 32 memory_cfg->EvLoader = 1; 33 soc_update_memory_params_for_mma(memory_cfg, &mma_cfg); 34 printk(BIOS_DEBUG, "MMA: set up completed successfully\n"); 35 }