]> git.proxmox.com Git - mirror_edk2.git/blob - MdePkg/Include/Protocol/DevicePathFromText.h
MdePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / MdePkg / Include / Protocol / DevicePathFromText.h
1 /** @file
2 EFI_DEVICE_PATH_FROM_TEXT_PROTOCOL as defined in UEFI 2.0.
3 This protocol provides service to convert text to device paths and device nodes.
4
5 Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
6 SPDX-License-Identifier: BSD-2-Clause-Patent
7
8 **/
9
10 #ifndef __DEVICE_PATH_FROM_TEXT_PROTOCOL_H__
11 #define __DEVICE_PATH_FROM_TEXT_PROTOCOL_H__
12
13 ///
14 /// Device Path From Text protocol
15 ///
16 #define EFI_DEVICE_PATH_FROM_TEXT_PROTOCOL_GUID \
17 { \
18 0x5c99a21, 0xc70f, 0x4ad2, {0x8a, 0x5f, 0x35, 0xdf, 0x33, 0x43, 0xf5, 0x1e } \
19 }
20
21 /**
22 Convert text to the binary representation of a device node.
23
24 @param TextDeviceNode TextDeviceNode points to the text representation of a device
25 node. Conversion starts with the first character and continues
26 until the first non-device node character.
27
28 @retval a_pointer Pointer to the EFI device node.
29 @retval NULL if TextDeviceNode is NULL or there was insufficient memory.
30
31 **/
32 typedef
33 EFI_DEVICE_PATH_PROTOCOL*
34 (EFIAPI *EFI_DEVICE_PATH_FROM_TEXT_NODE)(
35 IN CONST CHAR16 *TextDeviceNode
36 );
37
38
39 /**
40 Convert text to the binary representation of a device node.
41
42 @param TextDeviceNode TextDevicePath points to the text representation of a device
43 path. Conversion starts with the first character and continues
44 until the first non-device path character.
45
46 @retval a_pointer Pointer to the allocated device path.
47 @retval NULL if TextDeviceNode is NULL or there was insufficient memory.
48
49 **/
50 typedef
51 EFI_DEVICE_PATH_PROTOCOL*
52 (EFIAPI *EFI_DEVICE_PATH_FROM_TEXT_PATH)(
53 IN CONST CHAR16 *TextDevicePath
54 );
55
56 ///
57 /// This protocol converts text to device paths and device nodes.
58 ///
59 typedef struct {
60 EFI_DEVICE_PATH_FROM_TEXT_NODE ConvertTextToDeviceNode;
61 EFI_DEVICE_PATH_FROM_TEXT_PATH ConvertTextToDevicePath;
62 } EFI_DEVICE_PATH_FROM_TEXT_PROTOCOL;
63
64 extern EFI_GUID gEfiDevicePathFromTextProtocolGuid;
65
66 #endif