VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/FirmwareNew/ArmPkg/Library/ArmFfaLib/ArmFfaRxTxMap.h@ 108794

Last change on this file since 108794 was 108794, checked in by vboxsync, 2 weeks ago

Devices/EFI/FirmwareNew: Merge edk2-stable202502 from the vendor branch and make it build for the important platforms, bugref:4643

  • Property svn:eol-style set to native
File size: 1.6 KB
Line 
1/** @file
2 Arm FF-A ns common library Header file
3
4 Copyright (c) 2024, Arm Limited. All rights reserved.<BR>
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7 @par Glossary:
8 - FF-A - Firmware Framework for Arm A-profile
9 - spmc - Secure Partition Manager Core
10 - spmd - Secure Partition Manager Dispatcher
11
12 @par Reference(s):
13 - Arm Firmware Framework for Arm A-Profile [https://developer.arm.com/documentation/den0077/latest]
14
15**/
16
17#ifndef ARM_FFA_RX_TX_MAP_LIB_H_
18#define ARM_FFA_RX_TX_MAP_LIB_H_
19
20/**
21 * Guid Hob Data for gArmFfaRxTxBufferInfoGuid Guid Hob.
22 */
23typedef struct ArmFfaRxTxBuffersInfo {
24 /// Tx Buffer Address.
25 VOID *TxBufferAddr;
26
27 /// Tx Buffer Size.
28 UINT64 TxBufferSize;
29
30 /// Rx Buffer Address.
31 VOID *RxBufferAddr;
32
33 /// Rx Buffer Size.
34 UINT64 RxBufferSize;
35} ARM_FFA_RX_TX_BUFFER_INFO;
36
37/**
38 Mapping Rx/Tx buffers.
39 This function is only called in ArmFfaLibConstructor because
40 Rx/Tx buffer is registered only once per partition.
41
42 @retval EFI_SUCCESS
43 @retval EFI_ALREADY_STARTED Rx/Tx buffer already mapped in PEI phase
44 @retval EFI_OUT_OF_RESOURCE Out of memory
45 @retval EFI_INVALID_PARAMETER Invalid alignment of Rx/Tx buffer
46 @retval Others Error
47
48**/
49EFI_STATUS
50EFIAPI
51ArmFfaLibRxTxMap (
52 IN VOID
53 );
54
55/**
56 Unmap Rx/Tx buffer.
57 This function is only called in Exit boot service because
58 Rx/Tx buffer is registered only once per partition.
59
60 @retval EFI_SUCCESS
61 @retval EFI_INVALID_PARAMETERS Already unregistered
62 @retval EFI_UNSUPPORTED Not supported
63
64**/
65EFI_STATUS
66EFIAPI
67ArmFfaLibRxTxUnmap (
68 IN VOID
69 );
70
71#endif
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette