2013-06-14 09:40:42 +02:00
|
|
|
/** @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>
|
|
|
|
|
2019-04-04 01:06:33 +02:00
|
|
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
2013-06-14 09:40:42 +02:00
|
|
|
|
|
|
|
**/
|
|
|
|
|
|
|
|
#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;
|
|
|
|
}
|