On Fri, Nov 05, 2021 at 18:23:53 +0900, Masami Hiramatsu wrote: > Add DBG2 table to ACPI tables. The COM1 uart port will be used > for OS debug, and it is 16550 compatible. > > Signed-off-by: Masami Hiramatsu <masami.hirama...@linaro.org> > --- > .../Socionext/SynQuacer/AcpiTables/AcpiTables.inf | 1 > Silicon/Socionext/SynQuacer/AcpiTables/Dbg2.aslc | 70 > ++++++++++++++++++++ > 2 files changed, 71 insertions(+) > create mode 100644 Silicon/Socionext/SynQuacer/AcpiTables/Dbg2.aslc > > diff --git a/Silicon/Socionext/SynQuacer/AcpiTables/AcpiTables.inf > b/Silicon/Socionext/SynQuacer/AcpiTables/AcpiTables.inf > index 886777a0fa..3023206330 100644 > --- a/Silicon/Socionext/SynQuacer/AcpiTables/AcpiTables.inf > +++ b/Silicon/Socionext/SynQuacer/AcpiTables/AcpiTables.inf > @@ -22,6 +22,7 @@ > Dsdt.asl > Fadt.aslc > Gtdt.aslc > + Dbg2.aslc
Please move this before Dsdt.asl, to keep the list alphabetically sorted. > Iort.aslc > Madt.aslc > Mcfg.aslc > diff --git a/Silicon/Socionext/SynQuacer/AcpiTables/Dbg2.aslc > b/Silicon/Socionext/SynQuacer/AcpiTables/Dbg2.aslc > new file mode 100644 > index 0000000000..027b3b658b > --- /dev/null > +++ b/Silicon/Socionext/SynQuacer/AcpiTables/Dbg2.aslc > @@ -0,0 +1,70 @@ > +/** @file > +* Debug Port Table (DBG2) > +* > +* Copyright (c) 2020,2021 Linaro Ltd. All rights reserved. > +* > +* SPDX-License-Identifier: BSD-2-Clause-Patent > +* > +**/ > +#include <IndustryStandard/Acpi.h> > +#include <IndustryStandard/DebugPort2Table.h> > +#include <Library/AcpiLib.h> > +#include <Library/PcdLib.h> > +#include <Platform/MemoryMap.h> > + > +#include "AcpiTables.h" > + > +#pragma pack(1) > + > +#define SYNQUACER_UART1_STR { '\\', '_', 'S', 'B', '.', 'C', 'O', 'M', '1', > 0x00 } > +#define SQ_GAS32(Address) { EFI_ACPI_5_0_SYSTEM_MEMORY, 32, 0, > EFI_ACPI_5_0_BYTE, Address } Use EFI_ACPI_6_3_ consistently? / Leif > + > +typedef struct { > + EFI_ACPI_DBG2_DEBUG_DEVICE_INFORMATION_STRUCT Dbg2Device; > + EFI_ACPI_6_3_GENERIC_ADDRESS_STRUCTURE BaseAddressRegister; > + UINT32 AddressSize; > + UINT8 NameSpaceString[10]; > +} DBG2_DEBUG_DEVICE_INFORMATION; > + > +typedef struct { > + EFI_ACPI_DEBUG_PORT_2_DESCRIPTION_TABLE Description; > + DBG2_DEBUG_DEVICE_INFORMATION Dbg2DeviceInfo; > +} DBG2_TABLE; > + > + > +STATIC DBG2_TABLE Dbg2 = { > + { > + __ACPI_HEADER ( > + EFI_ACPI_6_3_DEBUG_PORT_2_TABLE_SIGNATURE, > + DBG2_TABLE, > + EFI_ACPI_DBG2_DEBUG_DEVICE_INFORMATION_STRUCT_REVISION > + ), > + OFFSET_OF (DBG2_TABLE, Dbg2DeviceInfo), > + 1 /* NumberOfDebugPorts */ > + }, > + { > + { > + EFI_ACPI_DBG2_DEBUG_DEVICE_INFORMATION_STRUCT_REVISION, > + sizeof (DBG2_DEBUG_DEVICE_INFORMATION), > + 1, /* > NumberofGenericAddressRegisters */ > + 10, /* NameSpaceStringLength */ > + OFFSET_OF (DBG2_DEBUG_DEVICE_INFORMATION, NameSpaceString), > + 0, /* OemDataLength */ > + 0, /* OemDataOffset */ > + EFI_ACPI_DBG2_PORT_TYPE_SERIAL, > + EFI_ACPI_DBG2_PORT_SUBTYPE_SERIAL_16550_WITH_GAS, > + {EFI_ACPI_RESERVED_BYTE, EFI_ACPI_RESERVED_BYTE}, > + OFFSET_OF (DBG2_DEBUG_DEVICE_INFORMATION, BaseAddressRegister), > + OFFSET_OF (DBG2_DEBUG_DEVICE_INFORMATION, AddressSize) > + }, > + SQ_GAS32 (SYNQUACER_UART1_BASE), /* BaseAddressRegister */ > + SYNQUACER_UART1_SIZE, /* AddressSize */ > + SYNQUACER_UART1_STR, /* NameSpaceString */ > + } > +}; > + > +#pragma pack() > + > +// Reference the table being generated to prevent the optimizer from removing > +// the data structure from the executable > +VOID* CONST ReferenceAcpiTable = &Dbg2; > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#84103): https://edk2.groups.io/g/devel/message/84103 Mute This Topic: https://groups.io/mt/86836384/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-