MdePkg[all]  1.08
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
RamDisk.h File Reference

Data Structures

struct  _EFI_RAM_DISK_PROTOCOL
 

Macros

#define EFI_RAM_DISK_PROTOCOL_GUID   { 0xab38a0df, 0x6873, 0x44a9, { 0x87, 0xe6, 0xd4, 0xeb, 0x56, 0x14, 0x84, 0x49 }};
 

Typedefs

typedef struct
_EFI_RAM_DISK_PROTOCOL 
EFI_RAM_DISK_PROTOCOL
 
typedef IN UINT64 RamDiskSize
 
typedef IN UINT64 IN EFI_GUIDRamDiskType
 
typedef IN UINT64 IN EFI_GUID
IN EFI_DEVICE_PATH
ParentDevicePath
 
typedef IN UINT64 IN EFI_GUID
IN EFI_DEVICE_PATH OUT
EFI_DEVICE_PATH_PROTOCOL ** 
DevicePath
 

Functions

typedef EFI_STATUS (EFIAPI *EFI_RAM_DISK_REGISTER_RAMDISK)(IN UINT64 RamDiskBase
 

Variables

EFI_GUID gEfiRamDiskProtocolGuid
 

Detailed Description

This file defines the EFI RAM Disk Protocol.

Copyright (c) 2016, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Revision Reference:
This Protocol is introduced in UEFI Specification 2.6

Macro Definition Documentation

#define EFI_RAM_DISK_PROTOCOL_GUID   { 0xab38a0df, 0x6873, 0x44a9, { 0x87, 0xe6, 0xd4, 0xeb, 0x56, 0x14, 0x84, 0x49 }};

Typedef Documentation

Function Documentation

typedef EFI_STATUS ( EFIAPI EFI_RAM_DISK_REGISTER_RAMDISK)

Register a RAM disk with specified address, size and type.

Parameters
[in]RamDiskBaseThe base address of registered RAM disk.
[in]RamDiskSizeThe size of registered RAM disk.
[in]RamDiskTypeThe type of registered RAM disk. The GUID can be any of the values defined in section 9.3.6.9, or a vendor defined GUID.
[in]ParentDevicePathPointer to the parent device path. If there is no parent device path then ParentDevicePath is NULL.
[out]DevicePathOn return, points to a pointer to the device path of the RAM disk device. If ParentDevicePath is not NULL, the returned DevicePath is created by appending a RAM disk node to the parent device path. If ParentDevicePath is NULL, the returned DevicePath is a RAM disk device path without appending. This function is responsible for allocating the buffer DevicePath with the boot service AllocatePool().
Return values
EFI_SUCCESSThe RAM disk is registered successfully.
EFI_INVALID_PARAMETERDevicePath or RamDiskType is NULL. RamDiskSize is 0.
EFI_ALREADY_STARTEDA Device Path Protocol instance to be created is already present in the handle database.
EFI_OUT_OF_RESOURCESThe RAM disk register operation fails due to resource limitation.

Unregister a RAM disk specified by DevicePath.

Parameters
[in]DevicePathA pointer to the device path that describes a RAM Disk device.
Return values
EFI_SUCCESSThe RAM disk is unregistered successfully.
EFI_INVALID_PARAMETERDevicePath is NULL.
EFI_UNSUPPORTEDThe device specified by DevicePath is not a valid ramdisk device path and not supported by the driver.
EFI_NOT_FOUNDThe RAM disk pointed by DevicePath doesn't exist.

Variable Documentation

EFI_GUID gEfiRamDiskProtocolGuid

RAM Disk Protocol GUID variable.