From: "Agyeman, Prince" <prince.agyeman@intel.com>
To: devel@edk2.groups.io
Cc: Michael Kubacki <michael.a.kubacki@intel.com>,
Chasel Chiu <chasel.chiu@intel.com>,
Nate DeSimone <nathaniel.l.desimone@intel.com>
Subject: [edk2-platforms] [Patch v2 2/9] SimicsOpenBoardPkg: Remove Super I/O DXE driver
Date: Tue, 5 Nov 2019 17:25:56 -0800 [thread overview]
Message-ID: <20191106012603.4724-3-prince.agyeman@intel.com> (raw)
In-Reply-To: <20191106012603.4724-1-prince.agyeman@intel.com>
Removed the Super I/O DXE driver from SimicsOpenBoardPkg.
This driver will be added to the BoardModulePky as it is
generic and can be shared by other open board packages
Cc: Michael Kubacki <michael.a.kubacki@intel.com>
Cc: Chasel Chiu <chasel.chiu@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Signed-off-by: Prince Agyeman <prince.agyeman@intel.com>
---
.../BoardX58Ich10/OpenBoardPkg.dsc | 1 -
.../BoardX58Ich10/OpenBoardPkg.fdf | 1 -
.../LegacySioDxe/ComponentName.c | 173 -----
.../LegacySioDxe/ComponentName.h | 87 ---
.../LegacySioDxe/LegacySioDxe.inf | 54 --
.../LegacySioDxe/Register.h | 15 -
.../SimicsOpenBoardPkg/LegacySioDxe/SioChip.c | 272 --------
.../SimicsOpenBoardPkg/LegacySioDxe/SioChip.h | 195 ------
.../LegacySioDxe/SioDriver.c | 600 ------------------
.../LegacySioDxe/SioDriver.h | 134 ----
.../LegacySioDxe/SioService.c | 249 --------
.../LegacySioDxe/SioService.h | 143 -----
12 files changed, 1924 deletions(-)
delete mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/ComponentName.c
delete mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/ComponentName.h
delete mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/LegacySioDxe.inf
delete mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/Register.h
delete mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioChip.c
delete mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioChip.h
delete mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioDriver.c
delete mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioDriver.h
delete mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioService.c
delete mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioService.h
diff --git a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc
index 78f1e80990..e0a02b4efc 100644
--- a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc
+++ b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc
@@ -280,7 +280,6 @@
#######################################
$(BOARD_PKG)/AcpiTables/AcpiTables.inf
$(BOARD_PKG)/AcpiTables/MinPlatformAcpiTables/AcpiPlatform.inf
- $(BOARD_PKG)/LegacySioDxe/LegacySioDxe.inf
$(BOARD_PKG)/SimicsDxe/SimicsDxe.inf
$(BOARD_PKG)/SimicsVideoDxe/SimicsVideoDxe.inf
$(BOARD_PKG)/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
diff --git a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf
index 39226251a7..6dc7b4aa56 100644
--- a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf
+++ b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf
@@ -213,7 +213,6 @@ INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
INF MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceSmm.inf
INF MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf
-INF $(BOARD_PKG)/LegacySioDxe/LegacySioDxe.inf
INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf
INF $(BOARD_PKG)/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
diff --git a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/ComponentName.c b/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/ComponentName.c
deleted file mode 100644
index 4ba02f92c0..0000000000
--- a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/ComponentName.c
+++ /dev/null
@@ -1,173 +0,0 @@
-/** @file
- Install Base and Size Info Ppi for Firmware Volume Recovery.
-
- Copyright (c) 2013 - 2019 Intel Corporation. All rights reserved. <BR>
-
- SPDX-License-Identifier: BSD-2-Clause-Patent
-**/
-
-#include "SioDriver.h"
-
-///
-/// Component Name Protocol instance
-///
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL mSioComponentName = {
- SioComponentNameGetDriverName,
- SioComponentNameGetControllerName,
- "eng"
-};
-
-///
-/// Component Name 2 Protocol instance
-///
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL mSioComponentName2 = {
- (EFI_COMPONENT_NAME2_GET_DRIVER_NAME) SioComponentNameGetDriverName,
- (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME)SioComponentNameGetControllerName,
- "en"
-};
-
-///
-/// Table of driver names
-///
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mSioDriverNameTable[] = {
- {
- "eng;en",
- L"Super I/O Driver"
- },
- {
- NULL,
- NULL
- }
-};
-
-///
-/// Table of Controller names
-///
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mSioControllerNameTable[] = {
- {
- "eng;en",
- L"Super I/O Controller"
- },
- {
- NULL,
- NULL
- }
-};
-
-/**
- Retrieves a Unicode string that is the user-readable name of the EFI Driver.
-
- @param This A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.
- @param Language A pointer to a three-character ISO 639-2 language identifier.
- This is the language of the driver name that that the caller
- is requesting, and it must match one of the languages specified
- in SupportedLanguages. The number of languages supported by a
- driver is up to the driver writer.
- @param DriverName A pointer to the Unicode string to return. This Unicode string
- is the name of the driver specified by This in the language
- specified by Language.
-
- @retval EFI_SUCCESS The Unicode string for the Driver specified by This
- and the language specified by Language was returned
- in DriverName.
- @retval EFI_INVALID_PARAMETER Language is NULL.
- @retval EFI_INVALID_PARAMETER DriverName is NULL.
- @retval EFI_UNSUPPORTED The driver specified by This does not support the
- language specified by Language.
-
-**/
-EFI_STATUS
-EFIAPI
-SioComponentNameGetDriverName (
- IN EFI_COMPONENT_NAME_PROTOCOL *This,
- IN CHAR8 *Language,
- OUT CHAR16 **DriverName
- )
-{
- return LookupUnicodeString2 (
- Language,
- This->SupportedLanguages,
- mSioDriverNameTable,
- DriverName,
- (BOOLEAN)(This == &mSioComponentName)
- );
-}
-
-/**
- Retrieves a Unicode string that is the user readable name of the controller
- that is being managed by an EFI Driver.
-
- @param This A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.
- @param ControllerHandle The handle of a controller that the driver specified by
- This is managing. This handle specifies the controller
- whose name is to be returned.
- @param ChildHandle The handle of the child controller to retrieve the name
- of. This is an optional parameter that may be NULL. It
- will be NULL for device drivers. It will also be NULL
- for a bus drivers that wish to retrieve the name of the
- bus controller. It will not be NULL for a bus driver
- that wishes to retrieve the name of a child controller.
- @param Language A pointer to a three character ISO 639-2 language
- identifier. This is the language of the controller name
- that the caller is requesting, and it must match one
- of the languages specified in SupportedLanguages. The
- number of languages supported by a driver is up to the
- driver writer.
- @param ControllerName A pointer to the Unicode string to return. This Unicode
- string is the name of the controller specified by
- ControllerHandle and ChildHandle in the language specified
- by Language, from the point of view of the driver specified
- by This.
-
- @retval EFI_SUCCESS The Unicode string for the user-readable name in the
- language specified by Language for the driver
- specified by This was returned in DriverName.
- @retval EFI_INVALID_PARAMETER ControllerHandle is NULL.
- @retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE.
- @retval EFI_INVALID_PARAMETER Language is NULL.
- @retval EFI_INVALID_PARAMETER ControllerName is NULL.
- @retval EFI_UNSUPPORTED The driver specified by This is not currently managing
- the controller specified by ControllerHandle and
- ChildHandle.
- @retval EFI_UNSUPPORTED The driver specified by This does not support the
- language specified by Language.
-
-**/
-EFI_STATUS
-EFIAPI
-SioComponentNameGetControllerName (
- IN EFI_COMPONENT_NAME_PROTOCOL *This,
- IN EFI_HANDLE ControllerHandle,
- IN EFI_HANDLE ChildHandle OPTIONAL,
- IN CHAR8 *Language,
- OUT CHAR16 **ControllerName
- )
-{
- EFI_STATUS Status;
-
- //
- // Make sure this driver is currently managing ControllHandle
- //
- Status = EfiTestManagedDevice (
- ControllerHandle,
- mSioDriver.DriverBindingHandle,
- &gEfiPciIoProtocolGuid
- );
- if (EFI_ERROR (Status)) {
- return Status;
- }
- //
- // ChildHandle must be NULL for a Device Driver
- //
- if (ChildHandle != NULL) {
- return EFI_UNSUPPORTED;
- }
-
- return LookupUnicodeString2 (
- Language,
- This->SupportedLanguages,
- mSioControllerNameTable,
- ControllerName,
- (BOOLEAN)(This == &mSioComponentName)
- );
-}
diff --git a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/ComponentName.h b/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/ComponentName.h
deleted file mode 100644
index 5368f94bcd..0000000000
--- a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/ComponentName.h
+++ /dev/null
@@ -1,87 +0,0 @@
-/** @file
- Install Base and Size Info Ppi for Firmware Volume Recovery.
-
- Copyright (c) 2013 - 2019 Intel Corporation. All rights reserved. <BR>
-
- SPDX-License-Identifier: BSD-2-Clause-Patent
-**/
-
-/**
- Retrieves a Unicode string that is the user-readable name of the EFI Driver.
-
- @param This A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.
- @param Language A pointer to a three-character ISO 639-2 language identifier.
- This is the language of the driver name that that the caller
- is requesting, and it must match one of the languages specified
- in SupportedLanguages. The number of languages supported by a
- driver is up to the driver writer.
- @param DriverName A pointer to the Unicode string to return. This Unicode string
- is the name of the driver specified by This in the language
- specified by Language.
-
- @retval EFI_SUCCESS The Unicode string for the Driver specified by This
- and the language specified by Language was returned
- in DriverName.
- @retval EFI_INVALID_PARAMETER Language is NULL.
- @retval EFI_INVALID_PARAMETER DriverName is NULL.
- @retval EFI_UNSUPPORTED The driver specified by This does not support the
- language specified by Language.
-
-**/
-EFI_STATUS
-EFIAPI
-SioComponentNameGetDriverName (
- IN EFI_COMPONENT_NAME_PROTOCOL *This,
- IN CHAR8 *Language,
- OUT CHAR16 **DriverName
- );
-
-/**
- Retrieves a Unicode string that is the user readable name of the controller
- that is being managed by an EFI Driver.
-
- @param This A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.
- @param ControllerHandle The handle of a controller that the driver specified by
- This is managing. This handle specifies the controller
- whose name is to be returned.
- @param ChildHandle The handle of the child controller to retrieve the name
- of. This is an optional parameter that may be NULL. It
- will be NULL for device drivers. It will also be NULL
- for a bus drivers that wish to retrieve the name of the
- bus controller. It will not be NULL for a bus driver
- that wishes to retrieve the name of a child controller.
- @param Language A pointer to a three character ISO 639-2 language
- identifier. This is the language of the controller name
- that the caller is requesting, and it must match one
- of the languages specified in SupportedLanguages. The
- number of languages supported by a driver is up to the
- driver writer.
- @param ControllerName A pointer to the Unicode string to return. This Unicode
- string is the name of the controller specified by
- ControllerHandle and ChildHandle in the language specified
- by Language, from the point of view of the driver specified
- by This.
-
- @retval EFI_SUCCESS The Unicode string for the user-readable name in the
- language specified by Language for the driver
- specified by This was returned in DriverName.
- @retval EFI_INVALID_PARAMETER ControllerHandle is NULL.
- @retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE.
- @retval EFI_INVALID_PARAMETER Language is NULL.
- @retval EFI_INVALID_PARAMETER ControllerName is NULL.
- @retval EFI_UNSUPPORTED The driver specified by This is not currently managing
- the controller specified by ControllerHandle and
- ChildHandle.
- @retval EFI_UNSUPPORTED The driver specified by This does not support the
- language specified by Language.
-
-**/
-EFI_STATUS
-EFIAPI
-SioComponentNameGetControllerName (
- IN EFI_COMPONENT_NAME_PROTOCOL *This,
- IN EFI_HANDLE ControllerHandle,
- IN EFI_HANDLE ChildHandle OPTIONAL,
- IN CHAR8 *Language,
- OUT CHAR16 **ControllerName
- );
diff --git a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/LegacySioDxe.inf b/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/LegacySioDxe.inf
deleted file mode 100644
index 275f36ca47..0000000000
--- a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/LegacySioDxe.inf
+++ /dev/null
@@ -1,54 +0,0 @@
-## @file
-# Module information that produces the
-# EFI_SIO_PROTOCOL.
-#
-# Copyright (c) 2010 - 2019 Intel Corporation. All rights reserved. <BR>
-#
-# SPDX-License-Identifier: BSD-2-Clause-Patent
-#
-##
-
-[Defines]
- INF_VERSION = 0x00010017
- BASE_NAME = HitachiH8s2113Dxe
- FILE_GUID = 7807E404-8281-4FF1-8457-0B54BABE263F
- VERSION_STRING = 1.0
- MODULE_TYPE = UEFI_DRIVER
- ENTRY_POINT = SioDriverEntryPoint
-#
-# The following information is for reference only and not required by the build tools.
-#
-# VALID_ARCHITECTURES = IA32 X64 IPF EBC
-#
-
-[LibraryClasses]
- BaseLib
- UefiLib
- DebugLib
- MemoryAllocationLib
- PcdLib
- DevicePathLib
- IoLib
- UefiDriverEntryPoint
- UefiBootServicesTableLib
- S3BootScriptLib
- S3IoLib
-
-[Packages]
- MdePkg/MdePkg.dec
- MdeModulePkg/MdeModulePkg.dec
-
-[Sources]
- SioChip.c
- SioChip.h
- SioService.c
- SioService.h
- SioDriver.c
- SioDriver.h
- ComponentName.c
-
-[Protocols]
- gEfiPciIoProtocolGuid ## CONSUMES
- gEfiDevicePathProtocolGuid ## PRODUCES
- gEfiSioProtocolGuid ## PRODUCES
-
diff --git a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/Register.h b/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/Register.h
deleted file mode 100644
index f61f713cf2..0000000000
--- a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/Register.h
+++ /dev/null
@@ -1,15 +0,0 @@
-/** @file
- Super I/O register definitions
-
- Copyright (c) 2010 - 2019 Intel Corporation. All rights reserved. <BR>
-
- SPDX-License-Identifier: BSD-2-Clause-Patent
-**/
-
-#ifndef _REGISTER_H_
-#define _REGISTER_H_
-
-#define EC_COMMAND_PORT 0x66
-#define EC_DATA_PORT 0x62
-
-#endif
diff --git a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioChip.c b/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioChip.c
deleted file mode 100644
index b9a7b9cd24..0000000000
--- a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioChip.c
+++ /dev/null
@@ -1,272 +0,0 @@
-/** @file
- Super I/O specific implementation.
-
- Copyright (c) 2010 - 2019 Intel Corporation. All rights reserved. <BR>
-
- SPDX-License-Identifier: BSD-2-Clause-Patent
-**/
-
-#include "SioDriver.h"
-#include <Library/S3IoLib.h>
-
-LOCAL_IO_WRITE8 mIoWrite8 = IoWrite8;
-//
-// System configuration (setup) information
-//
-// SYSTEM_CONFIGURATION mSystemConfiguration;
-
-//
-// COM 1 UART Controller
-//
-ACPI_SIO_RESOURCES_IO_IRQ mCom1Resources = {
- {
- { ACPI_FIXED_LOCATION_IO_PORT_DESCRIPTOR },
- 0x3f8,
- 8
- },
- {
- { ACPI_IRQ_NOFLAG_DESCRIPTOR },
- BIT4 // IRQ4
- },
- {
- ACPI_END_TAG_DESCRIPTOR,
- 0
- }
-};
-
-//
-// PS/2 Keyboard Controller
-//
-ACPI_SIO_RESOURCES_IO_IRQ mKeyboardResources = {
- {
- { ACPI_FIXED_LOCATION_IO_PORT_DESCRIPTOR },
- 0x60,
- 5
- },
- {
- { ACPI_IRQ_NOFLAG_DESCRIPTOR },
- BIT1
- },
- {
- ACPI_END_TAG_DESCRIPTOR,
- 0
- }
-};
-
-//
-// PS/2 Mouse Controller
-//
-ACPI_SIO_RESOURCES_IO_IRQ mMouseResources = {
- {
- { ACPI_FIXED_LOCATION_IO_PORT_DESCRIPTOR },
- 0x60,
- 5
- },
- {
- { ACPI_IRQ_NOFLAG_DESCRIPTOR },
- BIT12
- },
- {
- ACPI_END_TAG_DESCRIPTOR,
- 0
- }
-};
-
-//
-// Table of SIO Controllers
-//
-DEVICE_INFO mDeviceInfo[] = {
- {
- {
- EISA_PNP_ID(0x501),
- 0
- },
- 0,
- RESOURCE_IO | RESOURCE_IRQ,
- { (ACPI_SMALL_RESOURCE_HEADER *) &mCom1Resources },
- { (ACPI_SMALL_RESOURCE_HEADER *) &mCom1Resources }
- }, // COM 1 UART Controller
- {
- {
- EISA_PNP_ID(0x303),
- 0
- },
- 0,
- 0, // Cannot change resource
- { (ACPI_SMALL_RESOURCE_HEADER *) &mKeyboardResources },
- { (ACPI_SMALL_RESOURCE_HEADER *) &mKeyboardResources }
- }, // PS/2 Keyboard Controller
- {
- {
- EISA_PNP_ID(0xF03),
- 0
- },
- 0,
- 0, // Cannot change resource
- { (ACPI_SMALL_RESOURCE_HEADER *) &mMouseResources },
- { (ACPI_SMALL_RESOURCE_HEADER *) &mMouseResources }
- } // PS/2 Mouse Controller
-};
-
-
-/**
- Return the supported devices.
-
- @param[out] Devices Pointer to pointer of EFI_SIO_ACPI_DEVICE_ID.
- Caller is responsible to free the buffer.
- @param[out] Count Pointer to UINTN holding the device count.
-**/
-VOID
-DeviceGetList (
- OUT EFI_SIO_ACPI_DEVICE_ID **Devices,
- OUT UINTN *Count
- )
-{
- EFI_SIO_ACPI_DEVICE_ID *LocalDevices;
- UINTN LocalCount;
- UINTN DeviceCount;
- UINTN Index;
-
- //
- // Allocate enough memory for simplicity
- //
- DeviceCount = sizeof (mDeviceInfo) / sizeof (mDeviceInfo[0]);
- LocalDevices = AllocatePool (sizeof (EFI_SIO_ACPI_DEVICE_ID) * DeviceCount);
- ASSERT (LocalDevices != NULL);
- if (LocalDevices == NULL) {
- return;
- }
- LocalCount = 0;
-
- for (Index = 0; Index < DeviceCount; Index++) {
- CopyMem (&LocalDevices[LocalCount], &mDeviceInfo[Index].Device, sizeof (EFI_SIO_ACPI_DEVICE_ID));
- LocalCount++;
- }
-
- *Devices = LocalDevices;
- *Count = LocalCount;
-}
-
-
-/**
- Super I/O controller initialization.
-
- @retval EFI_SUCCESS The super I/O controller is found and initialized.
- @retval EFI_UNSUPPORTED The super I/O controller is not found.
-**/
-EFI_STATUS
-SioInit (
- VOID
- )
-{
-
- return EFI_SUCCESS;
-}
-
-
-/**
- Find the DEVICE_INFO for specified Device.
-
- @param[in] Device Pointer to the EFI_SIO_ACPI_DEVICE_ID.
-
- @retval DEVICE_INFO* Pointer to the DEVICE_INFO.
-**/
-DEVICE_INFO *
-DeviceSearch (
- IN EFI_SIO_ACPI_DEVICE_ID *Device
- )
-{
- UINTN Index;
-
- for (Index = 0; Index < sizeof (mDeviceInfo) / sizeof (mDeviceInfo[0]); Index++) {
- if (CompareMem (Device, &mDeviceInfo[Index].Device, sizeof (*Device)) == 0) {
- return &mDeviceInfo[Index];
- }
- }
-
- ASSERT (FALSE);
- return NULL;
-}
-
-
-/**
- Program the SIO chip to enable the specified device using the default resource.
-
- @param[in] Device Pointer to EFI_SIO_ACPI_DEVICE_ID.
-**/
-VOID
-DeviceEnable (
- IN EFI_SIO_ACPI_DEVICE_ID *Device
- )
-{
-}
-
-
-/**
- Get the ACPI resources for specified device.
-
- @param[in] Device Pointer to EFI_SIO_ACPI_DEVICE_ID.
- @param[out] Resources Pointer to ACPI_RESOURCE_HEADER_PTR.
-
- @retval EFI_SUCCESS The resources are returned successfully.
-**/
-EFI_STATUS
-DeviceGetResources (
- IN EFI_SIO_ACPI_DEVICE_ID *Device,
- OUT ACPI_RESOURCE_HEADER_PTR *Resources
- )
-{
- DEVICE_INFO *DeviceInfo;
-
- DeviceInfo = DeviceSearch (Device);
-
- *Resources = DeviceInfo->Resources;
-
- return EFI_SUCCESS;
-}
-
-
-/**
- Set the ACPI resources for specified device.
-
- The SIO chip is programmed to use the new resources and the
- resources setting are saved. The function assumes the resources
- are valid.
-
- @param[in] Device Pointer to EFI_SIO_ACPI_DEVICE_ID.
- @param[in] Resources ACPI_RESOURCE_HEADER_PTR.
-
- @retval EFI_UNSUPPORTED
-**/
-EFI_STATUS
-DeviceSetResources (
- IN EFI_SIO_ACPI_DEVICE_ID *Device,
- IN ACPI_RESOURCE_HEADER_PTR Resources
- )
-{
- return EFI_UNSUPPORTED;
-}
-
-
-/**
- Get the possible ACPI resources for specified device.
-
- @param[in] Device Pointer to EFI_SIO_ACPI_DEVICE_ID.
- @param[out] Resources Pointer to ACPI_RESOURCE_HEADER_PTR.
-
- @retval EFI_SUCCESS The resources are returned successfully.
-**/
-EFI_STATUS
-DevicePossibleResources (
- IN EFI_SIO_ACPI_DEVICE_ID *Device,
- OUT ACPI_RESOURCE_HEADER_PTR *Resources
- )
-{
- DEVICE_INFO *DeviceInfo;
-
- DeviceInfo = DeviceSearch (Device);
-
- *Resources = DeviceInfo->PossibleResources;
-
- return EFI_SUCCESS;
-}
diff --git a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioChip.h b/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioChip.h
deleted file mode 100644
index 48e28c44b0..0000000000
--- a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioChip.h
+++ /dev/null
@@ -1,195 +0,0 @@
-/** @file
- Super I/O specific header.
-
- Copyright (c) 2010 - 2019 Intel Corporation. All rights reserved. <BR>
-
- SPDX-License-Identifier: BSD-2-Clause-Patent
-**/
-
-#ifndef _SIO_H_
-#define _SIO_H_
-
-
-#include "Register.h"
-
-typedef
-UINT8
-(EFIAPI *LOCAL_IO_WRITE8) (
- IN UINTN Port,
- IN UINT8 Value
- );
-
-#define RESOURCE_IO BIT0
-#define RESOURCE_IRQ BIT1
-#define RESOURCE_DMA BIT2
-#define RESOURCE_MEM BIT3
-
-#pragma pack(1)
-
-typedef struct {
- EFI_ACPI_FIXED_LOCATION_IO_PORT_DESCRIPTOR Io;
- EFI_ACPI_IRQ_NOFLAG_DESCRIPTOR Irq;
- EFI_ACPI_END_TAG_DESCRIPTOR End;
-} ACPI_SIO_RESOURCES_IO_IRQ;
-#pragma pack()
-
-typedef struct {
- UINT32 HID;
- UINT32 UID;
-} EFI_SIO_ACPI_DEVICE_ID;
-
-typedef struct {
- EFI_SIO_ACPI_DEVICE_ID Device;
- UINT8 DeviceId;
- UINT8 ResourceMask;
- ACPI_RESOURCE_HEADER_PTR Resources;
- ACPI_RESOURCE_HEADER_PTR PossibleResources;
-} DEVICE_INFO;
-
-
-/**
- Initialize the SIO chip for S3.
-**/
-VOID
-SioInitForS3 (
- VOID
- );
-
-
-/**
- Return the supported devices.
-
- @param[out] Devices Pointer to pointer of EFI_SIO_ACPI_DEVICE_ID.
- Caller is responsible to free the buffer.
- @param[out] Count Pointer to UINTN holding the device count.
-**/
-VOID
-DeviceGetList (
- OUT EFI_SIO_ACPI_DEVICE_ID **Devices,
- OUT UINTN *Count
- );
-
-
-/**
- Program the SIO chip to enable the specified device using the default resource.
-
- @param[in] Device Pointer to EFI_SIO_ACPI_DEVICE_ID.
-**/
-VOID
-DeviceEnable (
- IN EFI_SIO_ACPI_DEVICE_ID *Device
- );
-
-
-/**
- Get the possible ACPI resources for specified device.
-
- @param[in] Device Pointer to EFI_SIO_ACPI_DEVICE_ID.
- @param[out] Resources Pointer to ACPI_RESOURCE_HEADER_PTR.
-
- @retval EFI_SUCCESS The resources are returned successfully.
-**/
-EFI_STATUS
-DevicePossibleResources (
- IN EFI_SIO_ACPI_DEVICE_ID *Device,
- OUT ACPI_RESOURCE_HEADER_PTR *Resources
- );
-
-
-/**
- Set the ACPI resources for specified device.
-
- The SIO chip is programmed to use the new resources and the
- resources setting are saved. The function assumes the resources
- are valid.
-
- @param[in] Device Pointer to EFI_SIO_ACPI_DEVICE_ID.
- @param[in] Resources ACPI_RESOURCE_HEADER_PTR.
-
- @retval EFI_SUCCESS The resources are set successfully.
-**/
-EFI_STATUS
-DeviceSetResources (
- IN EFI_SIO_ACPI_DEVICE_ID *Device,
- IN ACPI_RESOURCE_HEADER_PTR Resources
- );
-
-
-/**
- Get the ACPI resources for specified device.
-
- @param[in] Device Pointer to EFI_SIO_ACPI_DEVICE_ID.
- @param[out] Resources Pointer to ACPI_RESOURCE_HEADER_PTR.
-
- @retval EFI_SUCCESS The resources are returned successfully.
-**/
-EFI_STATUS
-DeviceGetResources (
- IN EFI_SIO_ACPI_DEVICE_ID *Device,
- OUT ACPI_RESOURCE_HEADER_PTR *Resources
- );
-
-
-/**
- Program the SIO chip to enter the configure mode.
-**/
-VOID
-EnterConfigMode (
- VOID
- );
-
-
-/**
- Program the SIO chip to exit the configure mode.
-**/
-VOID
-ExitConfigMode (
- VOID
- );
-
-
-/**
- Perform a 8-bit I/O write to SIO register.
-
- @param[in] Index The register index.
- @param[in] Data The value to write to register.
-**/
-VOID
-WriteRegister (
- IN UINT8 Index,
- IN UINT8 Data
- );
-
-
-/**
- Perform a 8-bit I/O read from SIO register.
-
- @param[in] Index The register index.
-
- @retval Value The value written to the register.
-**/
-UINT8
-ReadRegister (
- IN UINT8 Index
- );
-
-//
-// Prototypes for the sio internal function
-//
-//
-// Internal function
-//
-
-
-/**
- Find Super I/O controller.
-
- @retval EFI_SUCCESS Super I/O controller exists.
- @retval EFI_UNSUPPORTED Super I/O controller does not exist.
-**/
-EFI_STATUS
-SioInit (
- VOID
- );
-
-#endif
diff --git a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioDriver.c b/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioDriver.c
deleted file mode 100644
index 408c6ff301..0000000000
--- a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioDriver.c
+++ /dev/null
@@ -1,600 +0,0 @@
-/** @file
- EFI Driver following Driver Binding Protocol.
-
- Copyright (c) 2010 - 2019 Intel Corporation. All rights reserved. <BR>
-
- SPDX-License-Identifier: BSD-2-Clause-Patent
-**/
-
-#include "SioDriver.h"
-
-
-//
-// This driver is for ACPI(PNP0A03,0)/PCI(0x1f,0)
-//
-//
-// Sio Driver Global Variables
-//
-EFI_DRIVER_BINDING_PROTOCOL mSioDriver = {
- SioDriverSupported,
- SioDriverStart,
- SioDriverStop,
- 1,
- NULL,
- NULL
-};
-
-//
-// The list of the created SIO_DEV
-//
-LIST_ENTRY mSioDevPool = INITIALIZE_LIST_HEAD_VARIABLE (mSioDevPool);
-
-//
-// Template structure to create SIO_DEV
-//
-SIO_DEV mSioDevTemplate = {
- SIO_DEV_SIGNATURE, // Signature
- NULL, // PciHandle
- {
- 0x00000000, // HID
- 0x00000000 // UID
- },
- NULL, // Handle
- { // Sio Instance
- SioRegisterAccess,
- SioGetResources,
- SioSetResources,
- SioPossibleResources,
- SioModify
- },
- NULL, // DevicePath
- {
- NULL, // ForwardLink
- NULL, // BackLink
- }
-};
-
-//
-// Template ACPI_HID_DEVICE_PATH structure to create device path
-//
-ACPI_HID_DEVICE_PATH mAcpiNodeTemplate = {
- {
- ACPI_DEVICE_PATH, // Type
- ACPI_DP, // SubType
- {
- sizeof (ACPI_HID_DEVICE_PATH), // Length[0]
- 0 // Length[1]
- }
- },
- 0x00000000, // HID
- 0x00000000 // UID
-};
-
-
-/**
- The user Entry Point for module Lpc47m17x. The user code starts with this function.
-
- @param[in] ImageHandle The firmware allocated handle for the EFI image.
- @param[in] SystemTable A pointer to the EFI System Table.
-
- @retval EFI_SUCCESS The entry point is executed successfully.
- @retval other Some error occurs when executing this entry point.
-**/
-EFI_STATUS
-EFIAPI
-SioDriverEntryPoint (
- IN EFI_HANDLE ImageHandle,
- IN EFI_SYSTEM_TABLE *SystemTable
- )
-{
- if (EFI_ERROR (SioInit())) {
- return EFI_UNSUPPORTED;
- } else {
-
- //
- // Install protocols
- //
- return EfiLibInstallDriverBindingComponentName2 (
- ImageHandle,
- SystemTable,
- &mSioDriver,
- ImageHandle,
- &mSioComponentName,
- &mSioComponentName2
- );
- }
-}
-
-
-/**
- Test to see if this driver supports Controller Handle.
-
- @param[in] This Protocol instance pointer.
- @param[in] Controller Handle of device to test
- @param[in] RemainingDevicePath Optional parameter use to pick a specific child
- device to start.
-
- @retval EFI_SUCCESS This driver supports this device
- @retval EFI_ALREADY_STARTED This driver is already running on this device
- @retval other This driver does not support this device
-**/
-EFI_STATUS
-EFIAPI
-SioDriverSupported (
- IN EFI_DRIVER_BINDING_PROTOCOL *This,
- IN EFI_HANDLE Controller,
- IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath
- )
-{
- EFI_STATUS Status;
- EFI_PCI_IO_PROTOCOL *PciIo;
- EFI_DEVICE_PATH_PROTOCOL *ParentDevicePath;
- ACPI_HID_DEVICE_PATH *AcpiNode;
- PCI_TYPE00 Pci;
- UINTN Index;
- EFI_SIO_ACPI_DEVICE_ID *Devices;
- UINTN Count;
- UINTN SegmentNumber;
- UINTN BusNumber;
- UINTN DeviceNumber;
- UINTN FunctionNumber;
-
- //
- // If RemainingDevicePath is not NULL, it should verify that the first device
- // path node in RemainingDevicePath is an ACPI Device path node which is a
- // legal Device Path Node for this bus driver's children.
- //
- if (RemainingDevicePath != NULL) {
- if (!IsDevicePathEnd (RemainingDevicePath)) {
- if ((RemainingDevicePath->Type != ACPI_DEVICE_PATH) ||
- (((RemainingDevicePath->SubType != ACPI_DP) || (DevicePathNodeLength (RemainingDevicePath) != sizeof (ACPI_HID_DEVICE_PATH))) &&
- ((RemainingDevicePath->SubType != ACPI_EXTENDED_DP) || (DevicePathNodeLength (RemainingDevicePath) != sizeof (ACPI_EXTENDED_HID_DEVICE_PATH))))
- ) {
- return EFI_UNSUPPORTED;
- }
-
- DeviceGetList (&Devices, &Count);
- if (Devices == NULL) {
- return EFI_OUT_OF_RESOURCES;
- }
- AcpiNode = (ACPI_HID_DEVICE_PATH *) RemainingDevicePath;
- for (Index = 0; Index < Count; Index++) {
- if ((AcpiNode->HID == Devices[Index].HID) &&
- (AcpiNode->UID == Devices[Index].UID)) {
- break;
- }
- }
- FreePool (Devices);
- if (Index == Count) {
- return EFI_UNSUPPORTED;
- }
- }
- }
-
- //
- // See if the parent device path can be opened BY_DRIVER
- //
- Status = gBS->OpenProtocol (
- Controller,
- &gEfiDevicePathProtocolGuid,
- (VOID **) &ParentDevicePath,
- This->DriverBindingHandle,
- Controller,
- EFI_OPEN_PROTOCOL_BY_DRIVER
- );
- if (EFI_ERROR (Status) && (Status != EFI_ALREADY_STARTED)) {
- return Status;
- }
-
- gBS->CloseProtocol (
- Controller,
- &gEfiDevicePathProtocolGuid,
- This->DriverBindingHandle,
- Controller
- );
-
- //
- // Get PciIo protocol instance
- //
- Status = gBS->OpenProtocol (
- Controller,
- &gEfiPciIoProtocolGuid,
- (VOID **) &PciIo,
- This->DriverBindingHandle,
- Controller,
- EFI_OPEN_PROTOCOL_BY_DRIVER
- );
-
- if (!EFI_ERROR (Status)) {
- Status = PciIo->Pci.Read (
- PciIo,
- EfiPciIoWidthUint32,
- 0,
- sizeof (Pci) / sizeof (UINT32),
- &Pci
- );
- ASSERT_EFI_ERROR (Status);
-
- Status = EFI_UNSUPPORTED;
- if ((Pci.Hdr.Command & (EFI_PCI_COMMAND_IO_SPACE | EFI_PCI_COMMAND_MEMORY_SPACE))
- == (EFI_PCI_COMMAND_IO_SPACE | EFI_PCI_COMMAND_MEMORY_SPACE)
- ) {
- if (Pci.Hdr.ClassCode[2] == PCI_CLASS_BRIDGE) {
- //
- // See if this is a standard PCI to ISA Bridge from the Base Code and Class Code
- //
- if (Pci.Hdr.ClassCode[1] == PCI_CLASS_BRIDGE_ISA) {
- Status = EFI_SUCCESS;
- }
-
- //
- // See if this is an Intel PCI to ISA Bridge in Positive Decode Mode
- //
- if ((Pci.Hdr.ClassCode[1] == PCI_CLASS_BRIDGE_ISA_PDECODE) &&
- (Pci.Hdr.VendorId == 0x8086)) {
- //
- // See if this is on Function #0 to avoid false positive on
- // PCI_CLASS_BRIDGE_OTHER that has the same value as
- // PCI_CLASS_BRIDGE_ISA_PDECODE
- //
- Status = PciIo->GetLocation (
- PciIo,
- &SegmentNumber,
- &BusNumber,
- &DeviceNumber,
- &FunctionNumber
- );
- if (!EFI_ERROR (Status) && (FunctionNumber == 0)) {
- Status = EFI_SUCCESS;
- } else {
- Status = EFI_UNSUPPORTED;
- }
- }
- }
- }
-
- gBS->CloseProtocol (
- Controller,
- &gEfiPciIoProtocolGuid,
- This->DriverBindingHandle,
- Controller
- );
- }
- if (EFI_ERROR (Status) && (Status != EFI_ALREADY_STARTED)) {
- return Status;
- }
-
- return EFI_SUCCESS;
-}
-
-
-/**
- Destroy the SIO controller handle.
-
- @param[in] ChildHandle The SIO controller handle.
-
- @retval EFI_SUCCESS The SIO controller handle is destroyed successfully.
-**/
-EFI_STATUS
-SioDestroyDevice (
- IN EFI_HANDLE ChildHandle
- )
-{
- EFI_STATUS Status;
- SIO_DEV *SioDev;
- EFI_SIO_PROTOCOL *Sio;
- EFI_PCI_IO_PROTOCOL *PciIo;
-
- Status = gBS->HandleProtocol (
- ChildHandle,
- &gEfiSioProtocolGuid,
- (VOID **) &Sio
- );
- ASSERT_EFI_ERROR (Status);
-
- SioDev = SIO_DEV_FROM_THIS (Sio);
-
- Status = gBS->CloseProtocol (
- SioDev->PciHandle,
- &gEfiPciIoProtocolGuid,
- mSioDriver.DriverBindingHandle,
- ChildHandle
- );
- ASSERT_EFI_ERROR (Status);
-
- Status = gBS->UninstallMultipleProtocolInterfaces (
- ChildHandle,
- &gEfiDevicePathProtocolGuid,
- SioDev->DevicePath,
- &gEfiSioProtocolGuid,
- &SioDev->Sio,
- NULL
- );
- if (EFI_ERROR (Status)) {
- gBS->OpenProtocol (
- SioDev->PciHandle,
- &gEfiPciIoProtocolGuid,
- (VOID **) &PciIo,
- mSioDriver.DriverBindingHandle,
- ChildHandle,
- EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER
- );
- return Status;
- }
-
- RemoveEntryList (&SioDev->Link);
- FreePool (SioDev->DevicePath);
- FreePool (SioDev);
- return EFI_SUCCESS;
-}
-
-
-/**
- Create the SIO controller handle.
-
- @param[in] Controller The parent PCI controller handle.
- @param[in] Device Pointer to EFI_SIO_ACPI_DEVICE_ID.
- @param[in] ParentDevicePath The device path of the parent controller.
- @param[out] PciIo The PciIo instance of the parent controller.
-**/
-VOID
-SioCreateDevice (
- IN EFI_HANDLE Controller,
- IN EFI_SIO_ACPI_DEVICE_ID *Device,
- IN EFI_DEVICE_PATH_PROTOCOL *ParentDevicePath,
- OUT EFI_PCI_IO_PROTOCOL *PciIo
- )
-{
- EFI_STATUS Status;
- SIO_DEV *SioDev;
-
- DeviceEnable (Device);
- SioDev = AllocateCopyPool (sizeof (SIO_DEV), &mSioDevTemplate);
- ASSERT (SioDev != NULL);
- if (SioDev == NULL) {
- return;
- }
- InsertHeadList (&mSioDevPool, &SioDev->Link);
-
- SioDev->PciHandle = Controller;
-
- CopyMem (&SioDev->Device, Device, sizeof (*Device));
-
- mAcpiNodeTemplate.HID = Device->HID;
- mAcpiNodeTemplate.UID = Device->UID;
- SioDev->DevicePath = AppendDevicePathNode (ParentDevicePath, (EFI_DEVICE_PATH_PROTOCOL *) &mAcpiNodeTemplate);
- ASSERT (SioDev->DevicePath != NULL);
-
- Status = gBS->InstallMultipleProtocolInterfaces (
- &SioDev->Handle,
- &gEfiSioProtocolGuid, &SioDev->Sio,
- &gEfiDevicePathProtocolGuid, SioDev->DevicePath,
- NULL
- );
- ASSERT_EFI_ERROR (Status);
-
- Status = gBS->OpenProtocol (
- Controller,
- &gEfiPciIoProtocolGuid,
- (VOID **) &PciIo,
- mSioDriver.DriverBindingHandle,
- SioDev->Handle,
- EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER
- );
- ASSERT_EFI_ERROR (Status);
-}
-
-
-/**
- Start this driver on ControllerHandle.
-
- @param[in] This Protocol instance pointer.
- @param[in] Controller Handle of device to bind driver to
- @param[in] RemainingDevicePath Optional parameter use to pick a specific child
- device to start.
-
- @retval EFI_SUCCESS This driver is added to ControllerHandle
- @retval EFI_ALREADY_STARTED This driver is already running on ControllerHandle
- @retval other This driver does not support this device
-**/
-EFI_STATUS
-EFIAPI
-SioDriverStart (
- IN EFI_DRIVER_BINDING_PROTOCOL *This,
- IN EFI_HANDLE Controller,
- IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath
- )
-{
- EFI_STATUS Status;
- EFI_PCI_IO_PROTOCOL *PciIo;
- EFI_DEVICE_PATH_PROTOCOL *DevicePath;
- EFI_DEVICE_PATH_PROTOCOL *ParentDevicePath;
- EFI_SIO_ACPI_DEVICE_ID *Devices;
- SIO_DEV *SioDev;
- UINTN Count;
- UINTN Index;
- ACPI_HID_DEVICE_PATH *AcpiNode;
- BOOLEAN *HasCreated;
- BOOLEAN *RequestCreate;
- LIST_ENTRY *Node;
-
- HasCreated = NULL;
- RequestCreate = NULL;
- //
- // Get the ISA bridge's Device Path
- //
- Status = gBS->OpenProtocol (
- Controller,
- &gEfiDevicePathProtocolGuid,
- (VOID **) &ParentDevicePath,
- This->DriverBindingHandle,
- Controller,
- EFI_OPEN_PROTOCOL_BY_DRIVER
- );
- if (EFI_ERROR (Status) && Status != EFI_ALREADY_STARTED) {
- return Status;
- }
-
- //
- // Get Pci IO
- //
- Status = gBS->OpenProtocol (
- Controller,
- &gEfiPciIoProtocolGuid,
- (VOID **) &PciIo,
- This->DriverBindingHandle,
- Controller,
- EFI_OPEN_PROTOCOL_BY_DRIVER
- );
-
- if (EFI_ERROR (Status) && Status != EFI_ALREADY_STARTED) {
- gBS->CloseProtocol (
- Controller,
- &gEfiDevicePathProtocolGuid,
- This->DriverBindingHandle,
- Controller
- );
- return Status;
- }
-
- if ((RemainingDevicePath != NULL) && IsDevicePathEnd (RemainingDevicePath)) {
- return EFI_SUCCESS;
- }
-
- DeviceGetList (&Devices, &Count);
- if (Devices == NULL) {
- Status = EFI_OUT_OF_RESOURCES;
- goto Exit_Start;
- }
- HasCreated = AllocatePool (sizeof (BOOLEAN) * Count);
- ASSERT (HasCreated != NULL);
- if (HasCreated == NULL) {
- Status = EFI_OUT_OF_RESOURCES;
- goto Exit_Start;
- }
- RequestCreate = AllocatePool (sizeof (BOOLEAN) * Count);
- ASSERT (RequestCreate != NULL);
- if (RequestCreate == NULL) {
- Status = EFI_OUT_OF_RESOURCES;
- goto Exit_Start;
- }
-
- //
- // Assume no children has been created.
- // Assume the SIO interface hasn't been initialized.
- //
- ZeroMem (HasCreated, sizeof (BOOLEAN) * Count);
-
- if (Status == EFI_ALREADY_STARTED) {
- for (Node = GetFirstNode (&mSioDevPool);
- !IsNull (&mSioDevPool, Node);
- Node = GetNextNode (&mSioDevPool, Node)
- ) {
- SioDev = CR (Node, SIO_DEV, Link, SIO_DEV_SIGNATURE);
- Status = gBS->HandleProtocol (
- SioDev->PciHandle,
- &gEfiDevicePathProtocolGuid,
- (VOID **) &DevicePath
- );
- ASSERT_EFI_ERROR (Status);
-
- //
- // See if they are under the same PCI to ISA Bridge
- //
- if (CompareMem (DevicePath, ParentDevicePath, GetDevicePathSize (DevicePath)) == 0) {
- for (Index = 0; Index < Count; Index++) {
- if (CompareMem (&SioDev->Device, &Devices[Index], sizeof (EFI_SIO_ACPI_DEVICE_ID)) == 0) {
- HasCreated[Index] = TRUE;
- break;
- }
- }
- }
- }
- }
-
- AcpiNode = (ACPI_HID_DEVICE_PATH *) RemainingDevicePath;
- for (Index = 0; Index < Count; Index++) {
- if ((AcpiNode == NULL) ||
- ((AcpiNode->HID == Devices[Index].HID) && (AcpiNode->UID == Devices[Index].UID))
- ) {
- RequestCreate[Index] = TRUE;
- } else {
- RequestCreate[Index] = FALSE;
- }
- }
-
- for (Index = 0; Index < Count; Index++) {
- if (RequestCreate[Index] && !HasCreated[Index]) {
- SioCreateDevice (Controller, &Devices[Index], ParentDevicePath, PciIo);
- }
- }
-Exit_Start:
- if (Devices != NULL) {
- FreePool (Devices);
- }
- if (HasCreated != NULL) {
- FreePool (HasCreated);
- }
- if (RequestCreate != NULL) {
- FreePool (RequestCreate);
- }
-
- return Status;
-}
-
-
-/**
- Stop this driver on ControllerHandle.
-
- @param[in] This Protocol instance pointer.
- @param[in] Controller Handle of device to stop driver on
- @param[in] NumberOfChildren Number of Handles in ChildHandleBuffer. If number of
- children is zero stop the entire bus driver.
- @param[in] ChildHandleBuffer List of Child Handles to Stop.
-
- @retval EFI_SUCCESS This driver is removed ControllerHandle
- @retval other This driver was not removed from this device
-**/
-EFI_STATUS
-EFIAPI
-SioDriverStop (
- IN EFI_DRIVER_BINDING_PROTOCOL *This,
- IN EFI_HANDLE Controller,
- IN UINTN NumberOfChildren,
- IN EFI_HANDLE *ChildHandleBuffer
- )
-{
- EFI_STATUS Status;
- UINTN Index;
- BOOLEAN AllChildrenStopped;
-
- if (NumberOfChildren == 0) {
- gBS->CloseProtocol (
- Controller,
- &gEfiDevicePathProtocolGuid,
- This->DriverBindingHandle,
- Controller
- );
- gBS->CloseProtocol (
- Controller,
- &gEfiPciIoProtocolGuid,
- This->DriverBindingHandle,
- Controller
- );
- return EFI_SUCCESS;
- }
-
- AllChildrenStopped = TRUE;
- for (Index = 0; Index < NumberOfChildren; Index++) {
- Status = SioDestroyDevice (ChildHandleBuffer[Index]);
- if (EFI_ERROR (Status)) {
- AllChildrenStopped = FALSE;
- }
- }
-
- if (AllChildrenStopped) {
- return EFI_SUCCESS;
- } else {
- return EFI_DEVICE_ERROR;
- }
-}
diff --git a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioDriver.h b/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioDriver.h
deleted file mode 100644
index 2e75871f7f..0000000000
--- a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioDriver.h
+++ /dev/null
@@ -1,134 +0,0 @@
-/** @file
- Header file for Driver Binding Protocol.
-
- Copyright (c) 2010 - 2019 Intel Corporation. All rights reserved. <BR>
-
- SPDX-License-Identifier: BSD-2-Clause-Patent
-**/
-
-#ifndef _SIO_DRIVER_H_
-#define _SIO_DRIVER_H_
-
-#include <PiDxe.h>
-#include <IndustryStandard/Pci.h>
-#include <Library/BaseLib.h>
-#include <Library/MemoryAllocationLib.h>
-#include <Library/BaseMemoryLib.h>
-#include <Library/DebugLib.h>
-#include <Library/IoLib.h>
-#include <Library/S3BootScriptLib.h>
-#include <Library/PciLib.h>
-#include <Library/UefiBootServicesTableLib.h>
-#include <Library/DevicePathLib.h>
-#include <Library/UefiLib.h>
-#include <Library/PcdLib.h>
-
-//
-// Driver Consumed Protocol Prototypes
-//
-#include <Protocol/DriverBinding.h>
-#include <Protocol/PciIo.h>
-#include <Protocol/DevicePath.h>
-
-//
-// Driver Produced Protocol Prototypes
-//
-#include <Protocol/SuperIo.h>
-
-
-#include "SioChip.h"
-#include "SioService.h"
-#include "ComponentName.h"
-
-//
-// Global Variables definitions
-//
-extern EFI_DRIVER_BINDING_PROTOCOL mSioDriver;
-extern EFI_COMPONENT_NAME_PROTOCOL mSioComponentName;
-extern EFI_COMPONENT_NAME2_PROTOCOL mSioComponentName2;
-
-//
-// SIO device private data structure
-//
-#define SIO_DEV_SIGNATURE SIGNATURE_32 ('_', 'S', 'I', 'O')
-
-typedef struct _SIO_DEV {
- UINT32 Signature;
- EFI_HANDLE PciHandle;
- EFI_SIO_ACPI_DEVICE_ID Device;
- EFI_HANDLE Handle;
- EFI_SIO_PROTOCOL Sio;
- EFI_DEVICE_PATH_PROTOCOL *DevicePath;
- LIST_ENTRY Link;
-} SIO_DEV;
-
-#define SIO_DEV_FROM_THIS(a) CR (a, SIO_DEV, Sio, SIO_DEV_SIGNATURE)
-
-//
-// Prototypes for Driver model protocol interface
-//
-
-
-/**
- Test to see if this driver supports Controller Handle.
-
- @param[in] This Protocol instance pointer.
- @param[in] Controller Handle of device to test
- @param[in] RemainingDevicePath Optional parameter use to pick a specific child
- device to start.
-
- @retval EFI_SUCCESS This driver supports this device
- @retval EFI_ALREADY_STARTED This driver is already running on this device
- @retval other This driver does not support this device
-**/
-EFI_STATUS
-EFIAPI
-SioDriverSupported (
- IN EFI_DRIVER_BINDING_PROTOCOL *This,
- IN EFI_HANDLE Controller,
- IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath
- );
-
-
-/**
- Start this driver on ControllerHandle.
-
- @param[in] This Protocol instance pointer.
- @param[in] Controller Handle of device to bind driver to
- @param[in] RemainingDevicePath Optional parameter use to pick a specific child
- device to start.
-
- @retval EFI_SUCCESS This driver is added to ControllerHandle
- @retval EFI_ALREADY_STARTED This driver is already running on ControllerHandle
- @retval other This driver does not support this device
-**/
-EFI_STATUS
-EFIAPI
-SioDriverStart (
- IN EFI_DRIVER_BINDING_PROTOCOL *This,
- IN EFI_HANDLE Controller,
- IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath
- );
-
-
-/**
- Stop this driver on ControllerHandle.
-
- @param[in] This Protocol instance pointer.
- @param[in] Controller Handle of device to stop driver on
- @param[in] NumberOfChildren Number of Handles in ChildHandleBuffer. If number of
- children is zero stop the entire bus driver.
- @param[in] ChildHandleBuffer List of Child Handles to Stop.
-
- @retval EFI_SUCCESS This driver is removed ControllerHandle
- @retval other This driver was not removed from this device
-**/
-EFI_STATUS
-EFIAPI
-SioDriverStop (
- IN EFI_DRIVER_BINDING_PROTOCOL *This,
- IN EFI_HANDLE Controller,
- IN UINTN NumberOfChildren,
- IN EFI_HANDLE *ChildHandleBuffer
- );
-#endif
diff --git a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioService.c b/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioService.c
deleted file mode 100644
index 379002b833..0000000000
--- a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioService.c
+++ /dev/null
@@ -1,249 +0,0 @@
-/** @file
- Super I/O Interface implementation.
-
- Copyright (c) 2010 - 2019 Intel Corporation. All rights reserved. <BR>
-
- SPDX-License-Identifier: BSD-2-Clause-Patent
-**/
-
-#include "SioDriver.h"
-
-
-/**
- Provides an interface to get a list of the current resources consumed by the device in the ACPI
- Resource Descriptor format.
-
- GetResources() returns a list of resources currently consumed by the device. The
- ResourceList is a pointer to the buffer containing resource descriptors for the device. The
- descriptors are in the format of Small or Large ACPI resource descriptor as defined by ACPI
- specification (2.0 & 3.0). The buffer of resource descriptors is terminated with the 'End tag'
- resource descriptor.
-
- @param[in] This Indicates a pointer to the calling context.
- @param[out] ResourceList A pointer to an ACPI resource descriptor list that defines the current resources
- used by the device. Type ACPI_RESOURCE_HEADER_PTR is defined in the "Related
- Definitions" below.
-
- @retval EFI_SUCCESS The operation completed successfully
- @retval EFI_INVALID_PARAMETER ResourceList is NULL
-**/
-EFI_STATUS
-EFIAPI
-SioGetResources (
- IN CONST EFI_SIO_PROTOCOL *This,
- OUT ACPI_RESOURCE_HEADER_PTR *ResourceList
- )
-{
- SIO_DEV *SioDev;
-
- if (ResourceList == NULL) {
- return EFI_INVALID_PARAMETER;
- }
-
- SioDev = SIO_DEV_FROM_THIS (This);
-
- return DeviceGetResources (&SioDev->Device, ResourceList);
-}
-
-
-/**
- Provides a collection of resource descriptor lists. Each resource descriptor list in the collection
- defines a combination of resources that can potentially be used by the device.
-
- @param[in] This Indicates a pointer to the calling context.
- @param[out] ResourceCollection Collection of the resource descriptor lists.
-
- @retval EFI_SUCCESS The operation completed successfully
- @retval EFI_INVALID_PARAMETER ResourceCollection is NULL
-**/
-EFI_STATUS
-EFIAPI
-SioPossibleResources (
- IN CONST EFI_SIO_PROTOCOL *This,
- OUT ACPI_RESOURCE_HEADER_PTR *ResourceCollection
- )
-{
- SIO_DEV *SioDev;
-
- if (ResourceCollection == NULL) {
- return EFI_INVALID_PARAMETER;
- }
-
- SioDev = SIO_DEV_FROM_THIS (This);
-
- return DevicePossibleResources (&SioDev->Device, ResourceCollection);
-}
-
-
-/**
- Sets the resources for the device.
-
- @param[in] This Indicates a pointer to the calling context.
- @param[in] ResourceList Pointer to the ACPI resource descriptor list. Type ACPI_RESOURCE_HEADER_PTR
- is defined in the "Related Definitions" section of
- EFI_SIO_PROTOCOL.GetResources().
-
- @retval EFI_SUCCESS The operation completed successfully
- @retval EFI_INVALID_PARAMETER ResourceList is invalid
- @retval EFI_ACCESS_DENIED Some of the resources in ResourceList are in use
-**/
-EFI_STATUS
-EFIAPI
-SioSetResources (
- IN CONST EFI_SIO_PROTOCOL *This,
- IN ACPI_RESOURCE_HEADER_PTR ResourceList
- )
-{
- SIO_DEV *SioDev;
- ACPI_RESOURCE_HEADER_PTR ResourcePtr;
- ACPI_RESOURCE_HEADER_PTR ResourceCollection;
- ACPI_RESOURCE_HEADER_PTR ResourcePtr2;
- BOOLEAN Found;
-
- ResourcePtr = ResourceList;
- SioDev = SIO_DEV_FROM_THIS (This);
-
- //
- // Check whether the resource is in the possible resource collection
- //
- DevicePossibleResources (&SioDev->Device, &ResourceCollection);
-
- while (ResourcePtr.SmallHeader->Byte != ACPI_END_TAG_DESCRIPTOR) {
-
- Found = FALSE;
- ResourcePtr2 = ResourceCollection;
- while (ResourcePtr2.SmallHeader->Byte != ACPI_END_TAG_DESCRIPTOR) {
- if (ResourcePtr2.SmallHeader->Bits.Type == 0) {
- //
- // Small Header
- //
- if (CompareMem (
- ResourcePtr2.SmallHeader,
- ResourcePtr.SmallHeader,
- ResourcePtr2.SmallHeader->Bits.Length + sizeof (*ResourcePtr2.SmallHeader)
- ) == 0) {
- Found = TRUE;
- break;
- }
-
- ResourcePtr2.SmallHeader = (ACPI_SMALL_RESOURCE_HEADER *) ((UINT8 *) ResourcePtr2.SmallHeader
- + ResourcePtr2.SmallHeader->Bits.Length
- + sizeof (*ResourcePtr2.SmallHeader));
-
- } else {
- //
- // Large Header
- //
- if (CompareMem (
- ResourcePtr2.LargeHeader,
- ResourcePtr.LargeHeader,
- ResourcePtr2.LargeHeader->Length + sizeof (*ResourcePtr2.LargeHeader)
- ) == 0) {
- Found = TRUE;
- break;
- }
-
- ResourcePtr2.LargeHeader = (ACPI_LARGE_RESOURCE_HEADER *) ((UINT8 *) ResourcePtr2.LargeHeader
- + ResourcePtr2.LargeHeader->Length
- + sizeof (*ResourcePtr2.LargeHeader));
- }
- }
-
- if (!Found) {
- return EFI_ACCESS_DENIED;
- }
-
- if (ResourcePtr.SmallHeader->Bits.Type == 0) {
- ResourcePtr.SmallHeader = (ACPI_SMALL_RESOURCE_HEADER *) ((UINT8 *) ResourcePtr.SmallHeader
- + ResourcePtr.SmallHeader->Bits.Length
- + sizeof (*ResourcePtr.SmallHeader));
- } else {
- ResourcePtr.LargeHeader = (ACPI_LARGE_RESOURCE_HEADER *) ((UINT8 *) ResourcePtr.LargeHeader
- + ResourcePtr.LargeHeader->Length
- + sizeof (*ResourcePtr.LargeHeader));
- }
- }
-
- //
- // ResourceList can be set
- //
- return DeviceSetResources (&SioDev->Device, ResourceList);
-}
-
-
-/**
- Provides a low level access to the registers for the Super I/O.
-
- @param[in] This Indicates a pointer to the calling context.
- @param[in] Write Specifies the type of the register operation. If this parameter is TRUE,
- Value is interpreted as an input parameter and the operation is a register write.
- If this parameter is FALSE, Value is interpreted as an output parameter and the
- operation is a register read.
- @param[in] ExitCfgMode Exit Configuration Mode Indicator. If this parameter is set to TRUE, the
- Super I/O driver will turn off configuration mode of the Super I/O prior to returning
- from this function. If this parameter is set to FALSE, the Super I/O driver will
- leave Super I/O in the configuration mode.
- The Super I/O driver must track the current state of the Super I/O and enable the
- configuration mode of Super I/O if necessary prior to register access.
- @param[in] Register Register number.
- @param[in, out] Value If Write is TRUE, Value is a pointer to the buffer containing the byte of data to be
- written to the Super I/O register. If Write is FALSE, Value is a pointer to the
- destination buffer for the byte of data to be read from the Super I/O register.
-
- @retval EFI_SUCCESS The operation completed successfully
- @retval EFI_INVALID_PARAMETER The Value is NULL
- @retval EFI_INVALID_PARAMETER Invalid Register number
-**/
-EFI_STATUS
-EFIAPI
-SioRegisterAccess (
- IN CONST EFI_SIO_PROTOCOL *This,
- IN BOOLEAN Write,
- IN BOOLEAN ExitCfgMode,
- IN UINT8 Register,
- IN OUT UINT8 *Value
- )
-{
- if (Value == NULL) {
- return EFI_INVALID_PARAMETER;
- }
-
- return EFI_SUCCESS;
-}
-
-
-/**
- Provides an interface for a table based programming of the Super I/O registers.
-
- The Modify() function provides an interface for table based programming of the Super I/O
- registers. This function can be used to perform programming of multiple Super I/O registers with a
- single function call. For each table entry, the Register is read, its content is bitwise ANDed with
- AndMask, and then ORed with OrMask before being written back to the Register. The Super
- I/O driver must track the current state of the Super I/O and enable the configuration mode of Super I/
- O if necessary prior to table processing. Once the table is processed, the Super I/O device has to be
- returned to the original state.
-
- @param[in] This Indicates a pointer to the calling context.
- @param[in] Command A pointer to an array of NumberOfCommands EFI_SIO_REGISTER_MODIFY
- structures. Each structure specifies a single Super I/O register modify operation.
- Type EFI_SIO_REGISTER_MODIFY is defined in the "Related Definitions" below.
- @param[in] NumberOfCommands Number of elements in the Command array.
-
- @retval EFI_SUCCESS The operation completed successfully
- @retval EFI_INVALID_PARAMETER Command is NULL
-**/
-EFI_STATUS
-EFIAPI
-SioModify (
- IN CONST EFI_SIO_PROTOCOL *This,
- IN CONST EFI_SIO_REGISTER_MODIFY *Command,
- IN UINTN NumberOfCommands
- )
-{
-
- if (Command == NULL) {
- return EFI_INVALID_PARAMETER;
- }
-
- return EFI_SUCCESS;
-}
diff --git a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioService.h b/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioService.h
deleted file mode 100644
index 6a8081dc6e..0000000000
--- a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioService.h
+++ /dev/null
@@ -1,143 +0,0 @@
-/** @file
- Super I/O Interface function declarations.
-
- Copyright (c) 2010 - 2019 Intel Corporation. All rights reserved. <BR>
-
- SPDX-License-Identifier: BSD-2-Clause-Patent
-**/
-
-#ifndef _SIO_ACPI_H_
-#define _SIO_ACPI_H_
-
-//
-// Prototypes for the SIO protocol interface
-//
-
-
-/**
- Provides an interface to get a list of the current resources consumed by the device in the ACPI
- Resource Descriptor format.
-
- GetResources() returns a list of resources currently consumed by the device. The
- ResourceList is a pointer to the buffer containing resource descriptors for the device. The
- descriptors are in the format of Small or Large ACPI resource descriptor as defined by ACPI
- specification (2.0 & 3.0). The buffer of resource descriptors is terminated with the 'End tag'
- resource descriptor.
-
- @param[in] This Indicates a pointer to the calling context.
- @param[out] ResourceList A pointer to an ACPI resource descriptor list that defines the current resources
- used by the device. Type ACPI_RESOURCE_HEADER_PTR is defined in the "Related
- Definitions" below.
-
- @retval EFI_SUCCESS The operation completed successfully
- @retval EFI_INVALID_PARAMETER ResourceList is NULL
-**/
-EFI_STATUS
-EFIAPI
-SioGetResources (
- IN CONST EFI_SIO_PROTOCOL *This,
- OUT ACPI_RESOURCE_HEADER_PTR *ResourceList
- );
-
-
-/**
- Sets the resources for the device.
-
- @param[in] This Indicates a pointer to the calling context.
- @param[in] ResourceList Pointer to the ACPI resource descriptor list. Type ACPI_RESOURCE_HEADER_PTR
- is defined in the "Related Definitions" section of
- EFI_SIO_PROTOCOL.GetResources().
-
- @retval EFI_SUCCESS The operation completed successfully
- @retval EFI_INVALID_PARAMETER ResourceList is invalid
- @retval EFI_ACCESS_DENIED Some of the resources in ResourceList are in use
-**/
-EFI_STATUS
-EFIAPI
-SioSetResources (
- IN CONST EFI_SIO_PROTOCOL *This,
- IN ACPI_RESOURCE_HEADER_PTR ResourceList
- );
-
-
-/**
- Provides a collection of resource descriptor lists. Each resource descriptor list in the collection
- defines a combination of resources that can potentially be used by the device.
-
- @param[in] This Indicates a pointer to the calling context.
- @param[out] ResourceCollection Collection of the resource descriptor lists.
-
- @retval EFI_SUCCESS The operation completed successfully
- @retval EFI_INVALID_PARAMETER ResourceCollection is NULL
-**/
-EFI_STATUS
-EFIAPI
-SioPossibleResources (
- IN CONST EFI_SIO_PROTOCOL *This,
- OUT ACPI_RESOURCE_HEADER_PTR *ResourceCollection
- );
-
-
-/**
- Provides a low level access to the registers for the Super I/O.
-
- @param[in] This Indicates a pointer to the calling context.
- @param[in] Write Specifies the type of the register operation. If this parameter is TRUE,
- Value is interpreted as an input parameter and the operation is a register write.
- If this parameter is FALSE, Value is interpreted as an output parameter and the
- operation is a register read.
- @param[in] ExitCfgMode Exit Configuration Mode Indicator. If this parameter is set to TRUE, the
- Super I/O driver will turn off configuration mode of the Super I/O prior to returning
- from this function. If this parameter is set to FALSE, the Super I/O driver will
- leave Super I/O in the configuration mode.
- The Super I/O driver must track the current state of the Super I/O and enable the
- configuration mode of Super I/O if necessary prior to register access.
- @param[in] Register Register number.
- @param[in, out] Value If Write is TRUE, Value is a pointer to the buffer containing the byte of data to be
- written to the Super I/O register. If Write is FALSE, Value is a pointer to the
- destination buffer for the byte of data to be read from the Super I/O register.
-
- @retval EFI_SUCCESS The operation completed successfully
- @retval EFI_INVALID_PARAMETER The Value is NULL
- @retval EFI_INVALID_PARAMETER Invalid Register number
-**/
-EFI_STATUS
-EFIAPI
-SioRegisterAccess (
- IN CONST EFI_SIO_PROTOCOL *This,
- IN BOOLEAN Write,
- IN BOOLEAN ExitCfgMode,
- IN UINT8 Register,
- IN OUT UINT8 *Value
- );
-
-
-/**
- Provides an interface for a table based programming of the Super I/O registers.
-
- The Modify() function provides an interface for table based programming of the Super I/O
- registers. This function can be used to perform programming of multiple Super I/O registers with a
- single function call. For each table entry, the Register is read, its content is bitwise ANDed with
- AndMask, and then ORed with OrMask before being written back to the Register. The Super
- I/O driver must track the current state of the Super I/O and enable the configuration mode of Super I/
- O if necessary prior to table processing. Once the table is processed, the Super I/O device has to be
- returned to the original state.
-
- @param[in] This Indicates a pointer to the calling context.
- @param[in] Command A pointer to an array of NumberOfCommands EFI_SIO_REGISTER_MODIFY
- structures. Each structure specifies a single Super I/O register modify operation.
- Type EFI_SIO_REGISTER_MODIFY is defined in the "Related Definitions" below.
- @param[in] NumberOfCommands Number of elements in the Command array.
-
- @retval EFI_SUCCESS The operation completed successfully
- @retval EFI_INVALID_PARAMETER Command is NULL
-**/
-EFI_STATUS
-EFIAPI
-SioModify (
- IN CONST EFI_SIO_PROTOCOL *This,
- IN CONST EFI_SIO_REGISTER_MODIFY *Command,
- IN UINTN NumberOfCommands
- );
-
-#endif
--
2.19.1.windows.1
next prev parent reply other threads:[~2019-11-06 1:26 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-06 1:25 [edk2-platforms] [Patch v2 0/9] Enable Ps2 keyboard Agyeman, Prince
2019-11-06 1:25 ` [edk2-platforms] [Patch v2 1/9] BoardModulePkg: Add gBoardModulePkgTokenSpaceGuid Agyeman, Prince
2019-11-06 2:07 ` Chiu, Chasel
2019-11-06 22:38 ` Nate DeSimone
2019-11-07 0:49 ` Kubacki, Michael A
2019-11-06 1:25 ` Agyeman, Prince [this message]
2019-11-06 2:07 ` [edk2-platforms] [Patch v2 2/9] SimicsOpenBoardPkg: Remove Super I/O DXE driver Chiu, Chasel
2019-11-06 22:39 ` Nate DeSimone
2019-11-07 0:49 ` Kubacki, Michael A
2019-11-06 1:25 ` [edk2-platforms] [Patch v2 3/9] BoardModulePkg: Add Super I/O driver Agyeman, Prince
2019-11-06 2:07 ` Chiu, Chasel
2019-11-06 22:39 ` Nate DeSimone
2019-11-07 0:49 ` Kubacki, Michael A
2019-11-06 1:25 ` [edk2-platforms] [Patch v2 4/9] BoardModulePkg: Add fix at build Pcds Agyeman, Prince
2019-11-06 2:07 ` Chiu, Chasel
2019-11-06 22:39 ` Nate DeSimone
2019-11-07 0:49 ` Kubacki, Michael A
2019-11-06 1:25 ` [edk2-platforms] [Patch v2 5/9] BoardModulePkg: Added Pcds to Super I/O driver Agyeman, Prince
2019-11-06 2:08 ` Chiu, Chasel
2019-11-06 22:39 ` Nate DeSimone
2019-11-07 0:49 ` Kubacki, Michael A
2019-11-06 1:26 ` [edk2-platforms] [Patch v2 6/9] BoardModulePkg: Add Ps2 Keyboard Library Agyeman, Prince
2019-11-06 2:08 ` Chiu, Chasel
2019-11-06 22:39 ` Nate DeSimone
2019-11-07 0:49 ` Kubacki, Michael A
2019-11-06 1:26 ` [edk2-platforms] [Patch v2 7/9] KabylakeOpenBoardPkg: Add Ps2 Keyboard Support Agyeman, Prince
2019-11-06 2:08 ` [edk2-devel] " Chiu, Chasel
2019-11-06 22:39 ` Nate DeSimone
2019-11-07 0:50 ` Kubacki, Michael A
2019-11-06 1:26 ` [edk2-platforms] [Patch v2 8/9] SimicsOpenBoardPkg: Add Ps2 keyboard Support Agyeman, Prince
2019-11-06 2:09 ` Chiu, Chasel
2019-11-06 22:39 ` Nate DeSimone
2019-11-07 0:50 ` Kubacki, Michael A
2019-11-06 1:26 ` [edk2-platforms] [Patch v2 9/9] WhiskeylakeOpenBoardPkg: Add Ps2 Keyboard Support Agyeman, Prince
2019-11-06 2:09 ` Chiu, Chasel
2019-11-06 22:39 ` Nate DeSimone
2019-11-07 0:50 ` Kubacki, Michael A
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191106012603.4724-3-prince.agyeman@intel.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox