X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=MdeModulePkg%2FUniversal%2FNetwork%2FSnpDxe%2FNvdata.c;h=7010b63a540961330aa49879215094b5c7cf6d31;hb=c0fd7f734e2d33e22215899b40a47b843129541d;hp=8cd69bc37cd4bfe8eac321e92b17c8c8d43b23ef;hpb=7b0ae7e82a079fde8eef0455363725755769c332;p=mirror_edk2.git diff --git a/MdeModulePkg/Universal/Network/SnpDxe/Nvdata.c b/MdeModulePkg/Universal/Network/SnpDxe/Nvdata.c index 8cd69bc37c..7010b63a54 100644 --- a/MdeModulePkg/Universal/Network/SnpDxe/Nvdata.c +++ b/MdeModulePkg/Universal/Network/SnpDxe/Nvdata.c @@ -1,15 +1,9 @@ /** @file - Implementation of reading and writing operations on the NVRAM device - attached to a network interface. - -Copyright (c) 2004 - 2009, Intel Corporation.
-All rights reserved. This program and the accompanying materials are licensed -and made available under the terms and conditions of the BSD License which -accompanies this distribution. The full text of the license may be found at -http://opensource.org/licenses/bsd-license.php - -THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + Implementation of reading and writing operations on the NVRAM device + attached to a network interface. + +Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.
+SPDX-License-Identifier: BSD-2-Clause-Patent **/ @@ -48,7 +42,7 @@ PxeNvDataRead ( Snp->Cdb.CPBsize = PXE_CPBSIZE_NOT_USED; Snp->Cdb.CPBaddr = PXE_CPBADDR_NOT_USED; - Snp->Cdb.DBsize = sizeof (PXE_DB_NVDATA); + Snp->Cdb.DBsize = (UINT16) sizeof (PXE_DB_NVDATA); Snp->Cdb.DBaddr = (UINT64)(UINTN) Db; Snp->Cdb.StatCode = PXE_STATCODE_INITIALIZE; @@ -97,51 +91,51 @@ PxeNvDataRead ( /** - Performs read and write operations on the NVRAM device attached to a network + Performs read and write operations on the NVRAM device attached to a network interface. - - This function performs read and write operations on the NVRAM device attached + + This function performs read and write operations on the NVRAM device attached to a network interface. If ReadWrite is TRUE, a read operation is performed. - If ReadWrite is FALSE, a write operation is performed. Offset specifies the - byte offset at which to start either operation. Offset must be a multiple of - NvRamAccessSize , and it must have a value between zero and NvRamSize. + If ReadWrite is FALSE, a write operation is performed. Offset specifies the + byte offset at which to start either operation. Offset must be a multiple of + NvRamAccessSize , and it must have a value between zero and NvRamSize. BufferSize specifies the length of the read or write operation. BufferSize must also be a multiple of NvRamAccessSize, and Offset + BufferSize must not exceed - NvRamSize. - If any of the above conditions is not met, then EFI_INVALID_PARAMETER will be - returned. - If all the conditions are met and the operation is "read," the NVRAM device - attached to the network interface will be read into Buffer and EFI_SUCCESS + NvRamSize. + If any of the above conditions is not met, then EFI_INVALID_PARAMETER will be + returned. + If all the conditions are met and the operation is "read," the NVRAM device + attached to the network interface will be read into Buffer and EFI_SUCCESS will be returned. If this is a write operation, the contents of Buffer will be - used to update the contents of the NVRAM device attached to the network + used to update the contents of the NVRAM device attached to the network interface and EFI_SUCCESS will be returned. - + It does the basic checking on the input parameters and retrieves snp structure and then calls the read_nvdata() call which does the actual reading @param This A pointer to the EFI_SIMPLE_NETWORK_PROTOCOL instance. @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. (See EFI_SIMPLE_NETWORK_MODE) - @param BufferSize The number of bytes to read or write from the NVRAM device. + @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. (See EFI_SIMPLE_NETWORK_MODE) + @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 following conditions is TRUE: - * The This parameter is NULL - * The This parameter does not point to a valid + * The This parameter is NULL + * The This parameter does not point to a valid EFI_SIMPLE_NETWORK_PROTOCOL structure - * The Offset parameter is not a multiple of + * The Offset parameter is not a multiple of EFI_SIMPLE_NETWORK_MODE.NvRamAccessSize - * The Offset parameter is not less than + * The Offset parameter is not less than EFI_SIMPLE_NETWORK_MODE.NvRamSize - * The BufferSize parameter is not a multiple of + * The BufferSize parameter is not a multiple of EFI_SIMPLE_NETWORK_MODE.NvRamAccessSize * The Buffer parameter is NULL - @retval EFI_DEVICE_ERROR The command could not be sent to the network + @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.