On 6 August 2018 at 18:08, Marcin Wojtas <[email protected]> wrote:
> HI Ard,
>
> pon., 6 sie 2018 o 13:54 Ard Biesheuvel <[email protected]> 
> napisał(a):
>>
>> On 6 August 2018 at 01:28, Marcin Wojtas <[email protected]> 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 <[email protected]>
>> > ---
>> >  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?
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to