audk/OvmfPkg/PlatformDxe/PlatformConfig.h

57 lines
1.2 KiB
C

/** @file
Utility functions for serializing (persistently storing) and deserializing
OVMF's platform configuration.
Copyright (C) 2014, Red Hat, Inc.
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
#ifndef _PLATFORM_CONFIG_H_
#define _PLATFORM_CONFIG_H_
#include <Base.h>
//
// This structure participates in driver configuration. It does not
// (necessarily) reflect the wire format in the persistent store.
//
#pragma pack(1)
typedef struct {
//
// preferred graphics console resolution when booting
//
UINT32 HorizontalResolution;
UINT32 VerticalResolution;
} PLATFORM_CONFIG;
#pragma pack()
//
// Please see the API documentation near the function definitions.
//
EFI_STATUS
EFIAPI
PlatformConfigSave (
IN PLATFORM_CONFIG *PlatformConfig
);
EFI_STATUS
EFIAPI
PlatformConfigLoad (
OUT PLATFORM_CONFIG *PlatformConfig,
OUT UINT64 *OptionalElements
);
//
// Feature flags for OptionalElements.
//
#define PLATFORM_CONFIG_F_GRAPHICS_RESOLUTION BIT0
#define PLATFORM_CONFIG_F_DOWNGRADE BIT63
extern CHAR16 mVariableName[];
extern CHAR16 mHiiFormName[];
#endif // _PLATFORM_CONFIG_H_