From nobody Sat May 4 09:37:48 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+52099+1787277+3901457@groups.io; helo=web01.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+52099+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1576019344; cv=none; d=zohomail.com; s=zohoarc; b=UdXNgK9gyrMdrknWSZB6r4vtmjlwFD7GriXbT570OIGVrSnupgONvRCGqollbkAZN2TBnsVABN0vKKHkvaD4OisD9YMHS+oZrYZasWBdqeEwbU53ONLGCN4+gE1yN6m5d86jP82NC4znZ6FyweB0EOlRjRcFTHlaKUxqrMZGR2c= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576019344; h=Cc:Date:From:List-Id:List-Unsubscribe:Message-ID:Reply-To:Sender:Subject:To; bh=E+uPYg2z/2R/aNfydnGA2MX7BOZJNO9i/ScqnO8zGjk=; b=cKubAi9PstgguCAKxOtkUzJNkNEh6NVux3ctbnuh31Fb7Sz+abUc7GEXA93ppfNMWSHFaFz9j5wSORxQj5+GTLtKNeggmJxDUk0lfT83mGX6TvMuma1VTxa6/r04tsUnnlROZ6ny8W93LwLpbpadUdyjgB47a6deUUr2h2BXcOM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+52099+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1576019344397429.19920107322; Tue, 10 Dec 2019 15:09:04 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id 6xHwYY1788612xbpoF3H1Yip; Tue, 10 Dec 2019 15:09:03 -0800 X-Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mx.groups.io with SMTP id smtpd.web09.1931.1576019342970827582 for ; Tue, 10 Dec 2019 15:09:03 -0800 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False X-Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 10 Dec 2019 15:09:01 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,301,1571727600"; d="scan'208";a="413284559" X-Received: from gdong1-mobl.amr.corp.intel.com ([10.78.24.40]) by fmsmga005.fm.intel.com with ESMTP; 10 Dec 2019 15:09:01 -0800 From: "Guo Dong" To: devel@edk2.groups.io Cc: maurice.ma@intel.com, benjamin.you@intel.com, guo.dong@intel.com, u14935@gmail.com Subject: [edk2-devel] [PATCH] UefiPayloadPkg/BootManager: Add PS2 keyboard support Date: Tue, 10 Dec 2019 16:08:51 -0700 Message-Id: <20191210230851.17712-1-guo.dong@intel.com> Precedence: Bulk List-Unsubscribe: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,guo.dong@intel.com X-Gm-Message-State: Bo0tirdBVWzsRnlLHLl7JWVYx1787277AA= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1576019343; bh=bZ8A+4V9FY8kS0m/Zvjewglur663zTTDYrpr8TiDfoA=; h=Cc:Date:From:Reply-To:Subject:To; b=rIEh0heyPS2pzBHxEaG4Ii16O3R0fU3URVaABucEaja2NtU58HZgpaBRyYdunxgA091 dR7G3ZbZnm1Q8h7x2HV341hkQVM3WoO/ydOXxZ+WvZheO8ipnwO/p+ECMAs4WfMyngw4e W99HMJXm8tbQfruhzEIp8BPPCj62aCzL0yc= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Add PS2 keyboard support by default. REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3D2316 This patch adds PS2 keyboard support in boot manager, and build PS2 keyboard driver and SIO driver by default. Signed-off-by: Guo Dong --- UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformConsole.c | 25 +++++= +++++++++++++++----- UefiPayloadPkg/UefiPayloadPkg.fdf | 2 ++ UefiPayloadPkg/UefiPayloadPkgIa32.dsc | 2 ++ UefiPayloadPkg/UefiPayloadPkgIa32X64.dsc | 2 ++ 4 files changed, 26 insertions(+), 5 deletions(-) diff --git a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformConsole.= c b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformConsole.c index ee2d8c8d1e..a27cc552ab 100644 --- a/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformConsole.c +++ b/UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformConsole.c @@ -44,6 +44,9 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #define gPnp16550ComPort \ PNPID_DEVICE_PATH_NODE(0x0501) =20 +#define gPnpPs2Keyboard \ + PNPID_DEVICE_PATH_NODE(0x0303) + #define gUartVendor \ { \ { \ @@ -87,7 +90,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent DEVICE_PATH_MESSAGING_PC_ANSI \ } =20 - +ACPI_HID_DEVICE_PATH gPnpPs2KeyboardDeviceNode =3D gPnpPs2Keyboard; ACPI_HID_DEVICE_PATH gPnp16550ComPortDeviceNode =3D gPnp16550ComPort; UART_DEVICE_PATH gUartDeviceNode =3D gUart; VENDOR_DEVICE_PATH gTerminalTypeDeviceNode =3D gPcAnsiTerminal; @@ -109,12 +112,15 @@ EFI_DEVICE_PATH_PROTOCOL *gPlatformRootBridg= es[] =3D { BOOLEAN mDetectVgaOnly; =20 /** - Add UART to ConOut, ConIn, ErrOut. + Add IsaKeyboard to ConIn; add IsaSerial to ConOut, ConIn, ErrOut. =20 - @param[in] DeviceHandle - LPC device path. + @param[in] DeviceHandle Handle of the LPC Bridge device. =20 - @retval EFI_SUCCESS - Serial console is added to ConOut, ConIn, and Err= Out. - @retval EFI_STATUS - No serial console is added. + @retval EFI_SUCCESS Console devices on the LPC bridge have been added to + ConOut, ConIn, and ErrOut. + + @return Error codes, due to EFI_DEVICE_PATH_PROTOCOL missing + from DeviceHandle. **/ EFI_STATUS PrepareLpcBridgeDevicePath ( @@ -123,6 +129,7 @@ PrepareLpcBridgeDevicePath ( { EFI_STATUS Status; EFI_DEVICE_PATH_PROTOCOL *DevicePath; + EFI_DEVICE_PATH_PROTOCOL *TempDevicePath; =20 DevicePath =3D NULL; Status =3D gBS->HandleProtocol ( @@ -133,10 +140,18 @@ PrepareLpcBridgeDevicePath ( if (EFI_ERROR (Status)) { return Status; } + TempDevicePath =3D DevicePath; + + // + // Register Keyboard + // + DevicePath =3D AppendDevicePathNode (DevicePath, (EFI_DEVICE_PATH_PROTOC= OL *)&gPnpPs2KeyboardDeviceNode); + EfiBootManagerUpdateConsoleVariable (ConIn, DevicePath, NULL); =20 // // Register COM1 // + DevicePath =3D TempDevicePath; DevicePath =3D AppendDevicePathNode ((EFI_DEVICE_PATH_PROTOCOL *)NULL, (= EFI_DEVICE_PATH_PROTOCOL *)&gUartDeviceVendorNode); DevicePath =3D AppendDevicePathNode (DevicePath, (EFI_DEVICE_PATH_PROTOC= OL *)&gUartDeviceNode); DevicePath =3D AppendDevicePathNode (DevicePath, (EFI_DEVICE_PATH_PROTOC= OL *)&gTerminalTypeDeviceNode); diff --git a/UefiPayloadPkg/UefiPayloadPkg.fdf b/UefiPayloadPkg/UefiPayload= Pkg.fdf index 4cd88a3f85..b20ab82f47 100644 --- a/UefiPayloadPkg/UefiPayloadPkg.fdf +++ b/UefiPayloadPkg/UefiPayloadPkg.fdf @@ -120,6 +120,8 @@ INF MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridge= Dxe.inf # ISA Support # INF MdeModulePkg/Universal/SerialDxe/SerialDxe.inf +INF OvmfPkg/SioBusDxe/SioBusDxe.inf +INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf =20 # # Console Support diff --git a/UefiPayloadPkg/UefiPayloadPkgIa32.dsc b/UefiPayloadPkg/UefiPay= loadPkgIa32.dsc index 11cf17ca06..c9c2a87940 100644 --- a/UefiPayloadPkg/UefiPayloadPkgIa32.dsc +++ b/UefiPayloadPkg/UefiPayloadPkgIa32.dsc @@ -491,6 +491,8 @@ # ISA Support # MdeModulePkg/Universal/SerialDxe/SerialDxe.inf + OvmfPkg/SioBusDxe/SioBusDxe.inf + MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf =20 # # Console Support diff --git a/UefiPayloadPkg/UefiPayloadPkgIa32X64.dsc b/UefiPayloadPkg/Uefi= PayloadPkgIa32X64.dsc index 5b7994a62c..8dfc9e189c 100644 --- a/UefiPayloadPkg/UefiPayloadPkgIa32X64.dsc +++ b/UefiPayloadPkg/UefiPayloadPkgIa32X64.dsc @@ -492,6 +492,8 @@ # ISA Support # MdeModulePkg/Universal/SerialDxe/SerialDxe.inf + OvmfPkg/SioBusDxe/SioBusDxe.inf + MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf =20 # # Console Support --=20 2.16.2.windows.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52099): https://edk2.groups.io/g/devel/message/52099 Mute This Topic: https://groups.io/mt/68007392/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-