/*++

  Copyright (c) 2004  - 2014, Intel Corporation. All rights reserved.<BR>
                                                                                   
  This program and the accompanying materials are licensed and made available under
  the terms and conditions of the BSD License that 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.    
                                                                                   


Module Name:

    PlatformBootMode.h

Abstract:

    EFI Platform Boot Mode

Revision History

--*/

#ifndef _EFI_PLATFORM_BOOT_MODE_H_
#define _EFI_PLATFORM_BOOT_MODE_H_

//
// Global ID for the Platform Boot Mode Protocol.
//
#define   MANUFACTURE_SETUP_NAME             L"MfgDefault"
#define   SAFE_SETUP_NAME                    L"SetupDefault"
#define   OEM_DEFAULTS_SETUP_NAME            L"OemDefault"
#define   CUSTOM_DEFAULTS_SETUP_NAME         L"CustomDefault"

#endif


