/* $Id$ */
/** @file
* VBoxFsDxe.c - VirtualBox FS wrapper
*/
/*
* Copyright (C) 2010 Oracle Corporation
*
* This file is part of VirtualBox Open Source Edition (OSE), as
* available from http://www.virtualbox.org. This file is free software;
* General Public License (GPL) as published by the Free Software
* Foundation, in version 2 as it comes in the "COPYING" file of the
* VirtualBox OSE distribution. VirtualBox OSE is distributed in the
* hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
*
* The contents of this file may alternatively be used under the terms
* of the Common Development and Distribution License Version 1.0
* (CDDL) only, as it comes in the "COPYING.CDDL" file of the
* VirtualBox OSE distribution, in which case the provisions of the
* CDDL are applicable instead of those of the GPL.
*
* You may elect to license modified versions of this file under the
* terms and conditions of either the GPL or the CDDL or both.
*/
/*******************************************************************************
* Header Files *
*******************************************************************************/
#include <Protocol/ComponentName.h>
#include <Protocol/ComponentName2.h>
#include <Protocol/DriverBinding.h>
#include <Library/BaseMemoryLib.h>
#include <Library/DebugLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <IndustryStandard/Pci22.h>
/*******************************************************************************
* Internal Functions *
*******************************************************************************/
static EFI_STATUS EFIAPI
static EFI_STATUS EFIAPI
static EFI_STATUS EFIAPI
static EFI_STATUS EFIAPI
static EFI_STATUS EFIAPI
static EFI_STATUS EFIAPI
static EFI_STATUS EFIAPI
/** EFI Driver Binding Protocol. */
{
/* .Version = */ 1,
/* .ImageHandle = */ NULL,
/* .DriverBindingHandle = */ NULL
};
/** EFI Component Name Protocol. */
{
"eng"
};
/** EFI Component Name 2 Protocol. */
{
"en"
};
/** Driver name translation table. */
{
{ "eng;en", L"VBox Universal FS Wrapper Driver" },
};
/**
* VBoxFsDxe entry point.
*
* @returns EFI status code.
*
* @param ImageHandle The image handle.
* @param SystemTable The system table pointer.
*/
{
&g_VBoxFsCN, &g_VBoxFsCN2);
return rc;
}
{
return EFI_SUCCESS;
}
/**
* @copydoc EFI_DRIVER_BINDING_SUPPORTED
*/
static EFI_STATUS EFIAPI
{
/* EFI_STATUS rc; */
return rcRet;
}
/**
* @copydoc EFI_DRIVER_BINDING_START
*/
static EFI_STATUS EFIAPI
{
/* EFI_STATUS rc; */
return EFI_UNSUPPORTED;
}
/**
* @copydoc EFI_DRIVER_BINDING_STOP
*/
static EFI_STATUS EFIAPI
{
/* EFI_STATUS rc; */
return EFI_UNSUPPORTED;
}
/** @copydoc EFI_COMPONENT_NAME_GET_DRIVER_NAME */
static EFI_STATUS EFIAPI
{
return LookupUnicodeString2(Language,
TRUE);
}
/** @copydoc EFI_COMPONENT_NAME_GET_CONTROLLER_NAME */
static EFI_STATUS EFIAPI
{
/** @todo try query the protocol from the controller and forward the query. */
return EFI_UNSUPPORTED;
}
/** @copydoc EFI_COMPONENT_NAME2_GET_DRIVER_NAME */
static EFI_STATUS EFIAPI
{
return LookupUnicodeString2(Language,
FALSE);
}
/** @copydoc EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME */
static EFI_STATUS EFIAPI
{
/** @todo try query the protocol from the controller and forward the query. */
return EFI_UNSUPPORTED;
}