Permalink
Browse files

PPC64PlatformPkg: early work here

Not much to look at. At some point PPC64Pkg/FDLoader and PPC64Pkg/Ipl
will move here, as will the FDF and things relevant to running
in PowerNV (qemu?) environments.

Signed-off-by: Andrei Warkentin <andrey.warkentin@gmail.com>
  • Loading branch information...
andreiw committed Nov 15, 2015
1 parent 67d40ff commit 413c1cf7ce97a0e5da3ea4449f4d3214e694e9e6
@@ -0,0 +1,59 @@
#/** @file
# PowerPC 64-bit LE on PowerNV/OPAL platforms.
#
# Copyright (c) 2015, Andrei Warkentin <andrey.warkentin@gmail.com>
#
# 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]
DEC_SPECIFICATION = 0x00010005
PACKAGE_NAME = PPC64PlatformPkg
PACKAGE_GUID = 5CFBD99E-3C44-4E7F-8054-9CDEAFF7711E
PACKAGE_VERSION = 0.1
################################################################################
#
# Include Section - list of Include Paths that are provided by this package.
# Comments are used for Keywords and Module Types.
#
# Supported Module Types:
# BASE SEC PEI_CORE PEIM DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER DXE_SAL_DRIVER UEFI_DRIVER UEFI_APPLICATION
#
################################################################################
[Includes.common]
Include # Root include for the package
[LibraryClasses.common]
[Guids.common]
gPPC64TokenSpaceGuid = { 0xAA11DDFF, 0x820F, 0x4968, { 0xBB, 0xA6, 0xF7, 0x6A, 0xFE, 0x30, 0x25, 0x96 } }
[Ppis]
[Protocols.common]
[PcdsFeatureFlag.common]
[PcdsFixedAtBuild.common]
[PcdsFixedAtBuild.common, PcdsDynamic.common, PcdsPatchableInModule.common]
[PcdsFixedAtBuild.common, PcdsPatchableInModule.common]
[PcdsFixedAtBuild.PPC64]
#
# These PCDs are also defined as 'PcdsDynamic' or 'PcdsPatchableInModule' to be
# redefined when using UEFI in a context of virtual machine.
#
[PcdsFixedAtBuild.common, PcdsDynamic.common, PcdsPatchableInModule.common]
[PcdsFixedAtBuild.common, PcdsDynamic.common]
@@ -0,0 +1,51 @@
#/** @file
# PowerPC 64-bit LE on PowerNV/OPAL platforms.
#
# Copyright (c) 2015, Andrei Warkentin <andrey.warkentin@gmail.com>
#
# 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 Section - statements that will be processed to create a Makefile.
#
################################################################################
[Defines]
PLATFORM_NAME = PPC64Platform
PLATFORM_GUID = 5CFBD99E-3C44-4E7F-8054-9CDEAFF7711E
PLATFORM_VERSION = 0.1
DSC_SPECIFICATION = 0x00010005
OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME)
SUPPORTED_ARCHITECTURES = PPC64
BUILD_TARGETS = DEBUG|RELEASE
# FLASH_DEFINITION = PPC64PlatformPkg/PPC64PlatformPkg.fdf
SKUID_IDENTIFIER = DEFAULT
#
# You can also build as elfv1, although the artifacts
# produced are not interchangeable (and won't mix
# on purpose due to different COFF architecture value).
#
ABI = elfv2
[BuildOptions]
RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
*_*_PPC64_ABI_FLAGS = $(ABI)
[LibraryClasses.common]
BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
[Components.common]
PPC64PlatformPkg/Test/Test.inf
@@ -0,0 +1,41 @@
/** @file
*
* Copyright (c) 2015, Andrei Warkentin <andrey.warkentin@gmail.com>
*
* 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.
*
**/
#include <Library/UefiApplicationEntryPoint.h>
/**
The user Entry Point for Application. The user code starts with this function
as the real entry point for the application.
@param[in] ImageHandle The firmware allocated handle for the EFI image.
@param[in] SystemTable A pointer to the EFI System Table.
@retval EFI_SUCCESS The entry point was executed successfully.
@retval EFI_NOT_FOUND Protocol not found.
@retval EFI_NOT_FOUND Path to the Linux kernel not found.
@retval EFI_ABORTED The initialisation of the Shell Library failed.
@retval EFI_INVALID_PARAMETER At least one parameter is not valid or there is a
conflict between two parameters.
@retval EFI_OUT_OF_RESOURCES A memory allocation failed.
**/
EFI_STATUS
EFIAPI
TestEntryPoint (
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
)
{
return EFI_SUCCESS;
}
@@ -0,0 +1,33 @@
#/* @file
#
# Copyright (c) 2015, Andrei Warkentin <andrey.warkentin@gmail.com>
#
# 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 = 0x00010006
BASE_NAME = Test
FILE_GUID = 701f54f2-0d70-4b89-bc0a-d9ca25379057
MODULE_TYPE = UEFI_APPLICATION
VERSION_STRING = 0.1
ENTRY_POINT = TestEntryPoint
[Sources]
Test.c
[Packages]
MdePkg/MdePkg.dec
MdeModulePkg/MdeModulePkg.dec
[LibraryClasses]
# DxeServicesTableLib
UefiApplicationEntryPoint
# UefiLib

0 comments on commit 413c1cf

Please sign in to comment.