audk/OvmfPkg/VirtioNetDxe/SnpUnsupported.c

155 lines
5.6 KiB
C

/** @file
Empty implementation of the SNP methods that dependent protocols don't
absolutely need and the UEFI-2.3.1+errC specification allows us not to
support.
Copyright (C) 2013, Red Hat, Inc.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
#include "VirtioNet.h"
/**
Resets a network adapter and re-initializes it with the parameters that were
provided in the previous call to Initialize().
@param This The protocol instance pointer.
@param ExtendedVerification Indicates that the driver may perform a more
exhaustive verification operation of the device
during reset.
@retval EFI_SUCCESS The network interface was reset.
@retval EFI_NOT_STARTED The network interface has not been started.
@retval EFI_INVALID_PARAMETER One or more of the parameters has an
unsupported value.
@retval EFI_DEVICE_ERROR The command could not be sent to the network
interface.
@retval EFI_UNSUPPORTED This function is not supported by the network
interface.
**/
EFI_STATUS
EFIAPI
VirtioNetReset (
IN EFI_SIMPLE_NETWORK_PROTOCOL *This,
IN BOOLEAN ExtendedVerification
)
{
return EFI_UNSUPPORTED;
}
/**
Modifies or resets the current station address, if supported.
@param This The protocol instance pointer.
@param Reset Flag used to reset the station address to the network
interfaces permanent address.
@param New The new station address to be used for the network interface.
@retval EFI_SUCCESS The network interfaces station address was
updated.
@retval EFI_NOT_STARTED The network interface has not been started.
@retval EFI_INVALID_PARAMETER One or more of the parameters has an
unsupported value.
@retval EFI_DEVICE_ERROR The command could not be sent to the network
interface.
@retval EFI_UNSUPPORTED This function is not supported by the network
interface.
**/
EFI_STATUS
EFIAPI
VirtioNetStationAddress (
IN EFI_SIMPLE_NETWORK_PROTOCOL *This,
IN BOOLEAN Reset,
IN EFI_MAC_ADDRESS *New OPTIONAL
)
{
return EFI_UNSUPPORTED;
}
/**
Resets or collects the statistics on a network interface.
@param This Protocol instance pointer.
@param Reset Set to TRUE to reset the statistics for the network
interface.
@param StatisticsSize On input the size, in bytes, of StatisticsTable. On
output the size, in bytes, of the resulting table of
statistics.
@param StatisticsTable A pointer to the EFI_NETWORK_STATISTICS structure
that contains the statistics.
@retval EFI_SUCCESS The statistics were collected from the network
interface.
@retval EFI_NOT_STARTED The network interface has not been started.
@retval EFI_BUFFER_TOO_SMALL The Statistics buffer was too small. The
current buffer size needed to hold the
statistics is returned in StatisticsSize.
@retval EFI_INVALID_PARAMETER One or more of the parameters has an
unsupported value.
@retval EFI_DEVICE_ERROR The command could not be sent to the network
interface.
@retval EFI_UNSUPPORTED This function is not supported by the network
interface.
**/
EFI_STATUS
EFIAPI
VirtioNetStatistics (
IN EFI_SIMPLE_NETWORK_PROTOCOL *This,
IN BOOLEAN Reset,
IN OUT UINTN *StatisticsSize OPTIONAL,
OUT EFI_NETWORK_STATISTICS *StatisticsTable OPTIONAL
)
{
return EFI_UNSUPPORTED;
}
/**
Performs read and write operations on the NVRAM device attached to a network
interface.
@param This The protocol instance pointer.
@param ReadWrite TRUE for read operations, FALSE for write operations.
@param Offset Byte offset in the NVRAM device at which to start the read
or write operation. This must be a multiple of
NvRamAccessSize and less than NvRamSize.
@param BufferSize The number of bytes to read or write from the NVRAM
device. This must also be a multiple of NvramAccessSize.
@param Buffer A pointer to the data buffer.
@retval EFI_SUCCESS The NVRAM access was performed.
@retval EFI_NOT_STARTED The network interface has not been started.
@retval EFI_INVALID_PARAMETER One or more of the parameters has an
unsupported value.
@retval EFI_DEVICE_ERROR The command could not be sent to the network
interface.
@retval EFI_UNSUPPORTED This function is not supported by the network
interface.
**/
EFI_STATUS
EFIAPI
VirtioNetNvData (
IN EFI_SIMPLE_NETWORK_PROTOCOL *This,
IN BOOLEAN ReadWrite,
IN UINTN Offset,
IN UINTN BufferSize,
IN OUT VOID *Buffer
)
{
return EFI_UNSUPPORTED;
}