error.c revision 1.1 1 /* $NetBSD: error.c,v 1.1 2014/04/01 16:16:06 jakllsch Exp $ */
2
3 /*++
4
5 Copyright (c) 1998 Intel Corporation
6
7 Module Name:
8
9 error.c
10
11 Abstract:
12
13
14
15
16 Revision History
17
18 --*/
19
20 #include "lib.h"
21
22
23 struct {
24 EFI_STATUS Code;
25 WCHAR *Desc;
26 } ErrorCodeTable[] = {
27 { EFI_SUCCESS, L"Success"},
28 { EFI_LOAD_ERROR, L"Load Error"},
29 { EFI_INVALID_PARAMETER, L"Invalid Parameter"},
30 { EFI_UNSUPPORTED, L"Unsupported"},
31 { EFI_BAD_BUFFER_SIZE, L"Bad Buffer Size"},
32 { EFI_BUFFER_TOO_SMALL, L"Buffer Too Small"},
33 { EFI_NOT_READY, L"Not Ready"},
34 { EFI_DEVICE_ERROR, L"Device Error"},
35 { EFI_WRITE_PROTECTED, L"Write Protected"},
36 { EFI_OUT_OF_RESOURCES, L"Out of Resources"},
37 { EFI_VOLUME_CORRUPTED, L"Volume Corrupt"},
38 { EFI_VOLUME_FULL, L"Volume Full"},
39 { EFI_NO_MEDIA, L"No Media"},
40 { EFI_MEDIA_CHANGED, L"Media changed"},
41 { EFI_NOT_FOUND, L"Not Found"},
42 { EFI_ACCESS_DENIED, L"Access Denied"},
43 { EFI_NO_RESPONSE, L"No Response"},
44 { EFI_NO_MAPPING, L"No mapping"},
45 { EFI_TIMEOUT, L"Time out"},
46 { EFI_NOT_STARTED, L"Not started"},
47 { EFI_ALREADY_STARTED, L"Already started"},
48 { EFI_ABORTED, L"Aborted"},
49 { EFI_ICMP_ERROR, L"ICMP Error"},
50 { EFI_TFTP_ERROR, L"TFTP Error"},
51 { EFI_PROTOCOL_ERROR, L"Protocol Error"},
52
53 // warnings
54 { EFI_WARN_UNKOWN_GLYPH, L"Warning Unknown Glyph"},
55 { EFI_WARN_DELETE_FAILURE, L"Warning Delete Failure"},
56 { EFI_WARN_WRITE_FAILURE, L"Warning Write Failure"},
57 { EFI_WARN_BUFFER_TOO_SMALL, L"Warning Buffer Too Small"},
58 { 0, NULL}
59 } ;
60
61
62 VOID
63 StatusToString (
64 OUT CHAR16 *Buffer,
65 IN EFI_STATUS Status
66 )
67 {
68 UINTN Index;
69
70 for (Index = 0; ErrorCodeTable[Index].Desc; Index +=1) {
71 if (ErrorCodeTable[Index].Code == Status) {
72 StrCpy (Buffer, ErrorCodeTable[Index].Desc);
73 return;
74 }
75 }
76
77 SPrint (Buffer, 0, L"%X", Status);
78 }
79