remove some comments introduced by tools.
[mirror_edk2.git] / MdeModulePkg / Universal / Console / ConSplitterDxe / ComponentName.c
CommitLineData
95276127 1/*++\r
2\r
3Copyright (c) 2006, Intel Corporation \r
4All rights reserved. This program and the accompanying materials \r
5are licensed and made available under the terms and conditions of the BSD License \r
6which accompanies this distribution. The full text of the license may be found at \r
7http://opensource.org/licenses/bsd-license.php \r
8 \r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
11\r
12Module Name:\r
13\r
14 ComponentName.c\r
15\r
16Abstract:\r
17\r
18--*/\r
19\r
95276127 20#include "ConSplitter.h"\r
21\r
22//\r
23// EFI Component Name Protocol\r
24//\r
25EFI_COMPONENT_NAME_PROTOCOL gConSplitterConInComponentName = {\r
26 ConSplitterComponentNameGetDriverName,\r
27 ConSplitterConInComponentNameGetControllerName,\r
28 "eng"\r
29};\r
30\r
31EFI_COMPONENT_NAME_PROTOCOL gConSplitterSimplePointerComponentName = {\r
32 ConSplitterComponentNameGetDriverName,\r
33 ConSplitterSimplePointerComponentNameGetControllerName,\r
34 "eng"\r
35};\r
36\r
37EFI_COMPONENT_NAME_PROTOCOL gConSplitterConOutComponentName = {\r
38 ConSplitterComponentNameGetDriverName,\r
39 ConSplitterConOutComponentNameGetControllerName,\r
40 "eng"\r
41};\r
42\r
43EFI_COMPONENT_NAME_PROTOCOL gConSplitterStdErrComponentName = {\r
44 ConSplitterComponentNameGetDriverName,\r
45 ConSplitterStdErrComponentNameGetControllerName,\r
46 "eng"\r
47};\r
48\r
49static EFI_UNICODE_STRING_TABLE mConSplitterDriverNameTable[] = {\r
50 {\r
51 "eng",\r
52 (CHAR16 *) L"Console Splitter Driver"\r
53 },\r
54 {\r
55 NULL,\r
56 NULL\r
57 }\r
58};\r
59\r
60static EFI_UNICODE_STRING_TABLE mConSplitterConInControllerNameTable[] = {\r
61 {\r
62 "eng",\r
63 (CHAR16 *) L"Primary Console Input Device"\r
64 },\r
65 {\r
66 NULL,\r
67 NULL\r
68 }\r
69};\r
70\r
71static EFI_UNICODE_STRING_TABLE mConSplitterSimplePointerControllerNameTable[] = {\r
72 {\r
73 "eng",\r
74 (CHAR16 *) L"Primary Simple Pointer Device"\r
75 },\r
76 {\r
77 NULL,\r
78 NULL\r
79 }\r
80};\r
81\r
82static EFI_UNICODE_STRING_TABLE mConSplitterConOutControllerNameTable[] = {\r
83 {\r
84 "eng",\r
85 (CHAR16 *) L"Primary Console Output Device"\r
86 },\r
87 {\r
88 NULL,\r
89 NULL\r
90 }\r
91};\r
92\r
93static EFI_UNICODE_STRING_TABLE mConSplitterStdErrControllerNameTable[] = {\r
94 {\r
95 "eng",\r
96 (CHAR16 *) L"Primary Standard Error Device"\r
97 },\r
98 {\r
99 NULL,\r
100 NULL\r
101 }\r
102};\r
103\r
104EFI_STATUS\r
105EFIAPI\r
106ConSplitterComponentNameGetDriverName (\r
107 IN EFI_COMPONENT_NAME_PROTOCOL *This,\r
108 IN CHAR8 *Language,\r
109 OUT CHAR16 **DriverName\r
110 )\r
111/*++\r
112\r
113 Routine Description:\r
114 Retrieves a Unicode string that is the user readable name of the EFI Driver.\r
115\r
116 Arguments:\r
117 This - A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.\r
118 Language - A pointer to a three character ISO 639-2 language identifier.\r
119 This is the language of the driver name that that the caller \r
120 is requesting, and it must match one of the languages specified\r
121 in SupportedLanguages. The number of languages supported by a \r
122 driver is up to the driver writer.\r
123 DriverName - A pointer to the Unicode string to return. This Unicode string\r
124 is the name of the driver specified by This in the language \r
125 specified by Language.\r
126\r
127 Returns:\r
128 EFI_SUCCESS - The Unicode string for the Driver specified by This\r
129 and the language specified by Language was returned \r
130 in DriverName.\r
131 EFI_INVALID_PARAMETER - Language is NULL.\r
132 EFI_INVALID_PARAMETER - DriverName is NULL.\r
133 EFI_UNSUPPORTED - The driver specified by This does not support the \r
134 language specified by Language.\r
135\r
136--*/\r
137{\r
138 return LookupUnicodeString (\r
139 Language,\r
140 gConSplitterConInComponentName.SupportedLanguages,\r
141 mConSplitterDriverNameTable,\r
142 DriverName\r
143 );\r
144}\r
145\r
146EFI_STATUS\r
147EFIAPI\r
148ConSplitterConInComponentNameGetControllerName (\r
149 IN EFI_COMPONENT_NAME_PROTOCOL *This,\r
150 IN EFI_HANDLE ControllerHandle,\r
151 IN EFI_HANDLE ChildHandle OPTIONAL,\r
152 IN CHAR8 *Language,\r
153 OUT CHAR16 **ControllerName\r
154 )\r
155/*++\r
156\r
157 Routine Description:\r
158 Retrieves a Unicode string that is the user readable name of the controller\r
159 that is being managed by an EFI Driver.\r
160\r
161 Arguments:\r
162 This - A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.\r
163 ControllerHandle - The handle of a controller that the driver specified by \r
164 This is managing. This handle specifies the controller \r
165 whose name is to be returned.\r
166 ChildHandle - The handle of the child controller to retrieve the name \r
167 of. This is an optional parameter that may be NULL. It \r
168 will be NULL for device drivers. It will also be NULL \r
169 for a bus drivers that wish to retrieve the name of the \r
170 bus controller. It will not be NULL for a bus driver \r
171 that wishes to retrieve the name of a child controller.\r
172 Language - A pointer to a three character ISO 639-2 language \r
173 identifier. This is the language of the controller name \r
174 that that the caller is requesting, and it must match one\r
175 of the languages specified in SupportedLanguages. The \r
176 number of languages supported by a driver is up to the \r
177 driver writer.\r
178 ControllerName - A pointer to the Unicode string to return. This Unicode\r
179 string is the name of the controller specified by \r
180 ControllerHandle and ChildHandle in the language \r
181 specified by Language from the point of view of the \r
182 driver specified by This. \r
183\r
184 Returns:\r
185 EFI_SUCCESS - The Unicode string for the user readable name in the\r
186 language specified by Language for the driver \r
187 specified by This was returned in DriverName.\r
188 EFI_INVALID_PARAMETER - ControllerHandle is not a valid EFI_HANDLE.\r
189 EFI_INVALID_PARAMETER - ChildHandle is not NULL and it is not a valid \r
190 EFI_HANDLE.\r
191 EFI_INVALID_PARAMETER - Language is NULL.\r
192 EFI_INVALID_PARAMETER - ControllerName is NULL.\r
193 EFI_UNSUPPORTED - The driver specified by This is not currently \r
194 managing the controller specified by \r
195 ControllerHandle and ChildHandle.\r
196 EFI_UNSUPPORTED - The driver specified by This does not support the \r
197 language specified by Language.\r
198\r
199--*/\r
200{\r
201 EFI_STATUS Status;\r
202 EFI_SIMPLE_TEXT_INPUT_PROTOCOL *TextIn;\r
203 //\r
204 // here ChildHandle is not an Optional parameter.\r
205 //\r
206 if (ChildHandle == NULL) {\r
207 return EFI_UNSUPPORTED;\r
208 }\r
209\r
210 Status = gBS->OpenProtocol (\r
211 ControllerHandle,\r
212 &gEfiSimpleTextInProtocolGuid,\r
213 (VOID **) &TextIn,\r
214 NULL,\r
215 ControllerHandle,\r
216 EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
217 );\r
218 if (EFI_ERROR (Status)) {\r
219 return EFI_UNSUPPORTED;\r
220 }\r
221\r
222 return LookupUnicodeString (\r
223 Language,\r
224 gConSplitterConInComponentName.SupportedLanguages,\r
225 mConSplitterConInControllerNameTable,\r
226 ControllerName\r
227 );\r
228}\r
229\r
230EFI_STATUS\r
231EFIAPI\r
232ConSplitterSimplePointerComponentNameGetControllerName (\r
233 IN EFI_COMPONENT_NAME_PROTOCOL *This,\r
234 IN EFI_HANDLE ControllerHandle,\r
235 IN EFI_HANDLE ChildHandle OPTIONAL,\r
236 IN CHAR8 *Language,\r
237 OUT CHAR16 **ControllerName\r
238 )\r
239/*++\r
240\r
241 Routine Description:\r
242 Retrieves a Unicode string that is the user readable name of the controller\r
243 that is being managed by an EFI Driver.\r
244\r
245 Arguments:\r
246 This - A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.\r
247 ControllerHandle - The handle of a controller that the driver specified by \r
248 This is managing. This handle specifies the controller \r
249 whose name is to be returned.\r
250 ChildHandle - The handle of the child controller to retrieve the name \r
251 of. This is an optional parameter that may be NULL. It \r
252 will be NULL for device drivers. It will also be NULL \r
253 for a bus drivers that wish to retrieve the name of the \r
254 bus controller. It will not be NULL for a bus driver \r
255 that wishes to retrieve the name of a child controller.\r
256 Language - A pointer to a three character ISO 639-2 language \r
257 identifier. This is the language of the controller name \r
258 that that the caller is requesting, and it must match one\r
259 of the languages specified in SupportedLanguages. The \r
260 number of languages supported by a driver is up to the \r
261 driver writer.\r
262 ControllerName - A pointer to the Unicode string to return. This Unicode\r
263 string is the name of the controller specified by \r
264 ControllerHandle and ChildHandle in the language \r
265 specified by Language from the point of view of the \r
266 driver specified by This. \r
267\r
268 Returns:\r
269 EFI_SUCCESS - The Unicode string for the user readable name in the\r
270 language specified by Language for the driver \r
271 specified by This was returned in DriverName.\r
272 EFI_INVALID_PARAMETER - ControllerHandle is not a valid EFI_HANDLE.\r
273 EFI_INVALID_PARAMETER - ChildHandle is not NULL and it is not a valid \r
274 EFI_HANDLE.\r
275 EFI_INVALID_PARAMETER - Language is NULL.\r
276 EFI_INVALID_PARAMETER - ControllerName is NULL.\r
277 EFI_UNSUPPORTED - The driver specified by This is not currently \r
278 managing the controller specified by \r
279 ControllerHandle and ChildHandle.\r
280 EFI_UNSUPPORTED - The driver specified by This does not support the \r
281 language specified by Language.\r
282\r
283--*/\r
284{\r
285 EFI_STATUS Status;\r
286 EFI_SIMPLE_POINTER_PROTOCOL *SimplePointer;\r
287 //\r
288 // here ChildHandle is not an Optional parameter.\r
289 //\r
290 if (ChildHandle == NULL) {\r
291 return EFI_UNSUPPORTED;\r
292 }\r
293\r
294 Status = gBS->OpenProtocol (\r
295 ControllerHandle,\r
296 &gEfiSimplePointerProtocolGuid,\r
297 (VOID **) &SimplePointer,\r
298 NULL,\r
299 ControllerHandle,\r
300 EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
301 );\r
302 if (EFI_ERROR (Status)) {\r
303 return EFI_UNSUPPORTED;\r
304 }\r
305\r
306 return LookupUnicodeString (\r
307 Language,\r
308 gConSplitterSimplePointerComponentName.SupportedLanguages,\r
309 mConSplitterSimplePointerControllerNameTable,\r
310 ControllerName\r
311 );\r
312}\r
313\r
314EFI_STATUS\r
315EFIAPI\r
316ConSplitterConOutComponentNameGetControllerName (\r
317 IN EFI_COMPONENT_NAME_PROTOCOL *This,\r
318 IN EFI_HANDLE ControllerHandle,\r
319 IN EFI_HANDLE ChildHandle OPTIONAL,\r
320 IN CHAR8 *Language,\r
321 OUT CHAR16 **ControllerName\r
322 )\r
323/*++\r
324\r
325 Routine Description:\r
326 Retrieves a Unicode string that is the user readable name of the controller\r
327 that is being managed by an EFI Driver.\r
328\r
329 Arguments:\r
330 This - A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.\r
331 ControllerHandle - The handle of a controller that the driver specified by \r
332 This is managing. This handle specifies the controller \r
333 whose name is to be returned.\r
334 ChildHandle - The handle of the child controller to retrieve the name \r
335 of. This is an optional parameter that may be NULL. It \r
336 will be NULL for device drivers. It will also be NULL \r
337 for a bus drivers that wish to retrieve the name of the \r
338 bus controller. It will not be NULL for a bus driver \r
339 that wishes to retrieve the name of a child controller.\r
340 Language - A pointer to a three character ISO 639-2 language \r
341 identifier. This is the language of the controller name \r
342 that that the caller is requesting, and it must match one\r
343 of the languages specified in SupportedLanguages. The \r
344 number of languages supported by a driver is up to the \r
345 driver writer.\r
346 ControllerName - A pointer to the Unicode string to return. This Unicode\r
347 string is the name of the controller specified by \r
348 ControllerHandle and ChildHandle in the language \r
349 specified by Language from the point of view of the \r
350 driver specified by This. \r
351\r
352 Returns:\r
353 EFI_SUCCESS - The Unicode string for the user readable name in the\r
354 language specified by Language for the driver \r
355 specified by This was returned in DriverName.\r
356 EFI_INVALID_PARAMETER - ControllerHandle is not a valid EFI_HANDLE.\r
357 EFI_INVALID_PARAMETER - ChildHandle is not NULL and it is not a valid \r
358 EFI_HANDLE.\r
359 EFI_INVALID_PARAMETER - Language is NULL.\r
360 EFI_INVALID_PARAMETER - ControllerName is NULL.\r
361 EFI_UNSUPPORTED - The driver specified by This is not currently \r
362 managing the controller specified by \r
363 ControllerHandle and ChildHandle.\r
364 EFI_UNSUPPORTED - The driver specified by This does not support the \r
365 language specified by Language.\r
366\r
367--*/\r
368{\r
369 EFI_STATUS Status;\r
370 EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *TextOut;\r
371 //\r
372 // here ChildHandle is not an Optional parameter.\r
373 //\r
374 if (ChildHandle == NULL) {\r
375 return EFI_UNSUPPORTED;\r
376 }\r
377\r
378 Status = gBS->OpenProtocol (\r
379 ControllerHandle,\r
380 &gEfiSimpleTextOutProtocolGuid,\r
381 (VOID **) &TextOut,\r
382 NULL,\r
383 ControllerHandle,\r
384 EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
385 );\r
386 if (EFI_ERROR (Status)) {\r
387 return EFI_UNSUPPORTED;\r
388 }\r
389\r
390 return LookupUnicodeString (\r
391 Language,\r
392 gConSplitterConOutComponentName.SupportedLanguages,\r
393 mConSplitterConOutControllerNameTable,\r
394 ControllerName\r
395 );\r
396}\r
397\r
398EFI_STATUS\r
399EFIAPI\r
400ConSplitterStdErrComponentNameGetControllerName (\r
401 IN EFI_COMPONENT_NAME_PROTOCOL *This,\r
402 IN EFI_HANDLE ControllerHandle,\r
403 IN EFI_HANDLE ChildHandle OPTIONAL,\r
404 IN CHAR8 *Language,\r
405 OUT CHAR16 **ControllerName\r
406 )\r
407/*++\r
408\r
409 Routine Description:\r
410 Retrieves a Unicode string that is the user readable name of the controller\r
411 that is being managed by an EFI Driver.\r
412\r
413 Arguments:\r
414 This - A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.\r
415 ControllerHandle - The handle of a controller that the driver specified by \r
416 This is managing. This handle specifies the controller \r
417 whose name is to be returned.\r
418 ChildHandle - The handle of the child controller to retrieve the name \r
419 of. This is an optional parameter that may be NULL. It \r
420 will be NULL for device drivers. It will also be NULL \r
421 for a bus drivers that wish to retrieve the name of the \r
422 bus controller. It will not be NULL for a bus driver \r
423 that wishes to retrieve the name of a child controller.\r
424 Language - A pointer to a three character ISO 639-2 language \r
425 identifier. This is the language of the controller name \r
426 that that the caller is requesting, and it must match one\r
427 of the languages specified in SupportedLanguages. The \r
428 number of languages supported by a driver is up to the \r
429 driver writer.\r
430 ControllerName - A pointer to the Unicode string to return. This Unicode\r
431 string is the name of the controller specified by \r
432 ControllerHandle and ChildHandle in the language \r
433 specified by Language from the point of view of the \r
434 driver specified by This. \r
435\r
436 Returns:\r
437 EFI_SUCCESS - The Unicode string for the user readable name in the\r
438 language specified by Language for the driver \r
439 specified by This was returned in DriverName.\r
440 EFI_INVALID_PARAMETER - ControllerHandle is not a valid EFI_HANDLE.\r
441 EFI_INVALID_PARAMETER - ChildHandle is not NULL and it is not a valid \r
442 EFI_HANDLE.\r
443 EFI_INVALID_PARAMETER - Language is NULL.\r
444 EFI_INVALID_PARAMETER - ControllerName is NULL.\r
445 EFI_UNSUPPORTED - The driver specified by This is not currently \r
446 managing the controller specified by \r
447 ControllerHandle and ChildHandle.\r
448 EFI_UNSUPPORTED - The driver specified by This does not support the \r
449 language specified by Language.\r
450\r
451--*/\r
452{\r
453 EFI_STATUS Status;\r
454 EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *ErrOut;\r
455 //\r
456 // here ChildHandle is not an Optional parameter.\r
457 //\r
458 if (ChildHandle == NULL) {\r
459 return EFI_UNSUPPORTED;\r
460 }\r
461\r
462 Status = gBS->OpenProtocol (\r
463 ControllerHandle,\r
464 &gEfiSimpleTextOutProtocolGuid,\r
465 (VOID **) &ErrOut,\r
466 NULL,\r
467 ControllerHandle,\r
468 EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
469 );\r
470 if (EFI_ERROR (Status)) {\r
471 return EFI_UNSUPPORTED;\r
472 }\r
473\r
474 return LookupUnicodeString (\r
475 Language,\r
476 gConSplitterStdErrComponentName.SupportedLanguages,\r
477 mConSplitterStdErrControllerNameTable,\r
478 ControllerName\r
479 );\r
480}\r