summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
7766ebd)
Some platforms advertise support for a 16550 UART, but are not
compatible with the PNP0500 HID. Allow them to override the HID by
setting PcdNonBsaCompliant16550SerialHid.
Signed-off-by: Joey Gouly <joey.gouly@arm.com>
Reviewed-by: Alexei Fedorov <Alexei.Fedorov@arm.com>
Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>
# Maximum number of Custom DT Generators\r
gEdkiiDynamicTablesPkgTokenSpaceGuid.PcdMaxCustomDTGenerators|1|UINT16|0xC0000003\r
\r
# Maximum number of Custom DT Generators\r
gEdkiiDynamicTablesPkgTokenSpaceGuid.PcdMaxCustomDTGenerators|1|UINT16|0xC0000003\r
\r
+ # Non BSA Compliant 16550 Serial HID\r
+ gEdkiiDynamicTablesPkgTokenSpaceGuid.PcdNonBsaCompliant16550SerialHid|""|VOID*|0x40000008\r
+\r
[Guids]\r
gEdkiiDynamicTablesPkgTokenSpaceGuid = { 0xab226e66, 0x31d8, 0x4613, { 0x87, 0x9d, 0xd2, 0xfa, 0xb6, 0x10, 0x26, 0x3c } }\r
[Guids]\r
gEdkiiDynamicTablesPkgTokenSpaceGuid = { 0xab226e66, 0x31d8, 0x4613, { 0x87, 0x9d, 0xd2, 0xfa, 0xb6, 0x10, 0x26, 0x3c } }\r
/** @file\r
SSDT Serial Port Fixup Library.\r
\r
/** @file\r
SSDT Serial Port Fixup Library.\r
\r
- Copyright (c) 2019 - 2020, Arm Limited. All rights reserved.<BR>\r
+ Copyright (c) 2019 - 2021, Arm Limited. All rights reserved.<BR>\r
\r
SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
\r
SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
AML_OBJECT_NODE_HANDLE NameOpIdNode;\r
CONST CHAR8 * HidString;\r
CONST CHAR8 * CidString;\r
AML_OBJECT_NODE_HANDLE NameOpIdNode;\r
CONST CHAR8 * HidString;\r
CONST CHAR8 * CidString;\r
+ CONST CHAR8 * NonBsaHid;\r
\r
// Get the _CID and _HID value to write.\r
switch (SerialPortInfo->PortSubtype) {\r
case EFI_ACPI_DBG2_PORT_SUBTYPE_SERIAL_FULL_16550:\r
{\r
\r
// Get the _CID and _HID value to write.\r
switch (SerialPortInfo->PortSubtype) {\r
case EFI_ACPI_DBG2_PORT_SUBTYPE_SERIAL_FULL_16550:\r
{\r
- HidString = "PNP0501";\r
- CidString = "PNP0500";\r
+ // If there is a non-BSA compliant HID, use that.\r
+ NonBsaHid = (CONST CHAR8*)PcdGetPtr (PcdNonBsaCompliant16550SerialHid);\r
+ if ((NonBsaHid != NULL) && (AsciiStrLen (NonBsaHid) != 0)) {\r
+ HidString = NonBsaHid;\r
+ CidString = "";\r
+ } else {\r
+ HidString = "PNP0501";\r
+ CidString = "PNP0500";\r
+ }\r
break;\r
}\r
case EFI_ACPI_DBG2_PORT_SUBTYPE_SERIAL_ARM_PL011_UART:\r
break;\r
}\r
case EFI_ACPI_DBG2_PORT_SUBTYPE_SERIAL_ARM_PL011_UART:\r
## @file\r
# SSDT Serial Port fixup Library\r
#\r
## @file\r
# SSDT Serial Port fixup Library\r
#\r
-# Copyright (c) 2020, Arm Limited. All rights reserved.<BR>\r
+# Copyright (c) 2020 - 2021, Arm Limited. All rights reserved.<BR>\r
#\r
# SPDX-License-Identifier: BSD-2-Clause-Patent\r
##\r
#\r
# SPDX-License-Identifier: BSD-2-Clause-Patent\r
##\r
+[Pcd]\r
+ gEdkiiDynamicTablesPkgTokenSpaceGuid.PcdNonBsaCompliant16550SerialHid\r