]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkNt32Pkg/RuntimeDxe/FvbServices/Common/FwBlockService.h
Remove platform-specific Firmware Volume Block Driver implementation from EdkNt32Pkg...
[mirror_edk2.git] / EdkNt32Pkg / RuntimeDxe / FvbServices / Common / FwBlockService.h
diff --git a/EdkNt32Pkg/RuntimeDxe/FvbServices/Common/FwBlockService.h b/EdkNt32Pkg/RuntimeDxe/FvbServices/Common/FwBlockService.h
deleted file mode 100644 (file)
index 1fad9bd..0000000
+++ /dev/null
@@ -1,324 +0,0 @@
-/*++\r
-\r
-Copyright (c) 2006, Intel Corporation                                                         \r
-All rights reserved. This program and the accompanying materials                          \r
-are licensed and made available under the terms and conditions of the BSD License         \r
-which accompanies this distribution.  The full text of the license may be found at        \r
-http://opensource.org/licenses/bsd-license.php                                            \r
-                                                                                          \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
-\r
-Module Name:\r
-\r
-  FwBlockService.h\r
-  \r
-Abstract:\r
-\r
-  Firmware volume block driver for Intel Firmware Hub (FWH) device\r
-\r
---*/\r
-\r
-#ifndef _FW_BLOCK_SERVICE_H\r
-#define _FW_BLOCK_SERVICE_H\r
-\r
-//\r
-// Statements that include other header files\r
-//\r
-#include "Tiano.h"\r
-#include "EfiFirmwareVolumeHeader.h"\r
-#include "EfiRuntimeLib.h"\r
-#include "EfiHobLib.h"\r
-#include "EfiScriptLib.h"\r
-\r
-#include EFI_PROTOCOL_PRODUCER (FirmwareVolumeBlock)\r
-#include EFI_PROTOCOL_PRODUCER (FvbExtension)\r
-#include EFI_GUID_DEFINITION (AlternateFvBlock)\r
-#include EFI_GUID_DEFINITION (Hob)\r
-#include EFI_GUID_DEFINITION (DxeServices)\r
-#include EFI_PROTOCOL_CONSUMER (CpuIo)\r
-\r
-#define FVB_MAX_RETRY_TIMES             10000000\r
-#define FWH_BLOCK_ERASE_SETUP_COMMAND   0x20\r
-#define FWH_BLOCK_ERASE_CONFIRM_COMMAND 0xd0\r
-#define FWH_READ_STATUS_COMMAND         0x70\r
-#define FWH_CLEAR_STATUS_COMMAND        0x50\r
-#define FWH_READ_ARRAY_COMMAND          0xff\r
-#define FWH_WRITE_SETUP_COMMAND         0x40\r
-#define FWH_OPEN_FEATURE_SPACE_COMMAND  0x91\r
-#define FWH_READ_LOCK                   (1 << 2)\r
-#define FWH_WRITE_LOCK                  (1 << 1)\r
-#define FWH_LOCK_DOWN                   1\r
-#define FWH_WRITE_STATE_STATUS          (1 << 7)\r
-#define FWH_ERASE_STATUS                (1 << 5)\r
-#define FWH_PROGRAM_STATUS              (1 << 4)\r
-#define FWH_VPP_STATUS                  (1 << 3)\r
-#define STALL_TIME                      5\r
-#define FWH_ERASE_STATUS_BITS           (FWH_ERASE_STATUS || FWH_VPP_STATUS)\r
-#define FWH_WRITE_STATUS_BITS           (FWH_WRITE_STATUS || FWH_VPP_STATUS)\r
-#define CFI_BLOCK_LOCK_UNLOCK           0x60\r
-#define CFI_BLOCK_LOCK_CONFIRM          1\r
-#define CFI_BLOCK_UNLOCK_CONFIRM        0xD0\r
-#define CFI_QUERY                       0x98\r
-\r
-//\r
-// BugBug: Add documentation here for data structure!!!!\r
-//\r
-#define FVB_PHYSICAL  0\r
-#define FVB_VIRTUAL   1\r
-\r
-typedef struct {\r
-  EFI_LOCK                    FvbDevLock;\r
-  UINTN                       FvBase[2];\r
-  UINTN                       FvWriteBase[2];\r
-  UINTN                       NumOfBlocks;\r
-  BOOLEAN                     WriteEnabled;\r
-  EFI_FIRMWARE_VOLUME_HEADER  VolumeHeader;\r
-} EFI_FW_VOL_INSTANCE;\r
-\r
-typedef struct {\r
-  UINT32              NumFv;\r
-  EFI_FW_VOL_INSTANCE *FvInstance[2];\r
-  UINT8               *FvbScratchSpace[2];\r
-} ESAL_FWB_GLOBAL;\r
-\r
-//\r
-// Fvb Protocol instance data\r
-//\r
-#define FVB_DEVICE_FROM_THIS(a)         CR (a, EFI_FW_VOL_BLOCK_DEVICE, FwVolBlockInstance, FVB_DEVICE_SIGNATURE)\r
-#define FVB_EXTEND_DEVICE_FROM_THIS(a)  CR (a, EFI_FW_VOL_BLOCK_DEVICE, FvbExtension, FVB_DEVICE_SIGNATURE)\r
-#define FVB_DEVICE_SIGNATURE            EFI_SIGNATURE_32 ('F', 'V', 'B', 'C')\r
-\r
-typedef struct {\r
-  MEMMAP_DEVICE_PATH        MemMapDevPath;\r
-  EFI_DEVICE_PATH_PROTOCOL  EndDevPath;\r
-} FV_DEVICE_PATH;\r
-\r
-typedef struct {\r
-  UINTN                               Signature;\r
-  FV_DEVICE_PATH                      DevicePath;\r
-  UINTN                               Instance;\r
-  EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL  FwVolBlockInstance;\r
-  EFI_FVB_EXTENSION_PROTOCOL          FvbExtension;\r
-} EFI_FW_VOL_BLOCK_DEVICE;\r
-\r
-EFI_STATUS\r
-GetFvbInfo (\r
-  IN  EFI_PHYSICAL_ADDRESS              FvBaseAddress,\r
-  OUT EFI_FIRMWARE_VOLUME_HEADER        **FvbInfo\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-EnableFvbWrites (\r
-  IN  BOOLEAN   EnableWrites\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-PlatformGetFvbWriteBase (\r
-  IN  UINTN     CurrentBaseAddress,\r
-  IN  UINTN     *NewBaseAddress,\r
-  IN  BOOLEAN   *WriteEnabled\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-EnablePlatformFvb (\r
-  VOID\r
-  )\r
-;\r
-\r
-BOOLEAN\r
-SetPlatformFvbLock (\r
-  IN UINTN  LbaAddress\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-FvbReadBlock (\r
-  IN UINTN                                Instance,\r
-  IN EFI_LBA                              Lba,\r
-  IN UINTN                                BlockOffset,\r
-  IN OUT UINTN                            *NumBytes,\r
-  IN UINT8                                *Buffer,\r
-  IN ESAL_FWB_GLOBAL                      *Global,\r
-  IN BOOLEAN                              Virtual\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-FvbWriteBlock (\r
-  IN UINTN                                Instance,\r
-  IN EFI_LBA                              Lba,\r
-  IN UINTN                                BlockOffset,\r
-  IN OUT UINTN                            *NumBytes,\r
-  IN UINT8                                *Buffer,\r
-  IN ESAL_FWB_GLOBAL                      *Global,\r
-  IN BOOLEAN                              Virtual\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-FvbEraseBlock (\r
-  IN UINTN                                Instance,\r
-  IN EFI_LBA                              Lba,\r
-  IN ESAL_FWB_GLOBAL                      *Global,\r
-  IN BOOLEAN                              Virtual\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-FvbSetVolumeAttributes (\r
-  IN UINTN                                Instance,\r
-  IN OUT EFI_FVB_ATTRIBUTES               *Attributes,\r
-  IN ESAL_FWB_GLOBAL                      *Global,\r
-  IN BOOLEAN                              Virtual\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-FvbGetVolumeAttributes (\r
-  IN UINTN                                Instance,\r
-  OUT EFI_FVB_ATTRIBUTES                  *Attributes,\r
-  IN ESAL_FWB_GLOBAL                      *Global,\r
-  IN BOOLEAN                              Virtual\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-FvbGetPhysicalAddress (\r
-  IN UINTN                                Instance,\r
-  OUT EFI_PHYSICAL_ADDRESS                *Address,\r
-  IN ESAL_FWB_GLOBAL                      *Global,\r
-  IN BOOLEAN                              Virtual\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-FvbInitialize (\r
-  IN EFI_HANDLE         ImageHandle,\r
-  IN EFI_SYSTEM_TABLE   *SystemTable\r
-  )\r
-;\r
-\r
-\r
-VOID\r
-EFIAPI\r
-FvbClassAddressChangeEvent (\r
-  IN EFI_EVENT        Event,\r
-  IN VOID             *Context\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-FvbSpecificInitialize (\r
-  IN  ESAL_FWB_GLOBAL   *mFvbModuleGlobal\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-FvbGetLbaAddress (\r
-  IN  UINTN                               Instance,\r
-  IN  EFI_LBA                             Lba,\r
-  OUT UINTN                               *LbaAddress,\r
-  OUT UINTN                               *LbaWriteAddress,\r
-  OUT UINTN                               *LbaLength,\r
-  OUT UINTN                               *NumOfBlocks,\r
-  IN  ESAL_FWB_GLOBAL                     *Global,\r
-  IN  BOOLEAN                             Virtual\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-FvbEraseCustomBlockRange (\r
-  IN UINTN                                Instance,\r
-  IN EFI_LBA                              StartLba,\r
-  IN UINTN                                OffsetStartLba,\r
-  IN EFI_LBA                              LastLba,\r
-  IN UINTN                                OffsetLastLba,\r
-  IN ESAL_FWB_GLOBAL                      *Global,\r
-  IN BOOLEAN                              Virtual\r
-  )\r
-;\r
-\r
-//\r
-// Protocol APIs\r
-//\r
-EFI_STATUS\r
-EFIAPI\r
-FvbProtocolGetAttributes (\r
-  IN EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL           *This,\r
-  OUT EFI_FVB_ATTRIBUTES                          *Attributes\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-FvbProtocolSetAttributes (\r
-  IN EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL           *This,\r
-  IN OUT EFI_FVB_ATTRIBUTES                       *Attributes\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-FvbProtocolGetPhysicalAddress (\r
-  IN EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL           *This,\r
-  OUT EFI_PHYSICAL_ADDRESS                        *Address\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-FvbProtocolGetBlockSize (\r
-  IN EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL           *This,\r
-  IN  EFI_LBA                                     Lba,\r
-  OUT UINTN                                       *BlockSize,\r
-  OUT UINTN                                       *NumOfBlocks\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-FvbProtocolRead (\r
-  IN EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL           *This,\r
-  IN EFI_LBA                                      Lba,\r
-  IN UINTN                                        Offset,\r
-  IN OUT UINTN                                    *NumBytes,\r
-  IN UINT8                                        *Buffer\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-FvbProtocolWrite (\r
-  IN EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL           *This,\r
-  IN EFI_LBA                                      Lba,\r
-  IN UINTN                                        Offset,\r
-  IN OUT UINTN                                    *NumBytes,\r
-  IN UINT8                                        *Buffer\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-FvbProtocolEraseBlocks (\r
-  IN EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL    *This,\r
-  ...\r
-  )\r
-;\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-FvbExtendProtocolEraseCustomBlockRange (\r
-  IN EFI_FVB_EXTENSION_PROTOCOL           *This,\r
-  IN EFI_LBA                              StartLba,\r
-  IN UINTN                                OffsetStartLba,\r
-  IN EFI_LBA                              LastLba,\r
-  IN UINTN                                OffsetLastLba\r
-  )\r
-;\r
-\r
-#endif\r