]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
MdeModulePkg/Usb/EfiKey: Fix endpoint selection
[mirror_edk2.git] / MdeModulePkg / Bus / Usb / UsbKbDxe / UsbKbDxe.inf
CommitLineData
6bfbb5f0 1## @file\r
6036e94d 2# USB Keyboard Driver that manages USB keyboard and produces Simple Text Input(Ex) Protocol.\r
ed838d0c 3#\r
7772b176 4# USB Keyboard Driver consumes USB I/O Protocol and Device Path Protocol, and produces\r
5# Simple Text Input Protocol and Simple Text Input Ex Protocol on USB keyboard devices.\r
6# It initializes the keyboard layout according to info retrieved from HII database.\r
7# If HII cannot provide the info, this module uses its carried default one if PCD allows.\r
8# It manages the USB keyboard device via Asynchronous Interrupt Transfer of USB I/O Protocol,\r
9# and parses the data according to USB HID documents.\r
10# This module refers to following specifications:\r
11# 1. Universal Serial Bus HID Firmware Specification, ver 1.11\r
12# 2. Universal Serial Bus HID Usage Tables, ver 1.12\r
13# 3. UEFI Specification, v2.1\r
14#\r
d1102dba 15# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
ed838d0c 16#\r
9d510e61 17# SPDX-License-Identifier: BSD-2-Clause-Patent\r
ed838d0c 18#\r
19#\r
6bfbb5f0 20##\r
ed838d0c 21\r
ed838d0c 22[Defines]\r
23 INF_VERSION = 0x00010005\r
24 BASE_NAME = UsbKbDxe\r
6036e94d 25 MODULE_UNI_FILE = UsbKbDxe.uni\r
ed838d0c 26 FILE_GUID = 2D2E62CF-9ECF-43b7-8219-94E7FC713DFE\r
d3f16117 27 MODULE_TYPE = UEFI_DRIVER\r
ed838d0c 28 VERSION_STRING = 1.0\r
ed838d0c 29 ENTRY_POINT = USBKeyboardDriverBindingEntryPoint\r
30\r
31#\r
32# The following information is for reference only and not required by the build tools.\r
33#\r
de005223 34# VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64\r
ed838d0c 35#\r
d1102dba 36# DRIVER_BINDING = gUsbKeyboardDriverBinding\r
d354ab7f 37# COMPONENT_NAME = gUsbKeyboardComponentName\r
38# COMPONENT_NAME2 = gUsbKeyboardComponentName2\r
39#\r
ed838d0c 40\r
6bfbb5f0 41[Sources]\r
a7022cec 42 EfiKey.c\r
43 EfiKey.h\r
44 KeyBoard.c\r
ed838d0c 45 ComponentName.c\r
a7022cec 46 KeyBoard.h\r
ed838d0c 47\r
ed838d0c 48[Packages]\r
49 MdePkg/MdePkg.dec\r
623ad724 50 MdeModulePkg/MdeModulePkg.dec\r
ed838d0c 51\r
ed838d0c 52[LibraryClasses]\r
53 MemoryAllocationLib\r
54 UefiLib\r
55 UefiBootServicesTableLib\r
56 UefiDriverEntryPoint\r
57 UefiRuntimeServicesTableLib\r
58 BaseMemoryLib\r
59 ReportStatusCodeLib\r
60 DebugLib\r
61 PcdLib\r
dfb74df5 62 UefiUsbLib\r
c41c3e55 63 HiiLib\r
7772b176 64\r
65[Guids]\r
6036e94d 66 #\r
7772b176 67 # Event registered to EFI_HII_SET_KEYBOARD_LAYOUT_EVENT_GUID group,\r
68 # which will be triggered by EFI_HII_DATABASE_PROTOCOL.SetKeyboardLayout().\r
69 #\r
6036e94d
SZ
70 gEfiHiiKeyBoardLayoutGuid ## SOMETIMES_CONSUMES ## Event\r
71 gUsbKeyboardLayoutPackageGuid ## SOMETIMES_CONSUMES ## HII\r
72 gUsbKeyboardLayoutKeyGuid ## SOMETIMES_PRODUCES ## UNDEFINED\r
ed838d0c 73\r
ed838d0c 74[Protocols]\r
7772b176 75 gEfiUsbIoProtocolGuid ## TO_START\r
76 gEfiDevicePathProtocolGuid ## TO_START\r
77 gEfiSimpleTextInProtocolGuid ## BY_START\r
78 gEfiSimpleTextInputExProtocolGuid ## BY_START\r
6036e94d 79 #\r
7772b176 80 # If HII Database Protocol exists, then keyboard layout from HII database is used.\r
81 # Otherwise, USB keyboard module tries to use its carried default layout.\r
82 #\r
6036e94d 83 gEfiHiiDatabaseProtocolGuid ## SOMETIMES_CONSUMES\r
d1102dba 84\r
6bfbb5f0 85[FeaturePcd]\r
6036e94d 86 gEfiMdeModulePkgTokenSpaceGuid.PcdDisableDefaultKeyboardLayoutInUsbKbDriver ## CONSUMES\r
7772b176 87\r
88# [Event]\r
6036e94d 89# EVENT_TYPE_RELATIVE_TIMER ## CONSUMES\r
7772b176 90#\r
6036e94d
SZ
91\r
92[UserExtensions.TianoCore."ExtraFiles"]\r
93 UsbKbDxeExtra.uni\r