1/** @file
2
3  Copyright (c) 2017, Linaro. All rights reserved.<BR>
4
5  This program and the accompanying materials
6  are licensed and made available under the terms and conditions of the BSD License
7  which accompanies this distribution.  The full text of the license may be found at
8  http://opensource.org/licenses/bsd-license.php
9
10  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13**/
14
15#ifndef __ABOOTIMG_PROTOCOL_H__
16#define __ABOOTIMG_PROTOCOL_H__
17
18//
19// Protocol interface structure
20//
21typedef struct _ABOOTIMG_PROTOCOL    ABOOTIMG_PROTOCOL;
22
23//
24// Function Prototypes
25//
26typedef
27EFI_STATUS
28(EFIAPI *ABOOTIMG_APPEND_KERNEL_ARGS) (
29  IN CHAR16            *Args,
30  IN UINTN              Size
31  );
32
33typedef
34EFI_STATUS
35(EFIAPI *ABOOTIMG_UPDATE_DTB) (
36  IN  EFI_PHYSICAL_ADDRESS    OrigDtbBase;
37  OUT EFI_PHYSICAL_ADDRESS   *NewDtbBase;
38  );
39
40struct _ABOOTIMG_PROTOCOL {
41  ABOOTIMG_APPEND_KERNEL_ARGS        AppendArgs;
42  ABOOTIMG_UPDATE_DTB                UpdateDtb;
43};
44
45extern EFI_GUID gAbootimgProtocolGuid;
46
47#endif /* __ABOOTIMG_PROTOCOL_H__ */
48