~vojtech-horky/helenos/numa

« back to all changes in this revision

Viewing changes to boot/arch/ia64/loader/gefi/lib/error.c

  • Committer: Martin Decky
  • Date: 2009-08-04 11:19:19 UTC
  • Revision ID: martin@uranus.dsrg.hide.ms.mff.cuni.cz-20090804111919-evyclddlr3v5lhmp
Initial import

Show diffs side-by-side

added added

removed removed

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