[edk2-devel] [PATCH 03/17] OvmfPkg/PvScsiDxe: Report name of driver
Laszlo Ersek
lersek at redhat.com
Tue Mar 24 11:29:33 UTC 2020
On 03/16/20 16:00, Liran Alon wrote:
> Install Component Name protocols to have a nice display name for the
> driver in places such as UEFI shell.
>
> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2567
> Reviewed-by: Nikita Leshenko <nikita.leshchenko at oracle.com>
> Signed-off-by: Liran Alon <liran.alon at oracle.com>
> ---
> OvmfPkg/PvScsiDxe/PvScsi.c | 63 ++++++++++++++++++++++++++++++++++++--
> 1 file changed, 61 insertions(+), 2 deletions(-)
>
> diff --git a/OvmfPkg/PvScsiDxe/PvScsi.c b/OvmfPkg/PvScsiDxe/PvScsi.c
> index bf0c743bad15..0c81e645de08 100644
> --- a/OvmfPkg/PvScsiDxe/PvScsi.c
> +++ b/OvmfPkg/PvScsiDxe/PvScsi.c
> @@ -68,6 +68,65 @@ EFI_DRIVER_BINDING_PROTOCOL mPvScsiDriverBinding = {
> NULL // DriverBindingHandle, filled as well
> };
>
> +//
> +// Component Name
> +//
> +
> +STATIC
> +EFI_UNICODE_STRING_TABLE mDriverNameTable[] = {
> + { "eng;en", L"PVSCSI Host Driver" },
> + { NULL, NULL }
> +};
> +
> +STATIC
> +EFI_COMPONENT_NAME_PROTOCOL mComponentName;
> +
> +STATIC
> +EFI_STATUS
> +EFIAPI
> +PvScsiGetDriverName (
> + IN EFI_COMPONENT_NAME_PROTOCOL *This,
> + IN CHAR8 *Language,
> + OUT CHAR16 **DriverName
> + )
> +{
> + return LookupUnicodeString2 (
> + Language,
> + This->SupportedLanguages,
> + mDriverNameTable,
> + DriverName,
> + (BOOLEAN)(This == &mComponentName) // Iso639Language
> + );
> +}
> +
> +STATIC
> +EFI_STATUS
> +EFIAPI
> +PvScsiGetDeviceName (
> + IN EFI_COMPONENT_NAME_PROTOCOL *This,
> + IN EFI_HANDLE DeviceHandle,
> + IN EFI_HANDLE ChildHandle,
> + IN CHAR8 *Language,
> + OUT CHAR16 **ControllerName
> + )
> +{
> + return EFI_UNSUPPORTED;
> +}
> +
> +STATIC
> +EFI_COMPONENT_NAME_PROTOCOL mComponentName = {
> + &PvScsiGetDriverName,
> + &PvScsiGetDeviceName,
> + "eng" // SupportedLanguages, ISO 639-2 language codes
> +};
> +
> +STATIC
> +EFI_COMPONENT_NAME2_PROTOCOL mComponentName2 = {
> + (EFI_COMPONENT_NAME2_GET_DRIVER_NAME) &PvScsiGetDriverName,
> + (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME) &PvScsiGetDeviceName,
> + "en" // SupportedLanguages, RFC 4646 language codes
> +};
> +
> //
> // Entry Point
> //
> @@ -84,7 +143,7 @@ PvScsiEntryPoint (
> SystemTable,
> &mPvScsiDriverBinding,
> ImageHandle,
> - NULL, // TODO Component name
> - NULL // TODO Component name
> + &mComponentName,
> + &mComponentName2
> );
> }
>
Reviewed-by: Laszlo Ersek <lersek at redhat.com>
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#56146): https://edk2.groups.io/g/devel/message/56146
Mute This Topic: https://groups.io/mt/72001288/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list