TianoCore EDK2 master
Loading...
Searching...
No Matches
ArmVirtQemuMonitorPeiLib.c File Reference
#include <Base.h>
#include <Library/ArmHvcLib.h>
#include <Library/ArmMonitorLib.h>
#include <Library/ArmSmcLib.h>
#include <Library/BaseLib.h>
#include <Library/DebugLib.h>
#include <Library/FdtLib.h>

Go to the source code of this file.

Enumerations

enum  SMCCC_CONDUIT { SmcccConduitUnknown , SmcccConduitSmc , SmcccConduitHvc }
 

Functions

STATIC SMCCC_CONDUIT DiscoverSmcccConduit (VOID)
 
VOID EFIAPI ArmMonitorCall (IN OUT ARM_MONITOR_ARGS *Args)
 

Detailed Description

Arm Monitor Library that chooses the conduit based on the PSCI node in the device tree provided by QEMU.

Copyright (c) 2022, Arm Limited. All rights reserved.
Copyright (c) 2024, Google LLC. All rights reserved.

SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file ArmVirtQemuMonitorPeiLib.c.

Enumeration Type Documentation

◆ SMCCC_CONDUIT

enum SMCCC_CONDUIT

Definition at line 21 of file ArmVirtQemuMonitorPeiLib.c.

Function Documentation

◆ ArmMonitorCall()

VOID EFIAPI ArmMonitorCall ( IN OUT ARM_MONITOR_ARGS Args)

Monitor call.

An HyperVisor Call (HVC) or System Monitor Call (SMC) will be issued depending on the default conduit.

Parameters
[in,out]ArgsArguments for the HVC/SMC.

Definition at line 112 of file ArmVirtQemuMonitorPeiLib.c.

◆ DiscoverSmcccConduit()

STATIC SMCCC_CONDUIT DiscoverSmcccConduit ( VOID  )

Discover the SMCCC conduit by parsing the PSCI device tree node.

Returns
the discovered SMCCC conduit

Definition at line 34 of file ArmVirtQemuMonitorPeiLib.c.