Merge by Hand
[linux-2.6] / arch / powerpc / lib / e2a.c
1 /*
2  *  arch/ppc64/lib/e2a.c
3  *
4  *  EBCDIC to ASCII conversion
5  *
6  * This function moved here from arch/ppc64/kernel/viopath.c
7  *
8  * (C) Copyright 2000-2004 IBM Corporation
9  *
10  * This program is free software;  you can redistribute it and/or
11  * modify it under the terms of the GNU General Public License as
12  * published by the Free Software Foundation; either version 2 of the
13  * License, or (at your option) anyu later version.
14  *
15  * This program is distributed in the hope that it will be useful, but
16  * WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
18  * General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program; if not, write to the Free Software Foundation,
22  * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
23  *
24  */
25
26 #include <linux/module.h>
27
28 unsigned char e2a(unsigned char x)
29 {
30         switch (x) {
31         case 0xF0:
32                 return '0';
33         case 0xF1:
34                 return '1';
35         case 0xF2:
36                 return '2';
37         case 0xF3:
38                 return '3';
39         case 0xF4:
40                 return '4';
41         case 0xF5:
42                 return '5';
43         case 0xF6:
44                 return '6';
45         case 0xF7:
46                 return '7';
47         case 0xF8:
48                 return '8';
49         case 0xF9:
50                 return '9';
51         case 0xC1:
52                 return 'A';
53         case 0xC2:
54                 return 'B';
55         case 0xC3:
56                 return 'C';
57         case 0xC4:
58                 return 'D';
59         case 0xC5:
60                 return 'E';
61         case 0xC6:
62                 return 'F';
63         case 0xC7:
64                 return 'G';
65         case 0xC8:
66                 return 'H';
67         case 0xC9:
68                 return 'I';
69         case 0xD1:
70                 return 'J';
71         case 0xD2:
72                 return 'K';
73         case 0xD3:
74                 return 'L';
75         case 0xD4:
76                 return 'M';
77         case 0xD5:
78                 return 'N';
79         case 0xD6:
80                 return 'O';
81         case 0xD7:
82                 return 'P';
83         case 0xD8:
84                 return 'Q';
85         case 0xD9:
86                 return 'R';
87         case 0xE2:
88                 return 'S';
89         case 0xE3:
90                 return 'T';
91         case 0xE4:
92                 return 'U';
93         case 0xE5:
94                 return 'V';
95         case 0xE6:
96                 return 'W';
97         case 0xE7:
98                 return 'X';
99         case 0xE8:
100                 return 'Y';
101         case 0xE9:
102                 return 'Z';
103         }
104         return ' ';
105 }
106 EXPORT_SYMBOL(e2a);
107
108