NULL // DriverBindingHandle, filled as well\r
};\r
\r
+//\r
+// Component Name\r
+//\r
+\r
+STATIC EFI_UNICODE_STRING_TABLE mDriverNameTable[] = {\r
+ { "eng;en", L"PVSCSI Host Driver" },\r
+ { NULL, NULL }\r
+};\r
+\r
+STATIC EFI_COMPONENT_NAME_PROTOCOL mComponentName;\r
+\r
+STATIC\r
+EFI_STATUS\r
+EFIAPI\r
+PvScsiGetDriverName (\r
+ IN EFI_COMPONENT_NAME_PROTOCOL *This,\r
+ IN CHAR8 *Language,\r
+ OUT CHAR16 **DriverName\r
+ )\r
+{\r
+ return LookupUnicodeString2 (\r
+ Language,\r
+ This->SupportedLanguages,\r
+ mDriverNameTable,\r
+ DriverName,\r
+ (BOOLEAN)(This == &mComponentName) // Iso639Language\r
+ );\r
+}\r
+\r
+STATIC\r
+EFI_STATUS\r
+EFIAPI\r
+PvScsiGetDeviceName (\r
+ IN EFI_COMPONENT_NAME_PROTOCOL *This,\r
+ IN EFI_HANDLE DeviceHandle,\r
+ IN EFI_HANDLE ChildHandle,\r
+ IN CHAR8 *Language,\r
+ OUT CHAR16 **ControllerName\r
+ )\r
+{\r
+ return EFI_UNSUPPORTED;\r
+}\r
+\r
+STATIC EFI_COMPONENT_NAME_PROTOCOL mComponentName = {\r
+ &PvScsiGetDriverName,\r
+ &PvScsiGetDeviceName,\r
+ "eng" // SupportedLanguages, ISO 639-2 language codes\r
+};\r
+\r
+STATIC EFI_COMPONENT_NAME2_PROTOCOL mComponentName2 = {\r
+ (EFI_COMPONENT_NAME2_GET_DRIVER_NAME) &PvScsiGetDriverName,\r
+ (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME) &PvScsiGetDeviceName,\r
+ "en" // SupportedLanguages, RFC 4646 language codes\r
+};\r
+\r
//\r
// Entry Point\r
//\r
SystemTable,\r
&mPvScsiDriverBinding,\r
ImageHandle,\r
- NULL, // TODO Component name\r
- NULL // TODO Component name\r
+ &mComponentName,\r
+ &mComponentName2\r
);\r
}\r