coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
svc.c File Reference
#include "svc.h"
#include <assert.h>
#include <bl_uapp/bl_syscall_public.h>
#include <psp_verstage.h>
#include <stddef.h>
#include <string.h>
Include dependency graph for svc.c:

Go to the source code of this file.

Functions

void svc_exit (uint32_t status)
 
void svc_debug_print (const char *string)
 
void svc_debug_print_ex (uint32_t dword0, uint32_t dword1, uint32_t dword2, uint32_t dword3)
 
uint32_t svc_get_boot_mode (uint32_t *boot_mode)
 
void svc_delay_in_usec (uint32_t delay)
 
uint32_t svc_get_spi_rom_info (struct spirom_info *spi_rom_info)
 
uint32_t svc_map_fch_dev (enum fch_io_device io_device, uint32_t arg1, uint32_t arg2, void **io_device_axi_addr)
 
uint32_t svc_unmap_fch_dev (enum fch_io_device io_device, void *io_device_axi_addr)
 
uint32_t svc_map_spi_rom (void *spi_rom_addr, uint32_t size, void **spi_rom_axi_addr)
 
uint32_t svc_unmap_spi_rom (void *spi_rom_addr)
 
uint32_t svc_update_psp_bios_dir (uint32_t *psp_dir_offset, uint32_t *bios_dir_offset)
 
uint32_t svc_save_uapp_data (void *address, uint32_t size)
 
uint32_t svc_read_timer_val (enum psp_timer_type type, uint64_t *counter_value)
 
uint32_t svc_reset_system (enum reset_type reset_type)
 
uint32_t svc_crypto_sha (struct sha_generic_data *sha_op, enum sha_operation_mode sha_mode)
 
uint32_t svc_modexp (struct mod_exp_params *mod_exp_param)
 
uint32_t svc_ccp_dma (uint32_t spi_rom_offset, void *dest, uint32_t size)
 
uint32_t svc_set_platform_boot_mode (enum chrome_platform_boot_mode boot_mode)
 

Function Documentation

◆ svc_ccp_dma()

uint32_t svc_ccp_dma ( uint32_t  spi_rom_offset,
void dest,
uint32_t  size 
)

Definition at line 185 of file svc.c.

References cmd_param_ccp_dma::size, cmd_param_ccp_dma::spi_offset, and SVC_CALL2.

◆ svc_crypto_sha()

uint32_t svc_crypto_sha ( struct sha_generic_data *  sha_op,
enum sha_operation_mode  sha_mode 
)

Definition at line 164 of file svc.c.

References cmd_param_sha::ptr_sha_op, cmd_param_sha::sha_mode, sha_op, and SVC_CALL2.

◆ svc_debug_print()

void svc_debug_print ( const char *  string)

Definition at line 17 of file svc.c.

References cmd_param_debug::debug_buffer, cmd_param_debug::debug_buffer_len, strlen(), and SVC_CALL2.

Here is the call graph for this function:

◆ svc_debug_print_ex()

void svc_debug_print_ex ( uint32_t  dword0,
uint32_t  dword1,
uint32_t  dword2,
uint32_t  dword3 
)

Definition at line 27 of file svc.c.

References SVC_CALL2, and cmd_param_debug_ex::word0.

◆ svc_delay_in_usec()

void svc_delay_in_usec ( uint32_t  delay)

Definition at line 50 of file svc.c.

References delay(), cmd_param_delay_in_micro_second::delay, and SVC_CALL2.

Here is the call graph for this function:

◆ svc_exit()

void svc_exit ( uint32_t  status)

Definition at line 11 of file svc.c.

References SVC_CALL0.

◆ svc_get_boot_mode()

uint32_t svc_get_boot_mode ( uint32_t boot_mode)

Definition at line 40 of file svc.c.

References cmd_param_get_boot_mode::ptr_boot_mode, and SVC_CALL2.

◆ svc_get_spi_rom_info()

uint32_t svc_get_spi_rom_info ( struct spirom_info *  spi_rom_info)

Definition at line 59 of file svc.c.

References cmd_param_spirom_info::ptr_spirom_info, and SVC_CALL2.

◆ svc_map_fch_dev()

uint32_t svc_map_fch_dev ( enum fch_io_device  io_device,
uint32_t  arg1,
uint32_t  arg2,
void **  io_device_axi_addr 
)

◆ svc_map_spi_rom()

uint32_t svc_map_spi_rom ( void spi_rom_addr,
uint32_t  size,
void **  spi_rom_axi_addr 
)

◆ svc_modexp()

uint32_t svc_modexp ( struct mod_exp_params *  mod_exp_param)

Definition at line 175 of file svc.c.

References cmd_param_modexp::ptr_modexp, and SVC_CALL2.

◆ svc_read_timer_val()

uint32_t svc_read_timer_val ( enum psp_timer_type  type,
uint64_t counter_value 
)

Definition at line 141 of file svc.c.

References assert, SVC_CALL2, cmd_param_read_timer_val::timer_type, and type.

◆ svc_reset_system()

uint32_t svc_reset_system ( enum reset_type reset_type  )

Definition at line 153 of file svc.c.

References assert, cmd_param_reset_system::reset_type, and SVC_CALL2.

◆ svc_save_uapp_data()

uint32_t svc_save_uapp_data ( void address,
uint32_t  size 
)

◆ svc_set_platform_boot_mode()

uint32_t svc_set_platform_boot_mode ( enum chrome_platform_boot_mode  boot_mode)

Definition at line 197 of file svc.c.

References cmd_param_set_platform_boot_mode::boot_mode, and SVC_CALL2.

◆ svc_unmap_fch_dev()

uint32_t svc_unmap_fch_dev ( enum fch_io_device  io_device,
void io_device_axi_addr 
)

Definition at line 84 of file svc.c.

References assert, cmd_param_unmap_fch_io_device::io_device, and SVC_CALL2.

◆ svc_unmap_spi_rom()

uint32_t svc_unmap_spi_rom ( void spi_rom_addr)

Definition at line 109 of file svc.c.

References cmd_param_unmap_spirom::ptr_spirom_addr_axi, and SVC_CALL2.

◆ svc_update_psp_bios_dir()

uint32_t svc_update_psp_bios_dir ( uint32_t psp_dir_offset,
uint32_t bios_dir_offset 
)

Definition at line 119 of file svc.c.

References cmd_param_psp_update::ptr_psp_dir_addr, and SVC_CALL2.