[edk2-devel] [PATCH v3 5/6] [edk2-platforms] Silicon/SynQuacer: add DBG2 ACPI table

Masahisa Kojima masahisa.kojima at linaro.org
Tue Jul 12 01:42:52 UTC 2022


Hi Leif, Ard,

A gentle ping again on this.

Thanks,
Masahisa Kojima


On Mon, 23 May 2022 at 13:58, Masahisa Kojima via groups.io
<masahisa.kojima=linaro.org at groups.io> wrote:
>
> Hi Leif, Ard,
>
> A gentle ping on this on behalf of Masami, since he left Linaro.
>
> Thanks,
> Masahisa Kojima
>
>
> On Fri, 10 Dec 2021 at 15:51, Masami Hiramatsu
> <masami.hiramatsu at linaro.org> 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.hiramatsu at linaro.org>
> > ---
> >   Changes in v2:
> >    - Move Dbg2.aslc before Dsdt.asl to keep the list alphabetically sorted.
> >    - Use EFI_ACPI_6_3_SYSTEM_MEMORY and EFI_ACPI_6_3_BYTE for initialization.
> > ---
> >  .../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..e77d7a3056 100644
> > --- a/Silicon/Socionext/SynQuacer/AcpiTables/AcpiTables.inf
> > +++ b/Silicon/Socionext/SynQuacer/AcpiTables/AcpiTables.inf
> > @@ -19,6 +19,7 @@
> >  [Sources]
> >    AcpiTables.h
> >    AcpiSsdtRootPci.asl
> > +  Dbg2.aslc
> >    Dsdt.asl
> >    Fadt.aslc
> >    Gtdt.aslc
> > diff --git a/Silicon/Socionext/SynQuacer/AcpiTables/Dbg2.aslc b/Silicon/Socionext/SynQuacer/AcpiTables/Dbg2.aslc
> > new file mode 100644
> > index 0000000000..89c9dbd998
> > --- /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_6_3_SYSTEM_MEMORY, 32, 0, EFI_ACPI_6_3_BYTE, Address }
> > +
> > +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 (#91226): https://edk2.groups.io/g/devel/message/91226
Mute This Topic: https://groups.io/mt/87631129/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-




More information about the edk2-devel-archive mailing list