coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
bl31.c File Reference
#include <arch/lib_helpers.h>
#include <arch/mmu.h>
#include <arch/transition.h>
#include <bl31.h>
#include <bootmem.h>
#include <cbfs.h>
#include <cbmem.h>
#include <console/console.h>
#include <program_loading.h>
#include <arm-trusted-firmware/include/export/common/bl_common_exp.h>
Include dependency graph for bl31.c:

Go to the source code of this file.

Functions

void register_bl31_aux_param (struct bl_aux_param_header *param)
 
__weak voidsoc_get_bl31_plat_params (void)
 
void run_bl31 (u64 payload_entry, u64 payload_arg0, u64 payload_spsr)
 

Variables

static entry_point_info_t bl32_ep_info
 
static entry_point_info_t bl33_ep_info
 
static bl_params_node_t bl32_params_node
 
static bl_params_node_t bl33_params_node
 
static bl_params_t bl_params
 
static struct bl_aux_param_header * bl_aux_params
 

Function Documentation

◆ register_bl31_aux_param()

void register_bl31_aux_param ( struct bl_aux_param_header *  param)

Definition at line 54 of file bl31.c.

References bl_aux_params.

Referenced by register_apio_suspend(), register_gpio_suspend(), register_poweroff_to_bl31(), register_reset_to_bl31(), and soc_get_bl31_plat_params().

Here is the caller graph for this function:

◆ run_bl31()

void run_bl31 ( u64  payload_entry,
u64  payload_arg0,
u64  payload_spsr 
)

◆ soc_get_bl31_plat_params()

__weak void* soc_get_bl31_plat_params ( void  )

Definition at line 61 of file bl31.c.

References bl_aux_params, cbmem_find(), CBMEM_ID_CBTABLE, and register_bl31_aux_param().

Referenced by run_bl31().

Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ bl32_ep_info

entry_point_info_t bl32_ep_info
static
Initial value:
= {
.h = {
.type = PARAM_EP,
.version = PARAM_VERSION_1,
.size = sizeof(bl32_ep_info),
.attr = EP_SECURE,
},
}
static entry_point_info_t bl32_ep_info
Definition: bl31.c:15

Definition at line 15 of file bl31.c.

Referenced by run_bl31().

◆ bl32_params_node

bl_params_node_t bl32_params_node
static
Initial value:
= {
.image_id = BL32_IMAGE_ID,
.ep_info = &bl32_ep_info,
}

Definition at line 32 of file bl31.c.

Referenced by run_bl31().

◆ bl33_ep_info

entry_point_info_t bl33_ep_info
static
Initial value:
= {
.h = {
.type = PARAM_EP,
.version = PARAM_VERSION_1,
.size = sizeof(bl33_ep_info),
.attr = EP_NON_SECURE,
},
}
static entry_point_info_t bl33_ep_info
Definition: bl31.c:23

Definition at line 23 of file bl31.c.

Referenced by run_bl31().

◆ bl33_params_node

bl_params_node_t bl33_params_node
static
Initial value:
= {
.image_id = BL33_IMAGE_ID,
.ep_info = &bl33_ep_info,
}

Definition at line 36 of file bl31.c.

Referenced by run_bl31().

◆ bl_aux_params

struct bl_aux_param_header* bl_aux_params
static

Definition at line 51 of file bl31.c.

Referenced by register_bl31_aux_param(), and soc_get_bl31_plat_params().

◆ bl_params

bl_params_t bl_params
static
Initial value:
= {
.h = {
.type = PARAM_BL_PARAMS,
.version = PARAM_VERSION_2,
.size = sizeof(bl_params),
.attr = 0,
},
.head = &bl33_params_node,
}
static bl_params_node_t bl33_params_node
Definition: bl31.c:36
static bl_params_t bl_params
Definition: bl31.c:41

Definition at line 41 of file bl31.c.

Referenced by run_bl31().