On Mon, 6 Aug 2018, 17:09 Ard Biesheuvel, <ard.biesheu...@linaro.org> wrote:

> On 6 August 2018 at 18:08, Marcin Wojtas <m...@semihalf.com> wrote:
> > HI Ard,
> >
> > pon., 6 sie 2018 o 13:54 Ard Biesheuvel <ard.biesheu...@linaro.org>
> napisał(a):
> >>
> >> On 6 August 2018 at 01:28, Marcin Wojtas <m...@semihalf.com> wrote:
> >> > This patch introduces DSDT table and adds necessary
> >> > wiring in order to enable ACPI support on Armada 7040 DB.
> >> >
> >> > Contributed-under: TianoCore Contribution Agreement 1.1
> >> > Signed-off-by: Marcin Wojtas <m...@semihalf.com>
> >> > ---
> >> >  Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc                     |
> 14 ++
> >> >  Platform/Marvell/Armada70x0Db/Armada70x0Db.dsc                    |
>  3 +
> >> >  Silicon/Marvell/Armada7k8k/Armada7k8k.fdf                         |
> 12 +
> >> >  Silicon/Marvell/Armada7k8k/AcpiTables/Armada70x0Db/AcpiTables.inf |
> 61 ++++++
> >> >  Platform/Marvell/Armada70x0Db/Armada70x0Db.fdf.inc                |
>  5 +
> >> >  Silicon/Marvell/Armada7k8k/AcpiTables/Armada70x0Db/Dsdt.asl       |
> 229 ++++++++++++++++++++
> >> >  Silicon/Marvell/Documentation/PortingGuide.txt                    |
> 22 ++
> >> >  7 files changed, 346 insertions(+)
> >> >  create mode 100644
> Silicon/Marvell/Armada7k8k/AcpiTables/Armada70x0Db/AcpiTables.inf
> >> >  create mode 100644
> Silicon/Marvell/Armada7k8k/AcpiTables/Armada70x0Db/Dsdt.asl
> >> >
> >> > diff --git a/Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc
> b/Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc
> >> > index f1ccda0..d4c67a2 100644
> >> > --- a/Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc
> >> > +++ b/Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc
> >> > @@ -593,6 +593,20 @@
> >> >    ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
> >> >  !endif #$(INCLUDE_TFTP_COMMAND)
> >> >
> >> > +[Components.AARCH64]
> >> > +  #
> >> > +  # Generic ACPI modules
> >> > +  #
> >> > +  MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf
> >> > +  MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf {
> >> > +    <LibraryClasses>
> >> > +
> PlatformHasAcpiLib|EmbeddedPkg/Library/PlatformHasAcpiLib/PlatformHasAcpiLib.inf
> >> > +
> >> > +    <PcdsFixedAtBuild>
> >> > +      # support ACPI v5.0 or later
> >> > +      gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiExposedTableVersions|0x20
> >> > +  }
> >> > +
> >> >
> [BuildOptions.common.EDKII.DXE_CORE,BuildOptions.common.EDKII.DXE_DRIVER,BuildOptions.common.EDKII.UEFI_DRIVER,BuildOptions.common.EDKII.UEFI_APPLICATION]
> >> >    GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
> >> >
> >> > diff --git a/Platform/Marvell/Armada70x0Db/Armada70x0Db.dsc
> b/Platform/Marvell/Armada70x0Db/Armada70x0Db.dsc
> >> > index d3dffb0..f6faff1 100644
> >> > --- a/Platform/Marvell/Armada70x0Db/Armada70x0Db.dsc
> >> > +++ b/Platform/Marvell/Armada70x0Db/Armada70x0Db.dsc
> >> > @@ -51,6 +51,9 @@
> >> >  [Components.common]
> >> >    Silicon/Marvell/Armada7k8k/DeviceTree/Armada70x0Db.inf
> >> >
> >> > +[Components.AARCH64]
> >> > +  Silicon/Marvell/Armada7k8k/AcpiTables/Armada70x0Db/AcpiTables.inf
> >> > +
> >> >
> ################################################################################
> >> >  #
> >> >  # Pcd Section - list of all EDK II PCD Entries defined by this
> Platform
> >> > diff --git a/Silicon/Marvell/Armada7k8k/Armada7k8k.fdf
> b/Silicon/Marvell/Armada7k8k/Armada7k8k.fdf
> >> > index 909ad3e..c064a43 100644
> >> > --- a/Silicon/Marvell/Armada7k8k/Armada7k8k.fdf
> >> > +++ b/Silicon/Marvell/Armada7k8k/Armada7k8k.fdf
> >> > @@ -215,6 +215,12 @@ FvNameGuid         =
> 5eda4200-2c5f-43cb-9da3-0baf74b1b30c
> >> >    # DTB
> >> >    INF EmbeddedPkg/Drivers/DtPlatformDxe/DtPlatformDxe.inf
> >> >
> >> > +!if $(ARCH) == AARCH64
> >> > +  # ACPI support
> >> > +  INF MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf
> >> > +  INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
> >> > +!endif
> >> > +
> >> >  !include $(BOARD_DXE_FV_COMPONENTS)
> >> >
> >> >  # PEI phase firmware volume
> >> > @@ -408,3 +414,9 @@ READ_LOCK_STATUS   = TRUE
> >> >    FILE FREEFORM = $(NAMED_GUID) {
> >> >      RAW BIN                |.dtb
> >> >    }
> >> > +
> >> > +[Rule.Common.USER_DEFINED.ACPITABLE]
> >> > +  FILE FREEFORM = $(NAMED_GUID) {
> >> > +    RAW ASL                |.aml
> >> > +    RAW ACPI               |.acpi
> >> > +  }
> >> > diff --git
> a/Silicon/Marvell/Armada7k8k/AcpiTables/Armada70x0Db/AcpiTables.inf
> b/Silicon/Marvell/Armada7k8k/AcpiTables/Armada70x0Db/AcpiTables.inf
> >> > new file mode 100644
> >> > index 0000000..8732e10
> >> > --- /dev/null
> >> > +++
> b/Silicon/Marvell/Armada7k8k/AcpiTables/Armada70x0Db/AcpiTables.inf
> >> > @@ -0,0 +1,61 @@
> >> > +## @file
> >> > +#  Component description file for PlatformAcpiTables module.
> >> > +#
> >> > +#  ACPI table data and ASL sources required to boot the platform.
> >> > +#
> >> > +#  Copyright (c) 2018, Linaro, Ltd. All rights reserved.<BR>
> >> > +#  Copyright (C) 2018, Marvell International Ltd. and its
> affiliates.<BR>
> >> > +#
> >> > +#  This program and the accompanying materials
> >> > +#  are licensed and made available under the terms and conditions of
> the BSD License
> >> > +#  which accompanies this distribution.  The full text of the
> license may be found at
> >> > +#  http://opensource.org/licenses/bsd-license.php
> >> > +#
> >> > +#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
> BASIS,
> >> > +#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS
> OR IMPLIED.
> >> > +#
> >> > +##
> >> > +
> >> > +[Defines]
> >> > +  INF_VERSION                    = 0x0001001A
> >> > +  BASE_NAME                      = PlatformAcpiTables
> >> > +  FILE_GUID                      =
> 7E374E25-8E01-4FEE-87F2-390C23C606CD
> >> > +  MODULE_TYPE                    = USER_DEFINED
> >> > +  VERSION_STRING                 = 1.0
> >> > +
> >> > +[Sources]
> >> > +  Dsdt.asl
> >> > +  ../Fadt.aslc
> >> > +  ../Gtdt.aslc
> >> > +  ../Madt.aslc
> >> > +  ../Pptt.aslc
> >> > +  ../Spcr.aslc
> >> > +
> >>
> >> Could we reshuffle these files so we nog longer rely relative includes?
> >> Possibly using a Common subdirectory?
> >
> > Would below directory tree be acceptable?
> >
> > Silicon/Marvell/Armada7k8k/AcpiTables/
> > ├── AcpiHeader.h
> > ├── Armada70x0Db
> > │   └── Dsdt.asl
> > ├── Armada70x0Db.inf
> > ├── Armada80x0Db
> > │   └── Dsdt.asl
> > ├── Armada80x0Db.inf
> > ├── Armada80x0McBin
> > │   └── Dsdt.asl
> > ├── Armada80x0McBin.inf
> > ├── Fadt.aslc
> > ├── Gtdt.aslc
> > ├── IcuInterrupts.h
> > ├── Madt.aslc
> > ├── Pptt.aslc
> > └── Spcr.aslc
> >
> > This way we will have following in the .inf
> >
> >   Armada80x0McBin/Dsdt.asl
> >   Fadt.aslc
> >   Gtdt.aslc
> >   Madt.aslc
> >   Pptt.aslc
> >   Spcr.aslc
> >
>
> Works for me. Leif?
>

Sure.

/
    Leif

>
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to