IntelFrameworkModulePkg: Clean up source files
1. Do not use tab characters 2. No trailing white space in one line 3. All files must end with CRLF Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com>
This commit is contained in:
@@ -5,7 +5,7 @@
|
||||
Availible on http://www.t13.org/#Project drafts
|
||||
Currently at ftp://fission.dt.wdc.com/pub/standards/x3t13/project/d1386r4.pdf
|
||||
|
||||
Copyright (c) 1999 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions
|
||||
@@ -156,14 +156,14 @@ BiosBlockIoDriverBindingSupported (
|
||||
if (EFI_ERROR (Status)) {
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
||||
gBS->CloseProtocol (
|
||||
Controller,
|
||||
&gEfiDevicePathProtocolGuid,
|
||||
This->DriverBindingHandle,
|
||||
Controller
|
||||
);
|
||||
|
||||
);
|
||||
|
||||
//
|
||||
// Open the IO Abstraction(s) needed to perform the supported test
|
||||
//
|
||||
@@ -243,8 +243,8 @@ BiosBlockIoDriverBindingStart (
|
||||
//
|
||||
PciIo = NULL;
|
||||
PciDevPath = NULL;
|
||||
|
||||
DeviceEnable = FALSE;
|
||||
|
||||
DeviceEnable = FALSE;
|
||||
|
||||
//
|
||||
// See if the Legacy BIOS Protocol is available
|
||||
@@ -292,9 +292,9 @@ BiosBlockIoDriverBindingStart (
|
||||
if (EFI_ERROR (Status)) {
|
||||
goto Error;
|
||||
}
|
||||
|
||||
|
||||
DeviceEnable = TRUE;
|
||||
|
||||
|
||||
//
|
||||
// Check to see if there is a legacy option ROM image associated with this PCI device
|
||||
//
|
||||
@@ -635,9 +635,9 @@ SetBiosInitBlockIoDevicePath (
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
BLOCKIO_VENDOR_DEVICE_PATH VendorNode;
|
||||
|
||||
|
||||
Status = EFI_UNSUPPORTED;
|
||||
|
||||
|
||||
//
|
||||
// BugBug: Check for memory leaks!
|
||||
//
|
||||
@@ -647,7 +647,7 @@ SetBiosInitBlockIoDevicePath (
|
||||
//
|
||||
Status = BuildEdd30DevicePath (BaseDevicePath, Drive, DevicePath);
|
||||
}
|
||||
|
||||
|
||||
if (EFI_ERROR (Status)) {
|
||||
//
|
||||
// EDD 1.1 device case or it is unrecognized EDD 3.0 device
|
||||
@@ -767,14 +767,14 @@ BuildEdd30DevicePath (
|
||||
Drive->Number,
|
||||
Drive->Parameters.InterfaceType
|
||||
)
|
||||
);
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
if (Node.DevPath.Type == 0) {
|
||||
return EFI_UNSUPPORTED;
|
||||
}
|
||||
|
||||
|
||||
*DevicePath = AppendDevicePathNode (BaseDevicePath, &Node.DevPath);
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
|
@@ -1,6 +1,6 @@
|
||||
/** @file
|
||||
|
||||
Copyright (c) 1999 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions
|
||||
@@ -173,7 +173,7 @@ BiosInitBlockIo (
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@retval EFI_MEDIA_CHANGED The MediaId does not matched the current device.
|
||||
@retval EFI_BAD_BUFFER_SIZE The Buffer was not a multiple of the block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The read request contains LBAs that are not valid,
|
||||
@retval EFI_INVALID_PARAMETER The read request contains LBAs that are not valid,
|
||||
or the buffer is not on proper alignment.
|
||||
|
||||
**/
|
||||
@@ -203,7 +203,7 @@ Edd30BiosReadBlocks (
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@retval EFI_MEDIA_CHNAGED The MediaId does not matched the current device.
|
||||
@retval EFI_BAD_BUFFER_SIZE The Buffer was not a multiple of the block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
or the buffer is not on proper alignment.
|
||||
|
||||
**/
|
||||
@@ -266,7 +266,7 @@ BiosBlockIoReset (
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@retval EFI_MEDIA_CHANGED The MediaId does not matched the current device.
|
||||
@retval EFI_BAD_BUFFER_SIZE The Buffer was not a multiple of the block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The read request contains LBAs that are not valid,
|
||||
@retval EFI_INVALID_PARAMETER The read request contains LBAs that are not valid,
|
||||
or the buffer is not on proper alignment.
|
||||
|
||||
**/
|
||||
@@ -296,7 +296,7 @@ Edd11BiosReadBlocks (
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@retval EFI_MEDIA_CHNAGED The MediaId does not matched the current device.
|
||||
@retval EFI_BAD_BUFFER_SIZE The Buffer was not a multiple of the block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
or the buffer is not on proper alignment.
|
||||
|
||||
**/
|
||||
@@ -325,7 +325,7 @@ Edd11BiosWriteBlocks (
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@retval EFI_MEDIA_CHANGED The MediaId does not matched the current device.
|
||||
@retval EFI_BAD_BUFFER_SIZE The Buffer was not a multiple of the block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The read request contains LBAs that are not valid,
|
||||
@retval EFI_INVALID_PARAMETER The read request contains LBAs that are not valid,
|
||||
or the buffer is not on proper alignment.
|
||||
|
||||
**/
|
||||
@@ -355,7 +355,7 @@ BiosReadLegacyDrive (
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@retval EFI_MEDIA_CHNAGED The MediaId does not matched the current device.
|
||||
@retval EFI_BAD_BUFFER_SIZE The Buffer was not a multiple of the block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
or the buffer is not on proper alignment.
|
||||
|
||||
**/
|
||||
@@ -376,7 +376,7 @@ BiosWriteLegacyDrive (
|
||||
@param Drive Legacy drive.
|
||||
|
||||
@return Result of device parameter retrieval.
|
||||
|
||||
|
||||
**/
|
||||
UINTN
|
||||
Int13GetDeviceParameters (
|
||||
@@ -391,7 +391,7 @@ Int13GetDeviceParameters (
|
||||
@param Drive Legacy drive.
|
||||
|
||||
@return Result of this extension.
|
||||
|
||||
|
||||
**/
|
||||
UINTN
|
||||
Int13Extensions (
|
||||
@@ -406,7 +406,7 @@ Int13Extensions (
|
||||
@param Drive Legacy drive.
|
||||
|
||||
@return Result of drive parameter retrieval.
|
||||
|
||||
|
||||
**/
|
||||
UINTN
|
||||
GetDriveParameters (
|
||||
|
@@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
Routines that use BIOS to support INT 13 devices.
|
||||
|
||||
Copyright (c) 1999 - 2015, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions
|
||||
@@ -130,7 +130,7 @@ BiosInitBlockIo (
|
||||
@param Drive Legacy drive.
|
||||
|
||||
@return Result of device parameter retrieval.
|
||||
|
||||
|
||||
**/
|
||||
UINTN
|
||||
Int13GetDeviceParameters (
|
||||
@@ -185,7 +185,7 @@ Int13GetDeviceParameters (
|
||||
@param Drive Legacy drive.
|
||||
|
||||
@return Result of this extension.
|
||||
|
||||
|
||||
**/
|
||||
UINTN
|
||||
Int13Extensions (
|
||||
@@ -227,7 +227,7 @@ Int13Extensions (
|
||||
@param Drive Legacy drive.
|
||||
|
||||
@return Result of drive parameter retrieval.
|
||||
|
||||
|
||||
**/
|
||||
UINTN
|
||||
GetDriveParameters (
|
||||
@@ -406,7 +406,7 @@ GetDriveParameters (
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@retval EFI_MEDIA_CHANGED The MediaId does not matched the current device.
|
||||
@retval EFI_BAD_BUFFER_SIZE The Buffer was not a multiple of the block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The read request contains LBAs that are not valid,
|
||||
@retval EFI_INVALID_PARAMETER The read request contains LBAs that are not valid,
|
||||
or the buffer is not on proper alignment.
|
||||
|
||||
**/
|
||||
@@ -554,7 +554,7 @@ Edd30BiosReadBlocks (
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@retval EFI_MEDIA_CHNAGED The MediaId does not matched the current device.
|
||||
@retval EFI_BAD_BUFFER_SIZE The Buffer was not a multiple of the block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
or the buffer is not on proper alignment.
|
||||
|
||||
**/
|
||||
@@ -789,7 +789,7 @@ BiosBlockIoReset (
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@retval EFI_MEDIA_CHANGED The MediaId does not matched the current device.
|
||||
@retval EFI_BAD_BUFFER_SIZE The Buffer was not a multiple of the block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The read request contains LBAs that are not valid,
|
||||
@retval EFI_INVALID_PARAMETER The read request contains LBAs that are not valid,
|
||||
or the buffer is not on proper alignment.
|
||||
|
||||
**/
|
||||
@@ -942,7 +942,7 @@ Edd11BiosReadBlocks (
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@retval EFI_MEDIA_CHNAGED The MediaId does not matched the current device.
|
||||
@retval EFI_BAD_BUFFER_SIZE The Buffer was not a multiple of the block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
or the buffer is not on proper alignment.
|
||||
|
||||
**/
|
||||
@@ -1103,7 +1103,7 @@ Edd11BiosWriteBlocks (
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@retval EFI_MEDIA_CHANGED The MediaId does not matched the current device.
|
||||
@retval EFI_BAD_BUFFER_SIZE The Buffer was not a multiple of the block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The read request contains LBAs that are not valid,
|
||||
@retval EFI_INVALID_PARAMETER The read request contains LBAs that are not valid,
|
||||
or the buffer is not on proper alignment.
|
||||
|
||||
**/
|
||||
@@ -1305,7 +1305,7 @@ BiosReadLegacyDrive (
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@retval EFI_MEDIA_CHNAGED The MediaId does not matched the current device.
|
||||
@retval EFI_BAD_BUFFER_SIZE The Buffer was not a multiple of the block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
or the buffer is not on proper alignment.
|
||||
|
||||
**/
|
||||
|
@@ -4,14 +4,14 @@
|
||||
// This is the UEFI driver to thunk legacy BIOS int13 interface into UEFI block IO interface.
|
||||
// Once connected it installs EfiBlockIoProtocol on top of legacy BIOS int13.
|
||||
//
|
||||
// Copyright (c) 1999 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
// Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
//
|
||||
// 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.
|
||||
//
|
||||
|
@@ -1,7 +1,7 @@
|
||||
// /** @file
|
||||
// BlockIoDxe Localized Strings and Content
|
||||
//
|
||||
// Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
// Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
//
|
||||
// This program and the accompanying materials
|
||||
// are licensed and made available under the terms and conditions
|
||||
@@ -14,8 +14,8 @@
|
||||
//
|
||||
// **/
|
||||
|
||||
#string STR_PROPERTIES_MODULE_NAME
|
||||
#language en-US
|
||||
#string STR_PROPERTIES_MODULE_NAME
|
||||
#language en-US
|
||||
"Legacy Block I/O DXE Driver"
|
||||
|
||||
|
||||
|
@@ -58,7 +58,7 @@ Enqueue (
|
||||
|
||||
/**
|
||||
Dequeue the key.
|
||||
|
||||
|
||||
@param Queue The queue to be dequeued.
|
||||
@param KeyData The key data to be dequeued.
|
||||
|
||||
@@ -85,7 +85,7 @@ Dequeue (
|
||||
|
||||
/**
|
||||
Check whether the queue is empty.
|
||||
|
||||
|
||||
@param Queue The queue to be checked.
|
||||
|
||||
@retval EFI_NOT_READY The queue is empty.
|
||||
@@ -279,8 +279,8 @@ BiosKeyboardDriverBindingStart (
|
||||
BiosKeyboardPrivate->SimpleTextInputEx.Reset = BiosKeyboardResetEx;
|
||||
BiosKeyboardPrivate->SimpleTextInputEx.ReadKeyStrokeEx = BiosKeyboardReadKeyStrokeEx;
|
||||
BiosKeyboardPrivate->SimpleTextInputEx.SetState = BiosKeyboardSetState;
|
||||
BiosKeyboardPrivate->SimpleTextInputEx.RegisterKeyNotify = BiosKeyboardRegisterKeyNotify;
|
||||
BiosKeyboardPrivate->SimpleTextInputEx.UnregisterKeyNotify = BiosKeyboardUnregisterKeyNotify;
|
||||
BiosKeyboardPrivate->SimpleTextInputEx.RegisterKeyNotify = BiosKeyboardRegisterKeyNotify;
|
||||
BiosKeyboardPrivate->SimpleTextInputEx.UnregisterKeyNotify = BiosKeyboardUnregisterKeyNotify;
|
||||
InitializeListHead (&BiosKeyboardPrivate->NotifyList);
|
||||
|
||||
//
|
||||
@@ -315,7 +315,7 @@ BiosKeyboardDriverBindingStart (
|
||||
if (EFI_ERROR (Status)) {
|
||||
BiosKeyboardPrivate->SimpleTextInputEx.WaitForKeyEx = NULL;
|
||||
goto Done;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Setup a periodic timer, used for reading keystrokes at a fixed interval
|
||||
@@ -373,7 +373,7 @@ BiosKeyboardDriverBindingStart (
|
||||
FeaturePcdGet (PcdPs2KbdExtendedVerification)
|
||||
);
|
||||
if (EFI_ERROR (Status)) {
|
||||
DEBUG ((EFI_D_ERROR, "[KBD]Reset Failed. Status - %r\n", Status));
|
||||
DEBUG ((EFI_D_ERROR, "[KBD]Reset Failed. Status - %r\n", Status));
|
||||
StatusCode = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_NOT_DETECTED;
|
||||
goto Done;
|
||||
}
|
||||
@@ -471,13 +471,13 @@ Done:
|
||||
|
||||
if (EFI_ERROR (Status)) {
|
||||
|
||||
if (BiosKeyboardPrivate != NULL) {
|
||||
if (BiosKeyboardPrivate != NULL) {
|
||||
if ((BiosKeyboardPrivate->SimpleTextIn).WaitForKey != NULL) {
|
||||
gBS->CloseEvent ((BiosKeyboardPrivate->SimpleTextIn).WaitForKey);
|
||||
}
|
||||
|
||||
if ((BiosKeyboardPrivate->SimpleTextInputEx).WaitForKeyEx != NULL) {
|
||||
gBS->CloseEvent ((BiosKeyboardPrivate->SimpleTextInputEx).WaitForKeyEx);
|
||||
gBS->CloseEvent ((BiosKeyboardPrivate->SimpleTextInputEx).WaitForKeyEx);
|
||||
}
|
||||
|
||||
if (BiosKeyboardPrivate->KeyNotifyProcessEvent != NULL) {
|
||||
@@ -487,7 +487,7 @@ Done:
|
||||
BiosKeyboardFreeNotifyList (&BiosKeyboardPrivate->NotifyList);
|
||||
|
||||
if (BiosKeyboardPrivate->TimerEvent != NULL) {
|
||||
gBS->CloseEvent (BiosKeyboardPrivate->TimerEvent);
|
||||
gBS->CloseEvent (BiosKeyboardPrivate->TimerEvent);
|
||||
}
|
||||
|
||||
FreePool (BiosKeyboardPrivate);
|
||||
@@ -558,7 +558,7 @@ BiosKeyboardDriverBindingStop (
|
||||
if (EFI_ERROR (Status)) {
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
||||
BiosKeyboardPrivate = BIOS_KEYBOARD_DEV_FROM_THIS (SimpleTextIn);
|
||||
|
||||
Status = gBS->UninstallMultipleProtocolInterfaces (
|
||||
@@ -930,19 +930,19 @@ KeyboardWaitForValue (
|
||||
}
|
||||
|
||||
/**
|
||||
Reads the next keystroke from the input device. The WaitForKey Event can
|
||||
Reads the next keystroke from the input device. The WaitForKey Event can
|
||||
be used to test for existance of a keystroke via WaitForEvent () call.
|
||||
|
||||
@param BiosKeyboardPrivate Bioskeyboard driver private structure.
|
||||
@param KeyData A pointer to a buffer that is filled in with the keystroke
|
||||
@param KeyData A pointer to a buffer that is filled in with the keystroke
|
||||
state data for the key that was pressed.
|
||||
|
||||
@retval EFI_SUCCESS The keystroke information was returned.
|
||||
@retval EFI_NOT_READY There was no keystroke data availiable.
|
||||
@retval EFI_DEVICE_ERROR The keystroke information was not returned due to
|
||||
@retval EFI_DEVICE_ERROR The keystroke information was not returned due to
|
||||
hardware errors.
|
||||
@retval EFI_INVALID_PARAMETER KeyData is NULL.
|
||||
|
||||
@retval EFI_INVALID_PARAMETER KeyData is NULL.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
KeyboardReadKeyStrokeWorker (
|
||||
@@ -959,14 +959,14 @@ KeyboardReadKeyStrokeWorker (
|
||||
//
|
||||
// Use TimerEvent callback function to check whether there's any key pressed
|
||||
//
|
||||
|
||||
|
||||
//
|
||||
// Stall 1ms to give a chance to let other driver interrupt this routine for their timer event.
|
||||
// Csm will be used to check whether there is a key pending, but the csm will disable all
|
||||
// Csm will be used to check whether there is a key pending, but the csm will disable all
|
||||
// interrupt before switch to compatibility16, which mean all the efiCompatibility timer
|
||||
// event will stop work during the compatibility16. And If a caller recursivly invoke this function,
|
||||
// e.g. OS loader, other drivers which are driven by timer event will have a bad performance during this period,
|
||||
// e.g. usb keyboard driver.
|
||||
// event will stop work during the compatibility16. And If a caller recursivly invoke this function,
|
||||
// e.g. OS loader, other drivers which are driven by timer event will have a bad performance during this period,
|
||||
// e.g. usb keyboard driver.
|
||||
// Add a stall period can greatly increate other driver performance during the WaitForKey is recursivly invoked.
|
||||
// 1ms delay will make little impact to the thunk keyboard driver, and user can not feel the delay at all when input.
|
||||
//
|
||||
@@ -1075,17 +1075,17 @@ BiosKeyboardReset (
|
||||
BiosKeyboardPrivate,
|
||||
KBC_CMDREG_VIA64_CMDBYTE_R
|
||||
);
|
||||
|
||||
|
||||
if (EFI_ERROR (Status)) {
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
goto Exit;
|
||||
}
|
||||
|
||||
|
||||
Status = KeyboardRead (
|
||||
BiosKeyboardPrivate,
|
||||
&CommandByte
|
||||
);
|
||||
|
||||
|
||||
if (EFI_ERROR (Status)) {
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
goto Exit;
|
||||
@@ -1106,17 +1106,17 @@ BiosKeyboardReset (
|
||||
BiosKeyboardPrivate,
|
||||
KBC_CMDREG_VIA64_AUX_DISABLE
|
||||
);
|
||||
|
||||
|
||||
if (EFI_ERROR (Status)) {
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
goto Exit;
|
||||
}
|
||||
|
||||
|
||||
Status = KeyboardCommand (
|
||||
BiosKeyboardPrivate,
|
||||
KBC_CMDREG_VIA64_KB_DISABLE
|
||||
);
|
||||
|
||||
|
||||
if (EFI_ERROR (Status)) {
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
goto Exit;
|
||||
@@ -1128,12 +1128,12 @@ BiosKeyboardReset (
|
||||
//
|
||||
//
|
||||
// Report a Progress Code for performing a self test on the keyboard controller
|
||||
//
|
||||
//
|
||||
REPORT_STATUS_CODE (
|
||||
EFI_PROGRESS_CODE,
|
||||
EFI_PERIPHERAL_KEYBOARD | EFI_P_KEYBOARD_PC_SELF_TEST
|
||||
);
|
||||
|
||||
|
||||
Status = KeyboardCommand (
|
||||
BiosKeyboardPrivate,
|
||||
KBC_CMDREG_VIA64_KBC_SLFTEST
|
||||
@@ -1142,7 +1142,7 @@ BiosKeyboardReset (
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
goto Exit;
|
||||
}
|
||||
|
||||
|
||||
Status = KeyboardWaitForValue (
|
||||
BiosKeyboardPrivate,
|
||||
KBC_CMDECHO_KBCSLFTEST_OK,
|
||||
@@ -1352,7 +1352,7 @@ BiosKeyboardReset (
|
||||
BiosKeyboardPrivate,
|
||||
KBC_CMDREG_VIA64_KB_ENABLE
|
||||
);
|
||||
|
||||
|
||||
if (EFI_ERROR (Status)) {
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
goto Exit;
|
||||
@@ -1425,7 +1425,7 @@ BiosKeyboardReadKeyStroke (
|
||||
}
|
||||
}
|
||||
|
||||
CopyMem (Key, &KeyData.Key, sizeof (EFI_INPUT_KEY));
|
||||
CopyMem (Key, &KeyData.Key, sizeof (EFI_INPUT_KEY));
|
||||
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
@@ -1469,7 +1469,7 @@ BiosKeyboardWaitForKey (
|
||||
Check key buffer to get the key stroke status.
|
||||
|
||||
@param This Pointer of the protocol EFI_SIMPLE_TEXT_IN_PROTOCOL.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS A key is being pressed now.
|
||||
@retval Other No key is now pressed.
|
||||
|
||||
@@ -1644,7 +1644,7 @@ CONVERT_TABLE_ENTRY mConvertTable[] = {
|
||||
@param KeyChar Unicode of key.
|
||||
@param ScanCode Scan code of key.
|
||||
|
||||
@return The value of EFI Scancode for the key.
|
||||
@return The value of EFI Scancode for the key.
|
||||
@retval SCAN_NULL No corresponding value in the EFI convert table is found for the key.
|
||||
|
||||
**/
|
||||
@@ -1682,7 +1682,7 @@ ConvertToEFIScanCode (
|
||||
/**
|
||||
Check whether there is Ps/2 Keyboard device in system by 0xF4 Keyboard Command
|
||||
If Keyboard receives 0xF4, it will respond with 'ACK'. If it doesn't respond, the device
|
||||
should not be in system.
|
||||
should not be in system.
|
||||
|
||||
@param BiosKeyboardPrivate Keyboard Private Data Struture
|
||||
|
||||
@@ -1738,9 +1738,9 @@ CheckKeyboardConnect (
|
||||
|
||||
/**
|
||||
Timer event handler: read a series of key stroke from 8042
|
||||
and put them into memory key buffer.
|
||||
and put them into memory key buffer.
|
||||
It is registered as running under TPL_NOTIFY
|
||||
|
||||
|
||||
@param Event The timer event
|
||||
@param Context A BIOS_KEYBOARD_DEV pointer
|
||||
|
||||
@@ -1785,7 +1785,7 @@ BiosKeyboardTimerHandler (
|
||||
if (Regs.X.Flags.ZF != 0) {
|
||||
gBS->RestoreTPL (OldTpl);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Read the key
|
||||
@@ -1810,27 +1810,27 @@ BiosKeyboardTimerHandler (
|
||||
KeyData.Key.ScanCode,
|
||||
KeyData.Key.UnicodeChar
|
||||
));
|
||||
|
||||
|
||||
KeyData.KeyState.KeyShiftState = EFI_SHIFT_STATE_VALID;
|
||||
KeyData.KeyState.KeyToggleState = EFI_TOGGLE_STATE_VALID;
|
||||
//
|
||||
// Leagcy Bios use Int 9 which is IRQ1 interrupt handler to get keystroke scancode to KB buffer in BDA (BIOS DATE AREA), then
|
||||
// Int 16 depend KB buffer and some key bits in BDA to translate the scancode to ASCII code, and return both the scancode and ASCII
|
||||
// code to Int 16 caller. This translation process works well if the Int 9 could response user input in time. But in Tiano enviorment, the Int 9
|
||||
// will be disabled after the thunk call finish, which means if user crazy input during int 9 being disabled, some keystrokes will be lost when
|
||||
// KB device own hardware buffer overflows. And if the lost keystroke code is CTRL or ALT or SHIFT release code, these function key flags bit
|
||||
// in BDA will not be updated. So the Int 16 will believe the CTRL or ALT or SHIFT is still pressed, and Int 16 will translate later scancode
|
||||
// Leagcy Bios use Int 9 which is IRQ1 interrupt handler to get keystroke scancode to KB buffer in BDA (BIOS DATE AREA), then
|
||||
// Int 16 depend KB buffer and some key bits in BDA to translate the scancode to ASCII code, and return both the scancode and ASCII
|
||||
// code to Int 16 caller. This translation process works well if the Int 9 could response user input in time. But in Tiano enviorment, the Int 9
|
||||
// will be disabled after the thunk call finish, which means if user crazy input during int 9 being disabled, some keystrokes will be lost when
|
||||
// KB device own hardware buffer overflows. And if the lost keystroke code is CTRL or ALT or SHIFT release code, these function key flags bit
|
||||
// in BDA will not be updated. So the Int 16 will believe the CTRL or ALT or SHIFT is still pressed, and Int 16 will translate later scancode
|
||||
// to wrong ASCII code. We can increase the Thunk frequence to let Int 9 response in time, but this way will much hurt other drivers
|
||||
// performance, like USB.
|
||||
//
|
||||
// 1. If CTRL or ALT release code is missed, all later input keys will be translated to wrong ASCII codes which the Tiano cannot support. In
|
||||
// this case, the KB input seems fail to work, and user input is blocked. To solve the problem, we can help to clear the CTRL or ALT flag in BDA
|
||||
// after every Int 16 finish. Thus persist to press CTRL or ALT has same effection as only press one time. It is Ok, since user not often use the
|
||||
// 1. If CTRL or ALT release code is missed, all later input keys will be translated to wrong ASCII codes which the Tiano cannot support. In
|
||||
// this case, the KB input seems fail to work, and user input is blocked. To solve the problem, we can help to clear the CTRL or ALT flag in BDA
|
||||
// after every Int 16 finish. Thus persist to press CTRL or ALT has same effection as only press one time. It is Ok, since user not often use the
|
||||
// CTRL and ALT.
|
||||
//
|
||||
// 2. If SHIFT release code is missed, all later lowercase input will become capital. This is ugly, but not block user input. If user press the lost
|
||||
// 2. If SHIFT release code is missed, all later lowercase input will become capital. This is ugly, but not block user input. If user press the lost
|
||||
// SHIFT again, the lowercase will come back to normal. Since user often use the SHIFT, it is not reasonable to help to clear the SHIFT flag in BDA,
|
||||
// which will let persist to press SHIFT has same effection as only press one time.
|
||||
// which will let persist to press SHIFT has same effection as only press one time.
|
||||
//
|
||||
//0040h:0017h - KEYBOARD - STATUS FLAGS 1
|
||||
// 7 INSert active
|
||||
@@ -1861,21 +1861,21 @@ BiosKeyboardTimerHandler (
|
||||
}
|
||||
if ((KbFlag1 & KB_SCROLL_LOCK_BIT) == KB_SCROLL_LOCK_BIT) {
|
||||
DEBUG ((EFI_D_INFO, "[KBD]Scroll Lock Key is pressed.\n"));
|
||||
}
|
||||
}
|
||||
if ((KbFlag1 & KB_ALT_PRESSED) == KB_ALT_PRESSED) {
|
||||
if ((KbFlag2 & KB_LEFT_ALT_PRESSED) == KB_LEFT_ALT_PRESSED) {
|
||||
DEBUG ((EFI_D_INFO, "[KBD]Left Alt Key is pressed.\n"));
|
||||
} else {
|
||||
DEBUG ((EFI_D_INFO, "[KBD]Right Alt Key is pressed.\n"));
|
||||
}
|
||||
}
|
||||
}
|
||||
if ((KbFlag1 & KB_CTRL_PRESSED) == KB_CTRL_PRESSED) {
|
||||
if ((KbFlag2 & KB_LEFT_CTRL_PRESSED) == KB_LEFT_CTRL_PRESSED) {
|
||||
DEBUG ((EFI_D_INFO, "[KBD]Left Ctrl Key is pressed.\n"));
|
||||
} else {
|
||||
DEBUG ((EFI_D_INFO, "[KBD]Right Ctrl Key is pressed.\n"));
|
||||
}
|
||||
}
|
||||
}
|
||||
if ((KbFlag1 & KB_LEFT_SHIFT_PRESSED) == KB_LEFT_SHIFT_PRESSED) {
|
||||
DEBUG ((EFI_D_INFO, "[KBD]Left Shift Key is pressed.\n"));
|
||||
}
|
||||
@@ -1900,13 +1900,13 @@ BiosKeyboardTimerHandler (
|
||||
//
|
||||
// Record shift state
|
||||
// BUGBUG: Need add Menu key and Left/Right Logo key state in the future
|
||||
//
|
||||
//
|
||||
if ((KbFlag1 & KB_ALT_PRESSED) == KB_ALT_PRESSED) {
|
||||
KeyData.KeyState.KeyShiftState |= ((KbFlag2 & KB_LEFT_ALT_PRESSED) == KB_LEFT_ALT_PRESSED) ? EFI_LEFT_ALT_PRESSED : EFI_RIGHT_ALT_PRESSED;
|
||||
}
|
||||
}
|
||||
if ((KbFlag1 & KB_CTRL_PRESSED) == KB_CTRL_PRESSED) {
|
||||
KeyData.KeyState.KeyShiftState |= ((KbFlag2 & KB_LEFT_CTRL_PRESSED) == KB_LEFT_CTRL_PRESSED) ? EFI_LEFT_CONTROL_PRESSED : EFI_RIGHT_CONTROL_PRESSED;
|
||||
}
|
||||
}
|
||||
if ((KbFlag1 & KB_LEFT_SHIFT_PRESSED) == KB_LEFT_SHIFT_PRESSED) {
|
||||
KeyData.KeyState.KeyShiftState |= EFI_LEFT_SHIFT_PRESSED;
|
||||
}
|
||||
@@ -1923,7 +1923,7 @@ BiosKeyboardTimerHandler (
|
||||
KbFlag1 &= ~0x0C;
|
||||
*((UINT8 *) (UINTN) 0x417) = KbFlag1;
|
||||
);
|
||||
|
||||
|
||||
//
|
||||
// Output EFI input key and shift/toggle state
|
||||
//
|
||||
@@ -1973,9 +1973,9 @@ BiosKeyboardTimerHandler (
|
||||
//
|
||||
for (Link = BiosKeyboardPrivate->NotifyList.ForwardLink; Link != &BiosKeyboardPrivate->NotifyList; Link = Link->ForwardLink) {
|
||||
CurrentNotify = CR (
|
||||
Link,
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY,
|
||||
NotifyEntry,
|
||||
Link,
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY,
|
||||
NotifyEntry,
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY_SIGNATURE
|
||||
);
|
||||
if (IsKeyRegistered (&CurrentNotify->KeyData, &KeyData)) {
|
||||
@@ -2001,7 +2001,7 @@ BiosKeyboardTimerHandler (
|
||||
//
|
||||
gBS->RestoreTPL (OldTpl);
|
||||
|
||||
return ;
|
||||
return ;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -2034,7 +2034,7 @@ KeyNotifyProcessHandler (
|
||||
while (TRUE) {
|
||||
//
|
||||
// Enter critical section
|
||||
//
|
||||
//
|
||||
OldTpl = gBS->RaiseTPL (TPL_NOTIFY);
|
||||
Status = Dequeue (&BiosKeyboardPrivate->QueueForNotify, &KeyData);
|
||||
//
|
||||
@@ -2074,9 +2074,9 @@ BiosKeyboardFreeNotifyList (
|
||||
}
|
||||
while (!IsListEmpty (ListHead)) {
|
||||
NotifyNode = CR (
|
||||
ListHead->ForwardLink,
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY,
|
||||
NotifyEntry,
|
||||
ListHead->ForwardLink,
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY,
|
||||
NotifyEntry,
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY_SIGNATURE
|
||||
);
|
||||
RemoveEntryList (ListHead->ForwardLink);
|
||||
@@ -2089,14 +2089,14 @@ BiosKeyboardFreeNotifyList (
|
||||
/**
|
||||
Check if key is registered.
|
||||
|
||||
@param RegsiteredData A pointer to a buffer that is filled in with the keystroke
|
||||
@param RegsiteredData A pointer to a buffer that is filled in with the keystroke
|
||||
state data for the key that was registered.
|
||||
@param InputData A pointer to a buffer that is filled in with the keystroke
|
||||
@param InputData A pointer to a buffer that is filled in with the keystroke
|
||||
state data for the key that was pressed.
|
||||
|
||||
@retval TRUE Key be pressed matches a registered key.
|
||||
@retval FLASE Match failed.
|
||||
|
||||
@retval FLASE Match failed.
|
||||
|
||||
**/
|
||||
BOOLEAN
|
||||
IsKeyRegistered (
|
||||
@@ -2105,24 +2105,24 @@ IsKeyRegistered (
|
||||
)
|
||||
{
|
||||
ASSERT (RegsiteredData != NULL && InputData != NULL);
|
||||
|
||||
|
||||
if ((RegsiteredData->Key.ScanCode != InputData->Key.ScanCode) ||
|
||||
(RegsiteredData->Key.UnicodeChar != InputData->Key.UnicodeChar)) {
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
//
|
||||
// Assume KeyShiftState/KeyToggleState = 0 in Registered key data means these state could be ignored.
|
||||
//
|
||||
if (RegsiteredData->KeyState.KeyShiftState != 0 &&
|
||||
RegsiteredData->KeyState.KeyShiftState != InputData->KeyState.KeyShiftState) {
|
||||
return FALSE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
if (RegsiteredData->KeyState.KeyToggleState != 0 &&
|
||||
RegsiteredData->KeyState.KeyToggleState != InputData->KeyState.KeyToggleState) {
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
|
||||
}
|
||||
@@ -2132,7 +2132,7 @@ IsKeyRegistered (
|
||||
|
||||
@param Event The event that be siganlled when any key has been stroked.
|
||||
@param Context Pointer of the protocol EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL.
|
||||
|
||||
|
||||
**/
|
||||
VOID
|
||||
EFIAPI
|
||||
@@ -2140,22 +2140,22 @@ BiosKeyboardWaitForKeyEx (
|
||||
IN EFI_EVENT Event,
|
||||
IN VOID *Context
|
||||
)
|
||||
{
|
||||
{
|
||||
BIOS_KEYBOARD_DEV *BiosKeyboardPrivate;
|
||||
|
||||
BiosKeyboardPrivate = TEXT_INPUT_EX_BIOS_KEYBOARD_DEV_FROM_THIS (Context);
|
||||
|
||||
BiosKeyboardPrivate = TEXT_INPUT_EX_BIOS_KEYBOARD_DEV_FROM_THIS (Context);
|
||||
BiosKeyboardWaitForKey (Event, &BiosKeyboardPrivate->SimpleTextIn);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
Reset the input device and optionaly run diagnostics
|
||||
|
||||
|
||||
@param This Protocol instance pointer.
|
||||
@param ExtendedVerification Driver may perform diagnostics on reset.
|
||||
|
||||
@retval EFI_SUCCESS The device was reset.
|
||||
@retval EFI_DEVICE_ERROR The device is not functioning properly and could
|
||||
@retval EFI_DEVICE_ERROR The device is not functioning properly and could
|
||||
not be reset.
|
||||
|
||||
**/
|
||||
@@ -2169,11 +2169,11 @@ BiosKeyboardResetEx (
|
||||
BIOS_KEYBOARD_DEV *BiosKeyboardPrivate;
|
||||
EFI_STATUS Status;
|
||||
EFI_TPL OldTpl;
|
||||
|
||||
BiosKeyboardPrivate = TEXT_INPUT_EX_BIOS_KEYBOARD_DEV_FROM_THIS (This);
|
||||
|
||||
BiosKeyboardPrivate = TEXT_INPUT_EX_BIOS_KEYBOARD_DEV_FROM_THIS (This);
|
||||
|
||||
Status = BiosKeyboardPrivate->SimpleTextIn.Reset (
|
||||
&BiosKeyboardPrivate->SimpleTextIn,
|
||||
&BiosKeyboardPrivate->SimpleTextIn,
|
||||
ExtendedVerification
|
||||
);
|
||||
if (EFI_ERROR (Status)) {
|
||||
@@ -2183,25 +2183,25 @@ BiosKeyboardResetEx (
|
||||
OldTpl = gBS->RaiseTPL (TPL_NOTIFY);
|
||||
|
||||
gBS->RestoreTPL (OldTpl);
|
||||
|
||||
|
||||
return EFI_SUCCESS;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
Reads the next keystroke from the input device. The WaitForKey Event can
|
||||
Reads the next keystroke from the input device. The WaitForKey Event can
|
||||
be used to test for existance of a keystroke via WaitForEvent () call.
|
||||
|
||||
@param This Protocol instance pointer.
|
||||
@param KeyData A pointer to a buffer that is filled in with the keystroke
|
||||
@param KeyData A pointer to a buffer that is filled in with the keystroke
|
||||
state data for the key that was pressed.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS The keystroke information was returned.
|
||||
@retval EFI_NOT_READY There was no keystroke data availiable.
|
||||
@retval EFI_DEVICE_ERROR The keystroke information was not returned due to
|
||||
@retval EFI_DEVICE_ERROR The keystroke information was not returned due to
|
||||
hardware errors.
|
||||
@retval EFI_INVALID_PARAMETER KeyData is NULL.
|
||||
|
||||
@retval EFI_INVALID_PARAMETER KeyData is NULL.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
@@ -2215,27 +2215,27 @@ BiosKeyboardReadKeyStrokeEx (
|
||||
if (KeyData == NULL) {
|
||||
return EFI_INVALID_PARAMETER;
|
||||
}
|
||||
|
||||
|
||||
BiosKeyboardPrivate = TEXT_INPUT_EX_BIOS_KEYBOARD_DEV_FROM_THIS (This);
|
||||
|
||||
return KeyboardReadKeyStrokeWorker (BiosKeyboardPrivate, KeyData);
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
Set certain state for the input device.
|
||||
|
||||
@param This Protocol instance pointer.
|
||||
@param KeyToggleState A pointer to the EFI_KEY_TOGGLE_STATE to set the
|
||||
@param KeyToggleState A pointer to the EFI_KEY_TOGGLE_STATE to set the
|
||||
state for the input device.
|
||||
|
||||
@retval EFI_SUCCESS The device state was set successfully.
|
||||
@retval EFI_DEVICE_ERROR The device is not functioning correctly and could
|
||||
@retval EFI_DEVICE_ERROR The device is not functioning correctly and could
|
||||
not have the setting adjusted.
|
||||
@retval EFI_UNSUPPORTED The device does not have the ability to set its state.
|
||||
@retval EFI_INVALID_PARAMETER KeyToggleState is NULL.
|
||||
@retval EFI_INVALID_PARAMETER KeyToggleState is NULL.
|
||||
|
||||
**/
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
BiosKeyboardSetState (
|
||||
@@ -2293,7 +2293,7 @@ BiosKeyboardSetState (
|
||||
if (EFI_ERROR (Status)) {
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
goto Exit;
|
||||
}
|
||||
}
|
||||
Status = KeyboardWaitForValue (BiosKeyboardPrivate, 0xfa, KEYBOARD_WAITFORVALUE_TIMEOUT);
|
||||
if (EFI_ERROR (Status)) {
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
@@ -2303,7 +2303,7 @@ BiosKeyboardSetState (
|
||||
if (EFI_ERROR (Status)) {
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
goto Exit;
|
||||
}
|
||||
}
|
||||
//
|
||||
// Call Legacy BIOS Protocol to set whatever is necessary
|
||||
//
|
||||
@@ -2325,12 +2325,12 @@ Exit:
|
||||
Register a notification function for a particular keystroke for the input device.
|
||||
|
||||
@param This Protocol instance pointer.
|
||||
@param KeyData A pointer to a buffer that is filled in with the keystroke
|
||||
@param KeyData A pointer to a buffer that is filled in with the keystroke
|
||||
information data for the key that was pressed. If KeyData.Key,
|
||||
KeyData.KeyState.KeyToggleState and KeyData.KeyState.KeyShiftState
|
||||
are 0, then any incomplete keystroke will trigger a notification of
|
||||
the KeyNotificationFunction.
|
||||
@param KeyNotificationFunction Points to the function to be called when the key
|
||||
@param KeyNotificationFunction Points to the function to be called when the key
|
||||
sequence is typed specified by KeyData. This notification function
|
||||
should be called at <=TPL_CALLBACK.
|
||||
@param NotifyHandle Points to the unique handle assigned to the registered notification.
|
||||
@@ -2354,7 +2354,7 @@ BiosKeyboardRegisterKeyNotify (
|
||||
EFI_TPL OldTpl;
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY *NewNotify;
|
||||
LIST_ENTRY *Link;
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY *CurrentNotify;
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY *CurrentNotify;
|
||||
|
||||
if (KeyData == NULL || NotifyHandle == NULL || KeyNotificationFunction == NULL) {
|
||||
return EFI_INVALID_PARAMETER;
|
||||
@@ -2372,24 +2372,24 @@ BiosKeyboardRegisterKeyNotify (
|
||||
//
|
||||
for (Link = BiosKeyboardPrivate->NotifyList.ForwardLink; Link != &BiosKeyboardPrivate->NotifyList; Link = Link->ForwardLink) {
|
||||
CurrentNotify = CR (
|
||||
Link,
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY,
|
||||
NotifyEntry,
|
||||
Link,
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY,
|
||||
NotifyEntry,
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY_SIGNATURE
|
||||
);
|
||||
if (IsKeyRegistered (&CurrentNotify->KeyData, KeyData)) {
|
||||
if (IsKeyRegistered (&CurrentNotify->KeyData, KeyData)) {
|
||||
if (CurrentNotify->KeyNotificationFn == KeyNotificationFunction) {
|
||||
*NotifyHandle = CurrentNotify;
|
||||
Status = EFI_SUCCESS;
|
||||
goto Exit;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Allocate resource to save the notification function
|
||||
//
|
||||
|
||||
|
||||
NewNotify = (BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY *) AllocateZeroPool (sizeof (BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY));
|
||||
if (NewNotify == NULL) {
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
@@ -2403,25 +2403,25 @@ BiosKeyboardRegisterKeyNotify (
|
||||
|
||||
*NotifyHandle = NewNotify;
|
||||
Status = EFI_SUCCESS;
|
||||
|
||||
|
||||
Exit:
|
||||
//
|
||||
// Leave critical section and return
|
||||
//
|
||||
gBS->RestoreTPL (OldTpl);
|
||||
return Status;
|
||||
return Status;
|
||||
}
|
||||
|
||||
/**
|
||||
Remove a registered notification function from a particular keystroke.
|
||||
|
||||
@param This Protocol instance pointer.
|
||||
@param This Protocol instance pointer.
|
||||
@param NotificationHandle The handle of the notification function being unregistered.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS The notification function was unregistered successfully.
|
||||
@retval EFI_INVALID_PARAMETER The NotificationHandle is invalid.
|
||||
|
||||
**/
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
BiosKeyboardUnregisterKeyNotify (
|
||||
@@ -2444,10 +2444,10 @@ BiosKeyboardUnregisterKeyNotify (
|
||||
|
||||
if (((BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY *) NotificationHandle)->Signature != BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY_SIGNATURE) {
|
||||
return EFI_INVALID_PARAMETER;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
BiosKeyboardPrivate = TEXT_INPUT_EX_BIOS_KEYBOARD_DEV_FROM_THIS (This);
|
||||
|
||||
|
||||
//
|
||||
// Enter critical section
|
||||
//
|
||||
@@ -2455,22 +2455,22 @@ BiosKeyboardUnregisterKeyNotify (
|
||||
|
||||
for (Link = BiosKeyboardPrivate->NotifyList.ForwardLink; Link != &BiosKeyboardPrivate->NotifyList; Link = Link->ForwardLink) {
|
||||
CurrentNotify = CR (
|
||||
Link,
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY,
|
||||
NotifyEntry,
|
||||
Link,
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY,
|
||||
NotifyEntry,
|
||||
BIOS_KEYBOARD_CONSOLE_IN_EX_NOTIFY_SIGNATURE
|
||||
);
|
||||
);
|
||||
if (CurrentNotify == NotificationHandle) {
|
||||
//
|
||||
// Remove the notification function from NotifyList and free resources
|
||||
//
|
||||
RemoveEntryList (&CurrentNotify->NotifyEntry);
|
||||
RemoveEntryList (&CurrentNotify->NotifyEntry);
|
||||
|
||||
Status = EFI_SUCCESS;
|
||||
goto Exit;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Can not find the specified Notification Handle
|
||||
//
|
||||
|
@@ -234,7 +234,7 @@ typedef struct {
|
||||
LIST_ENTRY NotifyList;
|
||||
EFI_EVENT KeyNotifyProcessEvent;
|
||||
EFI_EVENT TimerEvent;
|
||||
|
||||
|
||||
} BIOS_KEYBOARD_DEV;
|
||||
|
||||
#define BIOS_KEYBOARD_DEV_FROM_THIS(a) CR (a, BIOS_KEYBOARD_DEV, SimpleTextIn, BIOS_KEYBOARD_DEV_SIGNATURE)
|
||||
@@ -500,7 +500,7 @@ BiosKeyboardWaitForKey (
|
||||
Check key buffer to get the key stroke status.
|
||||
|
||||
@param This Pointer of the protocol EFI_SIMPLE_TEXT_IN_PROTOCOL.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS A key is being pressed now.
|
||||
@retval Other No key is now pressed.
|
||||
|
||||
@@ -517,7 +517,7 @@ BiosKeyboardCheckForKey (
|
||||
@param KeyChar Unicode of key.
|
||||
@param ScanCode Scan code of key.
|
||||
|
||||
@return The value of EFI Scancode for the key.
|
||||
@return The value of EFI Scancode for the key.
|
||||
@retval SCAN_NULL No corresponding value in the EFI convert table is found for the key.
|
||||
|
||||
**/
|
||||
@@ -530,7 +530,7 @@ ConvertToEFIScanCode (
|
||||
/**
|
||||
Check whether there is Ps/2 Keyboard device in system by 0xF4 Keyboard Command
|
||||
If Keyboard receives 0xF4, it will respond with 'ACK'. If it doesn't respond, the device
|
||||
should not be in system.
|
||||
should not be in system.
|
||||
|
||||
@param BiosKeyboardPrivate Keyboard Private Data Struture
|
||||
|
||||
@@ -545,9 +545,9 @@ CheckKeyboardConnect (
|
||||
|
||||
/**
|
||||
Timer event handler: read a series of key stroke from 8042
|
||||
and put them into memory key buffer.
|
||||
and put them into memory key buffer.
|
||||
It is registered as running under TPL_NOTIFY
|
||||
|
||||
|
||||
@param Event The timer event
|
||||
@param Context A BIOS_KEYBOARD_DEV pointer
|
||||
|
||||
@@ -574,12 +574,12 @@ KeyNotifyProcessHandler (
|
||||
|
||||
/**
|
||||
Reset the input device and optionaly run diagnostics
|
||||
|
||||
|
||||
@param This Protocol instance pointer.
|
||||
@param ExtendedVerification Driver may perform diagnostics on reset.
|
||||
|
||||
@retval EFI_SUCCESS The device was reset.
|
||||
@retval EFI_DEVICE_ERROR The device is not functioning properly and could
|
||||
@retval EFI_DEVICE_ERROR The device is not functioning properly and could
|
||||
not be reset.
|
||||
|
||||
**/
|
||||
@@ -591,19 +591,19 @@ BiosKeyboardResetEx (
|
||||
);
|
||||
|
||||
/**
|
||||
Reads the next keystroke from the input device. The WaitForKey Event can
|
||||
Reads the next keystroke from the input device. The WaitForKey Event can
|
||||
be used to test for existance of a keystroke via WaitForEvent () call.
|
||||
|
||||
@param This Protocol instance pointer.
|
||||
@param KeyData A pointer to a buffer that is filled in with the keystroke
|
||||
@param KeyData A pointer to a buffer that is filled in with the keystroke
|
||||
state data for the key that was pressed.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS The keystroke information was returned.
|
||||
@retval EFI_NOT_READY There was no keystroke data availiable.
|
||||
@retval EFI_DEVICE_ERROR The keystroke information was not returned due to
|
||||
@retval EFI_DEVICE_ERROR The keystroke information was not returned due to
|
||||
hardware errors.
|
||||
@retval EFI_INVALID_PARAMETER KeyData is NULL.
|
||||
|
||||
@retval EFI_INVALID_PARAMETER KeyData is NULL.
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
@@ -616,16 +616,16 @@ BiosKeyboardReadKeyStrokeEx (
|
||||
Set certain state for the input device.
|
||||
|
||||
@param This Protocol instance pointer.
|
||||
@param KeyToggleState A pointer to the EFI_KEY_TOGGLE_STATE to set the
|
||||
@param KeyToggleState A pointer to the EFI_KEY_TOGGLE_STATE to set the
|
||||
state for the input device.
|
||||
|
||||
@retval EFI_SUCCESS The device state was set successfully.
|
||||
@retval EFI_DEVICE_ERROR The device is not functioning correctly and could
|
||||
@retval EFI_DEVICE_ERROR The device is not functioning correctly and could
|
||||
not have the setting adjusted.
|
||||
@retval EFI_UNSUPPORTED The device does not have the ability to set its state.
|
||||
@retval EFI_INVALID_PARAMETER KeyToggleState is NULL.
|
||||
@retval EFI_INVALID_PARAMETER KeyToggleState is NULL.
|
||||
|
||||
**/
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
BiosKeyboardSetState (
|
||||
@@ -637,17 +637,17 @@ BiosKeyboardSetState (
|
||||
Register a notification function for a particular keystroke for the input device.
|
||||
|
||||
@param This Protocol instance pointer.
|
||||
@param KeyData A pointer to a buffer that is filled in with the keystroke
|
||||
@param KeyData A pointer to a buffer that is filled in with the keystroke
|
||||
information data for the key that was pressed. If KeyData.Key,
|
||||
KeyData.KeyState.KeyToggleState and KeyData.KeyState.KeyShiftState
|
||||
are 0, then any incomplete keystroke will trigger a notification of
|
||||
the KeyNotificationFunction.
|
||||
@param KeyNotificationFunction Points to the function to be called when the key
|
||||
@param KeyNotificationFunction Points to the function to be called when the key
|
||||
sequence is typed specified by KeyData. This notification function
|
||||
should be called at <=TPL_CALLBACK.
|
||||
@param NotifyHandle Points to the unique handle assigned to the registered notification.
|
||||
|
||||
|
||||
|
||||
@retval EFI_SUCCESS The notification function was registered successfully.
|
||||
@retval EFI_OUT_OF_RESOURCES Unable to allocate resources for necesssary data structures.
|
||||
@retval EFI_INVALID_PARAMETER KeyData or NotifyHandle is NULL.
|
||||
@@ -665,13 +665,13 @@ BiosKeyboardRegisterKeyNotify (
|
||||
/**
|
||||
Remove a registered notification function from a particular keystroke.
|
||||
|
||||
@param This Protocol instance pointer.
|
||||
@param This Protocol instance pointer.
|
||||
@param NotificationHandle The handle of the notification function being unregistered.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS The notification function was unregistered successfully.
|
||||
@retval EFI_INVALID_PARAMETER The NotificationHandle is invalid.
|
||||
|
||||
**/
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
BiosKeyboardUnregisterKeyNotify (
|
||||
@@ -727,19 +727,19 @@ KeyboardWrite (
|
||||
EFI_STATUS
|
||||
BiosKeyboardFreeNotifyList (
|
||||
IN OUT LIST_ENTRY *ListHead
|
||||
);
|
||||
);
|
||||
|
||||
/**
|
||||
Check if key is registered.
|
||||
|
||||
@param RegsiteredData A pointer to a buffer that is filled in with the keystroke
|
||||
@param RegsiteredData A pointer to a buffer that is filled in with the keystroke
|
||||
state data for the key that was registered.
|
||||
@param InputData A pointer to a buffer that is filled in with the keystroke
|
||||
@param InputData A pointer to a buffer that is filled in with the keystroke
|
||||
state data for the key that was pressed.
|
||||
|
||||
@retval TRUE Key be pressed matches a registered key.
|
||||
@retval FLASE Match failed.
|
||||
|
||||
@retval FLASE Match failed.
|
||||
|
||||
**/
|
||||
BOOLEAN
|
||||
IsKeyRegistered (
|
||||
@@ -752,7 +752,7 @@ IsKeyRegistered (
|
||||
|
||||
@param Event The event that be siganlled when any key has been stroked.
|
||||
@param Context Pointer of the protocol EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL.
|
||||
|
||||
|
||||
**/
|
||||
VOID
|
||||
EFIAPI
|
||||
|
@@ -1,10 +1,10 @@
|
||||
## @file
|
||||
# Ps2 Keyboard driver.
|
||||
#
|
||||
# Ps2 Keyboard driver by using Legacy Bios protocol service and IsaIo protocol
|
||||
# Ps2 Keyboard driver by using Legacy Bios protocol service and IsaIo protocol
|
||||
# service. This dirver uses legacy INT16 to get the key stroke status.
|
||||
#
|
||||
# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
|
||||
# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
#
|
||||
# This program and the accompanying materials
|
||||
# are licensed and made available under the terms and conditions
|
||||
|
@@ -4,14 +4,14 @@
|
||||
// Ps2 Keyboard driver by using Legacy Bios protocol service and IsaIo protocol
|
||||
// service. This dirver uses legacy INT16 to get the key stroke status.
|
||||
//
|
||||
// Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
// Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
//
|
||||
// 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.
|
||||
//
|
||||
|
@@ -1,7 +1,7 @@
|
||||
// /** @file
|
||||
// KeyboardDxe Localized Strings and Content
|
||||
//
|
||||
// Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
// Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
//
|
||||
// This program and the accompanying materials
|
||||
// are licensed and made available under the terms and conditions
|
||||
@@ -14,8 +14,8 @@
|
||||
//
|
||||
// **/
|
||||
|
||||
#string STR_PROPERTIES_MODULE_NAME
|
||||
#language en-US
|
||||
#string STR_PROPERTIES_MODULE_NAME
|
||||
#language en-US
|
||||
"Legacy Keyboard DXE Driver"
|
||||
|
||||
|
||||
|
@@ -1,6 +1,6 @@
|
||||
/** @file
|
||||
|
||||
Copyright (c) 1999 - 2017, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions
|
||||
@@ -42,9 +42,9 @@ BOOLEAN mCachedInt1A = FALSE;
|
||||
|
||||
@param SimpleNetworkDevice A pointer to EFI_SIMPLE_NETWORK_DEV data structure.
|
||||
@param Ax PCI address of Undi device.
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to start 16 bit UNDI ROM.
|
||||
@retval Others Status of start 16 bit UNDI ROM.
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to start 16 bit UNDI ROM.
|
||||
@retval Others Status of start 16 bit UNDI ROM.
|
||||
**/
|
||||
EFI_STATUS
|
||||
Undi16SimpleNetworkStartUndi (
|
||||
@@ -56,9 +56,9 @@ Undi16SimpleNetworkStartUndi (
|
||||
Start the UNDI interface
|
||||
|
||||
@param SimpleNetworkDevice A pointer to EFI_SIMPLE_NETWORK_DEV data structure.
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to start 16 bit UNDI ROM.
|
||||
@retval Others Status of start 16 bit UNDI ROM.
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to start 16 bit UNDI ROM.
|
||||
@retval Others Status of start 16 bit UNDI ROM.
|
||||
**/
|
||||
EFI_STATUS
|
||||
Undi16SimpleNetworkStopUndi (
|
||||
@@ -69,9 +69,9 @@ Undi16SimpleNetworkStopUndi (
|
||||
Stop the UNDI interface
|
||||
|
||||
@param SimpleNetworkDevice A pointer to EFI_SIMPLE_NETWORK_DEV data structure.
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to stop 16 bit UNDI ROM.
|
||||
@retval Others Status of stop 16 bit UNDI ROM.
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to stop 16 bit UNDI ROM.
|
||||
@retval Others Status of stop 16 bit UNDI ROM.
|
||||
**/
|
||||
EFI_STATUS
|
||||
Undi16SimpleNetworkCleanupUndi (
|
||||
@@ -82,9 +82,9 @@ Undi16SimpleNetworkCleanupUndi (
|
||||
Get runtime information for Undi network interface
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
|
||||
@retval EFI_SUCCESS Sucess operation.
|
||||
@retval Others Fail to get runtime information for Undi network interface.
|
||||
|
||||
@retval EFI_SUCCESS Sucess operation.
|
||||
@retval Others Fail to get runtime information for Undi network interface.
|
||||
**/
|
||||
EFI_STATUS
|
||||
Undi16SimpleNetworkGetInformation (
|
||||
@@ -95,8 +95,8 @@ Undi16SimpleNetworkGetInformation (
|
||||
Get NIC type
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
|
||||
@retval EFI_SUCCESS Sucess operation.
|
||||
|
||||
@retval EFI_SUCCESS Sucess operation.
|
||||
@retval Others Fail to get NIC type.
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -108,8 +108,8 @@ Undi16SimpleNetworkGetNicType (
|
||||
Get NDIS information
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
|
||||
@retval EFI_SUCCESS Sucess operation.
|
||||
|
||||
@retval EFI_SUCCESS Sucess operation.
|
||||
@retval Others Fail to get NDIS information.
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -119,11 +119,11 @@ Undi16SimpleNetworkGetNdisInfo (
|
||||
|
||||
/**
|
||||
Signal handlers for ExitBootServices event.
|
||||
|
||||
Clean up any Real-mode UNDI residue from the system
|
||||
|
||||
|
||||
Clean up any Real-mode UNDI residue from the system
|
||||
|
||||
@param Event ExitBootServices event
|
||||
@param Context
|
||||
@param Context
|
||||
**/
|
||||
VOID
|
||||
EFIAPI
|
||||
@@ -136,7 +136,7 @@ Undi16SimpleNetworkEvent (
|
||||
Loads the undi driver.
|
||||
|
||||
@param SimpleNetworkDevice A pointer to EFI_SIMPLE_NETWORK_DEV data structure.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS - Successfully loads undi driver.
|
||||
@retval EFI_NOT_FOUND - Doesn't find undi driver or undi driver load failure.
|
||||
**/
|
||||
@@ -149,8 +149,8 @@ Undi16SimpleNetworkLoadUndi (
|
||||
Unload 16 bit UNDI Option ROM from memory
|
||||
|
||||
@param SimpleNetworkDevice A pointer to EFI_SIMPLE_NETWORK_DEV data structure.
|
||||
|
||||
@return EFI_STATUS
|
||||
|
||||
@return EFI_STATUS
|
||||
**/
|
||||
EFI_STATUS
|
||||
Undi16SimpleNetworkUnloadUndi (
|
||||
@@ -162,8 +162,8 @@ Undi16SimpleNetworkUnloadUndi (
|
||||
|
||||
@param ImageHandle Handle that identifies the loaded image.
|
||||
@param SystemTable System Table for this image.
|
||||
|
||||
@return EFI_STATUS Return status from EfiLibInstallAllDriverProtocols.
|
||||
|
||||
@return EFI_STATUS Return status from EfiLibInstallAllDriverProtocols.
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
@@ -191,7 +191,7 @@ BiosSnp16DriverEntryPoint (
|
||||
@param This A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance.
|
||||
@param Controller The handle of the controller to test.
|
||||
@param RemainingDevicePath A pointer to the remaining portion of a device path.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS The driver supports given controller.
|
||||
@retval EFI_UNSUPPORT The driver doesn't support given controller.
|
||||
@retval Other Other errors prevent driver finishing to test
|
||||
@@ -286,8 +286,8 @@ Done:
|
||||
@param This A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance.
|
||||
@param Controller The handle of the controller to test.
|
||||
@param RemainingDevicePath A pointer to the remaining portion of a device path.
|
||||
|
||||
@retval EFI_SUCCESS - The device was started.
|
||||
|
||||
@retval EFI_SUCCESS - The device was started.
|
||||
@retval EFI_DEVICE_ERROR - The device could not be started due to a device error.
|
||||
@retval EFI_OUT_OF_RESOURCES - The request could not be completed due to a lack of resources.
|
||||
**/
|
||||
@@ -506,12 +506,12 @@ BiosSnp16DriverBindingStart (
|
||||
// Create an event to be signalled when Legacy Boot occurs to clean up the IVT
|
||||
//
|
||||
Status = EfiCreateEventLegacyBootEx(
|
||||
TPL_NOTIFY,
|
||||
Undi16SimpleNetworkEvent,
|
||||
NULL,
|
||||
TPL_NOTIFY,
|
||||
Undi16SimpleNetworkEvent,
|
||||
NULL,
|
||||
&SimpleNetworkDevice->LegacyBootEvent
|
||||
);
|
||||
|
||||
|
||||
if (EFI_ERROR(Status)) {
|
||||
DEBUG ((DEBUG_ERROR,"ERROR : Could not create event. Status = %r\n",Status));
|
||||
goto Done;
|
||||
@@ -750,7 +750,7 @@ Done:
|
||||
if (SimpleNetworkDevice->LegacyBootEvent != NULL) {
|
||||
gBS->CloseEvent (SimpleNetworkDevice->LegacyBootEvent);
|
||||
}
|
||||
|
||||
|
||||
if (SimpleNetworkDevice->EfiBootEvent != NULL) {
|
||||
gBS->CloseEvent (SimpleNetworkDevice->EfiBootEvent);
|
||||
}
|
||||
@@ -775,7 +775,7 @@ Done:
|
||||
}
|
||||
|
||||
gBS->FreePool (SimpleNetworkDevice);
|
||||
|
||||
|
||||
//
|
||||
// Only restore the vector if it was cached.
|
||||
//
|
||||
@@ -819,7 +819,7 @@ Done:
|
||||
if (Status != EFI_OUT_OF_RESOURCES) {
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
}
|
||||
}
|
||||
}
|
||||
return Status;
|
||||
}
|
||||
|
||||
@@ -831,7 +831,7 @@ Done:
|
||||
@param NumberOfChildren The number of child device handles in ChildHandleBuffer.
|
||||
@param ChildHandleBuffer An array of child handles to be freed. May be NULL if
|
||||
NumberOfChildren is 0.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS - The device was stopped.
|
||||
@retval EFI_DEVICE_ERROR - The device could not be stopped due to a device error.
|
||||
**/
|
||||
@@ -899,7 +899,7 @@ BiosSnp16DriverBindingStop (
|
||||
This->DriverBindingHandle,
|
||||
Controller
|
||||
);
|
||||
|
||||
|
||||
if (EFI_ERROR (Status)) {
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
}
|
||||
@@ -973,7 +973,7 @@ BiosSnp16DriverBindingStop (
|
||||
if (SimpleNetworkDevice->LegacyBootEvent != NULL) {
|
||||
gBS->CloseEvent (SimpleNetworkDevice->LegacyBootEvent);
|
||||
}
|
||||
|
||||
|
||||
if (SimpleNetworkDevice->EfiBootEvent != NULL) {
|
||||
gBS->CloseEvent (SimpleNetworkDevice->EfiBootEvent);
|
||||
}
|
||||
@@ -1021,7 +1021,7 @@ BiosSnp16DriverBindingStop (
|
||||
Judge whether transmit FIFO is full.
|
||||
|
||||
@param Fifo Point to trasmit FIFO structure.
|
||||
|
||||
|
||||
@return BOOLEAN whether transmit FIFO is full.
|
||||
**/
|
||||
BOOLEAN
|
||||
@@ -1040,7 +1040,7 @@ SimpleNetworkTransmitFifoFull (
|
||||
Judge whether transmit FIFO is empty.
|
||||
|
||||
@param Fifo Point to trasmit FIFO structure.
|
||||
|
||||
|
||||
@return BOOLEAN whether transmit FIFO is empty.
|
||||
**/
|
||||
BOOLEAN
|
||||
@@ -1061,9 +1061,9 @@ SimpleNetworkTransmitFifoEmpty (
|
||||
|
||||
@param Fifo Point to trasmit FIFO structure.
|
||||
@param Data The data point want to be added.
|
||||
|
||||
@retval EFI_OUT_OF_RESOURCES FIFO is full
|
||||
@retval EFI_SUCCESS Success operation.
|
||||
|
||||
@retval EFI_OUT_OF_RESOURCES FIFO is full
|
||||
@retval EFI_SUCCESS Success operation.
|
||||
**/
|
||||
EFI_STATUS
|
||||
SimpleNetworkTransmitFifoAdd (
|
||||
@@ -1085,9 +1085,9 @@ SimpleNetworkTransmitFifoAdd (
|
||||
|
||||
@param Fifo Point to trasmit FIFO structure.
|
||||
@param Data On return, point to the data point want to be got and removed.
|
||||
|
||||
@retval EFI_OUT_OF_RESOURCES network transmit buffer is empty.
|
||||
@retval EFI_SUCCESS Success operation.
|
||||
|
||||
@retval EFI_OUT_OF_RESOURCES network transmit buffer is empty.
|
||||
@retval EFI_SUCCESS Success operation.
|
||||
**/
|
||||
EFI_STATUS
|
||||
SimpleNetworkTransmitFifoRemove (
|
||||
@@ -1108,7 +1108,7 @@ SimpleNetworkTransmitFifoRemove (
|
||||
Get recive filter setting according to EFI mask value.
|
||||
|
||||
@param ReceiveFilterSetting filter setting EFI mask value.
|
||||
|
||||
|
||||
@return UINT16 Undi filter setting value.
|
||||
**/
|
||||
UINT16
|
||||
@@ -1149,11 +1149,11 @@ Undi16GetPacketFilterSetting (
|
||||
|
||||
/**
|
||||
Get filter setting from multi cast buffer .
|
||||
|
||||
|
||||
@param Mode Point to mode structure.
|
||||
@param McastBuffer The multi cast buffer
|
||||
@param McastBuffer The multi cast buffer
|
||||
@param HwAddressSize Size of filter value.
|
||||
|
||||
|
||||
**/
|
||||
VOID
|
||||
Undi16GetMCastFilters (
|
||||
@@ -1183,7 +1183,7 @@ Undi16GetMCastFilters (
|
||||
Loads the undi driver.
|
||||
|
||||
@param SimpleNetworkDevice A pointer to EFI_SIMPLE_NETWORK_DEV data structure.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS - Successfully loads undi driver.
|
||||
@retval EFI_NOT_FOUND - Doesn't find undi driver or undi driver load failure.
|
||||
**/
|
||||
@@ -1198,11 +1198,11 @@ Undi16SimpleNetworkLoadUndi (
|
||||
PCI_EXPANSION_ROM_HEADER *PciExpansionRomHeader;
|
||||
PCI_DATA_STRUCTURE *PciDataStructure;
|
||||
PCI_TYPE00 Pci;
|
||||
|
||||
|
||||
if (!mCachedInt1A) {
|
||||
Status = CacheVectorAddress (0x1A);
|
||||
if (!EFI_ERROR (Status)) {
|
||||
mCachedInt1A = TRUE;
|
||||
mCachedInt1A = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1227,8 +1227,8 @@ Undi16SimpleNetworkLoadUndi (
|
||||
DEBUG ((DEBUG_INIT, "Option ROM found at %X\n", RomAddress));
|
||||
|
||||
//
|
||||
// If the pointer to the PCI Data Structure is invalid, no further images can be located.
|
||||
// The PCI Data Structure must be DWORD aligned.
|
||||
// If the pointer to the PCI Data Structure is invalid, no further images can be located.
|
||||
// The PCI Data Structure must be DWORD aligned.
|
||||
//
|
||||
if (PciExpansionRomHeader->PcirOffset == 0 ||
|
||||
(PciExpansionRomHeader->PcirOffset & 3) != 0 ||
|
||||
@@ -1249,7 +1249,7 @@ Undi16SimpleNetworkLoadUndi (
|
||||
}
|
||||
|
||||
DEBUG (
|
||||
(DEBUG_INIT,
|
||||
(DEBUG_INIT,
|
||||
"PCI device with matchinng VendorId and DeviceId (%d,%d)\n",
|
||||
(UINTN) PciDataStructure->VendorId,
|
||||
(UINTN) PciDataStructure->DeviceId)
|
||||
@@ -1260,7 +1260,7 @@ Undi16SimpleNetworkLoadUndi (
|
||||
if (!EFI_ERROR (Status)) {
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Free resources allocated in LaunchBaseCode
|
||||
//
|
||||
@@ -1274,8 +1274,8 @@ Undi16SimpleNetworkLoadUndi (
|
||||
Unload 16 bit UNDI Option ROM from memory
|
||||
|
||||
@param SimpleNetworkDevice A pointer to EFI_SIMPLE_NETWORK_DEV data structure.
|
||||
|
||||
@return EFI_STATUS
|
||||
|
||||
@return EFI_STATUS
|
||||
**/
|
||||
EFI_STATUS
|
||||
Undi16SimpleNetworkUnloadUndi (
|
||||
@@ -1331,9 +1331,9 @@ Undi16SimpleNetworkUnloadUndi (
|
||||
|
||||
@param SimpleNetworkDevice A pointer to EFI_SIMPLE_NETWORK_DEV data structure.
|
||||
@param Ax PCI address of Undi device.
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to start 16 bit UNDI ROM.
|
||||
@retval Others Status of start 16 bit UNDI ROM.
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to start 16 bit UNDI ROM.
|
||||
@retval Others Status of start 16 bit UNDI ROM.
|
||||
**/
|
||||
EFI_STATUS
|
||||
Undi16SimpleNetworkStartUndi (
|
||||
@@ -1376,9 +1376,9 @@ Undi16SimpleNetworkStartUndi (
|
||||
Stop the UNDI interface
|
||||
|
||||
@param SimpleNetworkDevice A pointer to EFI_SIMPLE_NETWORK_DEV data structure.
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to stop 16 bit UNDI ROM.
|
||||
@retval Others Status of stop 16 bit UNDI ROM.
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to stop 16 bit UNDI ROM.
|
||||
@retval Others Status of stop 16 bit UNDI ROM.
|
||||
**/
|
||||
EFI_STATUS
|
||||
Undi16SimpleNetworkStopUndi (
|
||||
@@ -1411,9 +1411,9 @@ Undi16SimpleNetworkStopUndi (
|
||||
Cleanup Unid network interface
|
||||
|
||||
@param SimpleNetworkDevice A pointer to EFI_SIMPLE_NETWORK_DEV data structure.
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to cleanup 16 bit UNDI ROM.
|
||||
@retval Others Status of cleanup 16 bit UNDI ROM.
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to cleanup 16 bit UNDI ROM.
|
||||
@retval Others Status of cleanup 16 bit UNDI ROM.
|
||||
**/
|
||||
EFI_STATUS
|
||||
Undi16SimpleNetworkCleanupUndi (
|
||||
@@ -1446,9 +1446,9 @@ Undi16SimpleNetworkCleanupUndi (
|
||||
Get runtime information for Undi network interface
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
|
||||
@retval EFI_SUCCESS Sucess operation.
|
||||
@retval Others Fail to get runtime information for Undi network interface.
|
||||
|
||||
@retval EFI_SUCCESS Sucess operation.
|
||||
@retval Others Fail to get runtime information for Undi network interface.
|
||||
**/
|
||||
EFI_STATUS
|
||||
Undi16SimpleNetworkGetInformation (
|
||||
@@ -1577,8 +1577,8 @@ Undi16SimpleNetworkGetInformation (
|
||||
Get NIC type
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
|
||||
@retval EFI_SUCCESS Sucess operation.
|
||||
|
||||
@retval EFI_SUCCESS Sucess operation.
|
||||
@retval Others Fail to get NIC type.
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -1628,8 +1628,8 @@ Undi16SimpleNetworkGetNicType (
|
||||
Get NDIS information
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
|
||||
@retval EFI_SUCCESS Sucess operation.
|
||||
|
||||
@retval EFI_SUCCESS Sucess operation.
|
||||
@retval Others Fail to get NDIS information.
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -1687,9 +1687,9 @@ Undi16SimpleNetworkGetNdisInfo (
|
||||
@param Frame The frame buffer to process network interrupt.
|
||||
@param ProtType The type network transmit protocol
|
||||
@param PktType The type of package.
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to execute 16 bit ROM's ISR, or status is invalid.
|
||||
@retval EFI_SUCCESS Success operation.
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to execute 16 bit ROM's ISR, or status is invalid.
|
||||
@retval EFI_SUCCESS Success operation.
|
||||
**/
|
||||
EFI_STATUS
|
||||
Undi16SimpleNetworkIsr (
|
||||
@@ -1902,7 +1902,7 @@ Undi16SimpleNetworkIsr (
|
||||
Call 16 bit UNDI ROM to start the network interface
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
|
||||
|
||||
@retval EFI_DEVICE_ERROR Network interface has not be initialized.
|
||||
@retval EFI_DEVICE_ERROR Fail to execute 16 bit ROM call.
|
||||
@retval EFI_SUCESS Success operation.
|
||||
@@ -1976,7 +1976,7 @@ Undi16SimpleNetworkStart (
|
||||
Call 16 bit UNDI ROM to stop the network interface
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
|
||||
|
||||
@retval EFI_DEVICE_ERROR Network interface has not be initialized.
|
||||
@retval EFI_DEVICE_ERROR Fail to execute 16 bit ROM call.
|
||||
@retval EFI_SUCESS Success operation.
|
||||
@@ -2024,12 +2024,12 @@ Undi16SimpleNetworkStop (
|
||||
// Initialize()
|
||||
//
|
||||
/**
|
||||
Initialize network interface
|
||||
Initialize network interface
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
@param ExtraRxBufferSize The size of extra request receive buffer.
|
||||
@param ExtraTxBufferSize The size of extra request transmit buffer.
|
||||
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to execute 16 bit ROM call.
|
||||
@retval EFI_SUCESS Success operation.
|
||||
**/
|
||||
@@ -2147,7 +2147,7 @@ Undi16SimpleNetworkInitialize (
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
@param ExtendedVerification Need extended verfication.
|
||||
|
||||
|
||||
@retval EFI_INVALID_PARAMETER Invalid This parameter.
|
||||
@retval EFI_DEVICE_ERROR Network device has not been initialized.
|
||||
@retval EFI_NOT_STARTED Network device has been stopped.
|
||||
@@ -2228,7 +2228,7 @@ Undi16SimpleNetworkReset (
|
||||
Shutdown network interface.
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
|
||||
|
||||
@retval EFI_INVALID_PARAMETER Invalid This parameter.
|
||||
@retval EFI_DEVICE_ERROR Network device has not been initialized.
|
||||
@retval EFI_NOT_STARTED Network device has been stopped.
|
||||
@@ -2341,7 +2341,7 @@ Undi16SimpleNetworkShutdown (
|
||||
@param ResetMCastFilter Whether reset multi cast filter or not
|
||||
@param MCastFilterCnt Count of mutli cast filter for different MAC address
|
||||
@param MCastFilter Buffer for mustli cast filter for different MAC address.
|
||||
|
||||
|
||||
@retval EFI_INVALID_PARAMETER Invalid This parameter.
|
||||
@retval EFI_DEVICE_ERROR Network device has not been initialized.
|
||||
@retval EFI_NOT_STARTED Network device has been stopped.
|
||||
@@ -2481,7 +2481,7 @@ Undi16SimpleNetworkReceiveFilters (
|
||||
&SimpleNetworkDevice->SimpleNetworkMode.MCastFilter[Index],
|
||||
&MCastFilter[Index],
|
||||
sizeof (EFI_MAC_ADDRESS)
|
||||
);
|
||||
);
|
||||
}
|
||||
}
|
||||
//
|
||||
@@ -2498,7 +2498,7 @@ Undi16SimpleNetworkReceiveFilters (
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
@param Reset Whether reset station MAC address to permanent address
|
||||
@param New A pointer to New address
|
||||
|
||||
|
||||
@retval EFI_INVALID_PARAMETER Invalid This parameter.
|
||||
@retval EFI_DEVICE_ERROR Network device has not been initialized.
|
||||
@retval EFI_NOT_STARTED Network device has been stopped.
|
||||
@@ -2852,11 +2852,11 @@ Undi16SimpleNetworkStatistics (
|
||||
@param IPv6 IPv6 or IPv4
|
||||
@param IP A pointer to given Ip address.
|
||||
@param MAC On return, translated MAC address.
|
||||
|
||||
|
||||
@retval EFI_INVALID_PARAMETER Invalid This parameter.
|
||||
@retval EFI_INVALID_PARAMETER Invalid IP address.
|
||||
@retval EFI_INVALID_PARAMETER Invalid return buffer for holding MAC address.
|
||||
@retval EFI_UNSUPPORTED Do not support IPv6
|
||||
@retval EFI_UNSUPPORTED Do not support IPv6
|
||||
@retval EFI_DEVICE_ERROR Network device has not been initialized.
|
||||
@retval EFI_NOT_STARTED Network device has been stopped.
|
||||
@retval EFI_DEVICE_ERROR Invalid status for network device
|
||||
@@ -2937,7 +2937,7 @@ Undi16SimpleNetworkMCastIpToMac (
|
||||
// NvData()
|
||||
//
|
||||
/**
|
||||
Performs read and write operations on the NVRAM device attached to a
|
||||
Performs read and write operations on the NVRAM device attached to a
|
||||
network interface.
|
||||
|
||||
@param This The protocol instance pointer.
|
||||
@@ -2972,7 +2972,7 @@ Undi16SimpleNetworkNvData (
|
||||
// GetStatus()
|
||||
//
|
||||
/**
|
||||
Reads the current interrupt status and recycled transmit buffer status from
|
||||
Reads the current interrupt status and recycled transmit buffer status from
|
||||
a network interface.
|
||||
|
||||
@param This The protocol instance pointer.
|
||||
@@ -3089,7 +3089,7 @@ Undi16SimpleNetworkGetStatus (
|
||||
|
||||
@retval EFI_SUCCESS The packet was placed on the transmit queue.
|
||||
@retval EFI_NOT_STARTED The network interface has not been started.
|
||||
@retval EFI_NOT_READY The network interface is too busy to accept this transmit request.
|
||||
@retval EFI_NOT_READY The network interface is too busy to accept this transmit request.
|
||||
@retval EFI_BUFFER_TOO_SMALL The BufferSize parameter is too small.
|
||||
@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.
|
||||
@@ -3257,7 +3257,7 @@ Undi16SimpleNetworkTransmit (
|
||||
|
||||
/**
|
||||
Receives a packet from a network interface.
|
||||
|
||||
|
||||
@param This The protocol instance pointer.
|
||||
@param HeaderSize The size, in bytes, of the media header received on the network
|
||||
interface. If this parameter is NULL, then the media header size
|
||||
@@ -3377,7 +3377,7 @@ Undi16SimpleNetworkReceive (
|
||||
|
||||
@param Event Event used with WaitForEvent() to wait for a packet to be received.
|
||||
@param Context Event Context
|
||||
|
||||
|
||||
**/
|
||||
VOID
|
||||
EFIAPI
|
||||
@@ -3401,7 +3401,7 @@ Undi16SimpleNetworkWaitForPacket (
|
||||
Check whether packet is ready for receive.
|
||||
|
||||
@param This The protocol instance pointer.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS Receive data is ready.
|
||||
@retval EFI_NOT_STARTED The network interface has not been started.
|
||||
@retval EFI_NOT_READY The network interface is too busy to accept this transmit
|
||||
@@ -3466,11 +3466,11 @@ Undi16SimpleNetworkCheckForPacket (
|
||||
|
||||
/**
|
||||
Signal handlers for ExitBootServices event.
|
||||
|
||||
Clean up any Real-mode UNDI residue from the system
|
||||
|
||||
|
||||
Clean up any Real-mode UNDI residue from the system
|
||||
|
||||
@param Event ExitBootServices event
|
||||
@param Context
|
||||
@param Context
|
||||
**/
|
||||
VOID
|
||||
EFIAPI
|
||||
@@ -3494,7 +3494,7 @@ Undi16SimpleNetworkEvent (
|
||||
|
||||
@param NumPages The number pages want to be allocated.
|
||||
@param Buffer On return, allocated buffer.
|
||||
|
||||
|
||||
@return Status of allocating pages.
|
||||
**/
|
||||
EFI_STATUS
|
||||
|
@@ -1,6 +1,6 @@
|
||||
/** @file
|
||||
|
||||
Copyright (c) 1999 - 2010, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions
|
||||
@@ -119,7 +119,7 @@ extern EFI_COMPONENT_NAME2_PROTOCOL gBiosSnp16ComponentName2;
|
||||
@param This A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance.
|
||||
@param Controller The handle of the controller to test.
|
||||
@param RemainingDevicePath A pointer to the remaining portion of a device path.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS The driver supports given controller.
|
||||
@retval EFI_UNSUPPORT The driver doesn't support given controller.
|
||||
@retval Other Other errors prevent driver finishing to test
|
||||
@@ -140,8 +140,8 @@ BiosSnp16DriverBindingSupported (
|
||||
@param This A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance.
|
||||
@param Controller The handle of the controller to test.
|
||||
@param RemainingDevicePath A pointer to the remaining portion of a device path.
|
||||
|
||||
@retval EFI_SUCCESS - The device was started.
|
||||
|
||||
@retval EFI_SUCCESS - The device was started.
|
||||
@retval EFI_DEVICE_ERROR - The device could not be started due to a device error.
|
||||
@retval EFI_OUT_OF_RESOURCES - The request could not be completed due to a lack of resources.
|
||||
**/
|
||||
@@ -162,7 +162,7 @@ BiosSnp16DriverBindingStart (
|
||||
@param NumberOfChildren The number of child device handles in ChildHandleBuffer.
|
||||
@param ChildHandleBuffer An array of child handles to be freed. May be NULL if
|
||||
NumberOfChildren is 0.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS - The device was stopped.
|
||||
@retval EFI_DEVICE_ERROR - The device could not be stopped due to a device error.
|
||||
**/
|
||||
@@ -183,7 +183,7 @@ BiosSnp16DriverBindingStop (
|
||||
Call 16 bit UNDI ROM to start the network interface
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
|
||||
|
||||
@retval EFI_DEVICE_ERROR Network interface has not be initialized.
|
||||
@retval EFI_DEVICE_ERROR Fail to execute 16 bit ROM call.
|
||||
@retval EFI_SUCESS Success operation.
|
||||
@@ -199,7 +199,7 @@ Undi16SimpleNetworkStart (
|
||||
Call 16 bit UNDI ROM to stop the network interface
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
|
||||
|
||||
@retval EFI_DEVICE_ERROR Network interface has not be initialized.
|
||||
@retval EFI_DEVICE_ERROR Fail to execute 16 bit ROM call.
|
||||
@retval EFI_SUCESS Success operation.
|
||||
@@ -212,12 +212,12 @@ Undi16SimpleNetworkStop (
|
||||
;
|
||||
|
||||
/**
|
||||
Initialize network interface
|
||||
Initialize network interface
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
@param ExtraRxBufferSize The size of extra request receive buffer.
|
||||
@param ExtraTxBufferSize The size of extra request transmit buffer.
|
||||
|
||||
|
||||
@retval EFI_DEVICE_ERROR Fail to execute 16 bit ROM call.
|
||||
@retval EFI_SUCESS Success operation.
|
||||
**/
|
||||
@@ -235,7 +235,7 @@ Undi16SimpleNetworkInitialize (
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
@param ExtendedVerification Need extended verfication.
|
||||
|
||||
|
||||
@retval EFI_INVALID_PARAMETER Invalid This parameter.
|
||||
@retval EFI_DEVICE_ERROR Network device has not been initialized.
|
||||
@retval EFI_NOT_STARTED Network device has been stopped.
|
||||
@@ -254,7 +254,7 @@ Undi16SimpleNetworkReset (
|
||||
Shutdown network interface.
|
||||
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
|
||||
|
||||
@retval EFI_INVALID_PARAMETER Invalid This parameter.
|
||||
@retval EFI_DEVICE_ERROR Network device has not been initialized.
|
||||
@retval EFI_NOT_STARTED Network device has been stopped.
|
||||
@@ -277,7 +277,7 @@ Undi16SimpleNetworkShutdown (
|
||||
@param ResetMCastFilter Whether reset multi cast filter or not
|
||||
@param MCastFilterCnt Count of mutli cast filter for different MAC address
|
||||
@param MCastFilter Buffer for mustli cast filter for different MAC address.
|
||||
|
||||
|
||||
@retval EFI_INVALID_PARAMETER Invalid This parameter.
|
||||
@retval EFI_DEVICE_ERROR Network device has not been initialized.
|
||||
@retval EFI_NOT_STARTED Network device has been stopped.
|
||||
@@ -302,7 +302,7 @@ Undi16SimpleNetworkReceiveFilters (
|
||||
@param This A pointer to EFI_SIMPLE_NETWORK_PROTOCOL structure.
|
||||
@param Reset Whether reset station MAC address to permanent address
|
||||
@param New A pointer to New address
|
||||
|
||||
|
||||
@retval EFI_INVALID_PARAMETER Invalid This parameter.
|
||||
@retval EFI_DEVICE_ERROR Network device has not been initialized.
|
||||
@retval EFI_NOT_STARTED Network device has been stopped.
|
||||
@@ -325,7 +325,7 @@ Undi16SimpleNetworkStationAddress (
|
||||
@param Reset Whether cleanup old statistics data.
|
||||
@param StatisticsSize The buffer of statistics table.
|
||||
@param StatisticsTable A pointer to statistics buffer.
|
||||
|
||||
|
||||
@retval EFI_INVALID_PARAMETER Invalid This parameter.
|
||||
@retval EFI_DEVICE_ERROR Network device has not been initialized.
|
||||
@retval EFI_NOT_STARTED Network device has been stopped.
|
||||
@@ -349,11 +349,11 @@ Undi16SimpleNetworkStatistics (
|
||||
@param IPv6 IPv6 or IPv4
|
||||
@param IP A pointer to given Ip address.
|
||||
@param MAC On return, translated MAC address.
|
||||
|
||||
|
||||
@retval EFI_INVALID_PARAMETER Invalid This parameter.
|
||||
@retval EFI_INVALID_PARAMETER Invalid IP address.
|
||||
@retval EFI_INVALID_PARAMETER Invalid return buffer for holding MAC address.
|
||||
@retval EFI_UNSUPPORTED Do not support IPv6
|
||||
@retval EFI_UNSUPPORTED Do not support IPv6
|
||||
@retval EFI_DEVICE_ERROR Network device has not been initialized.
|
||||
@retval EFI_NOT_STARTED Network device has been stopped.
|
||||
@retval EFI_DEVICE_ERROR Invalid status for network device
|
||||
@@ -370,7 +370,7 @@ Undi16SimpleNetworkMCastIpToMac (
|
||||
;
|
||||
|
||||
/**
|
||||
Performs read and write operations on the NVRAM device attached to a
|
||||
Performs read and write operations on the NVRAM device attached to a
|
||||
network interface.
|
||||
|
||||
@param This The protocol instance pointer.
|
||||
@@ -401,7 +401,7 @@ Undi16SimpleNetworkNvData (
|
||||
;
|
||||
|
||||
/**
|
||||
Reads the current interrupt status and recycled transmit buffer status from
|
||||
Reads the current interrupt status and recycled transmit buffer status from
|
||||
a network interface.
|
||||
|
||||
@param This The protocol instance pointer.
|
||||
@@ -460,7 +460,7 @@ Undi16SimpleNetworkGetStatus (
|
||||
|
||||
@retval EFI_SUCCESS The packet was placed on the transmit queue.
|
||||
@retval EFI_NOT_STARTED The network interface has not been started.
|
||||
@retval EFI_NOT_READY The network interface is too busy to accept this transmit request.
|
||||
@retval EFI_NOT_READY The network interface is too busy to accept this transmit request.
|
||||
@retval EFI_BUFFER_TOO_SMALL The BufferSize parameter is too small.
|
||||
@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.
|
||||
@@ -530,7 +530,7 @@ Undi16SimpleNetworkReceive (
|
||||
|
||||
@param Event Event used with WaitForEvent() to wait for a packet to be received.
|
||||
@param Context Event Context
|
||||
|
||||
|
||||
**/
|
||||
VOID
|
||||
EFIAPI
|
||||
@@ -544,7 +544,7 @@ Undi16SimpleNetworkWaitForPacket (
|
||||
Check whether packet is ready for receive.
|
||||
|
||||
@param This The protocol instance pointer.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS Receive data is ready.
|
||||
@retval EFI_NOT_STARTED The network interface has not been started.
|
||||
@retval EFI_NOT_READY The network interface is too busy to accept this transmit
|
||||
@@ -564,7 +564,7 @@ Undi16SimpleNetworkCheckForPacket (
|
||||
Cache Interrupt verctor address converted from IVT number.
|
||||
|
||||
@param VectorNumber IVT number
|
||||
|
||||
|
||||
@retval EFI_SUCCESS Success to operation.
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -574,10 +574,10 @@ CacheVectorAddress (
|
||||
;
|
||||
|
||||
/**
|
||||
Get interrupt vector address according to IVT number.
|
||||
|
||||
Get interrupt vector address according to IVT number.
|
||||
|
||||
@param VectorNumber Given IVT number
|
||||
|
||||
|
||||
@return cached interrupt vector address.
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -590,14 +590,14 @@ RestoreCachedVectorAddress (
|
||||
If available, launch the BaseCode from a NIC option ROM.
|
||||
This should install the !PXE and PXENV+ structures in memory for
|
||||
subsequent use.
|
||||
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Simple network device instance
|
||||
@param RomAddress The ROM base address for NIC rom.
|
||||
|
||||
@retval EFI_NOT_FOUND The check sum does not match
|
||||
@retval EFI_NOT_FOUND Rom ID offset is wrong
|
||||
@retval EFI_NOT_FOUND No Rom ID structure is found
|
||||
|
||||
@retval EFI_NOT_FOUND The check sum does not match
|
||||
@retval EFI_NOT_FOUND Rom ID offset is wrong
|
||||
@retval EFI_NOT_FOUND No Rom ID structure is found
|
||||
**/
|
||||
EFI_STATUS
|
||||
LaunchBaseCode (
|
||||
@@ -607,7 +607,7 @@ LaunchBaseCode (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
START UNDI
|
||||
Op-Code: PXENV_START_UNDI (0000h)
|
||||
Input: Far pointer to a PXENV_START_UNDI_T parameter structure that has been initialized by the caller.
|
||||
@@ -636,13 +636,13 @@ LaunchBaseCode (
|
||||
contents of these registers can be found in the [PnP], [PCI] and
|
||||
[BBS] specifications.
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeStartUndi (
|
||||
@@ -652,8 +652,8 @@ PxeStartUndi (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
UNDI STARTUP
|
||||
PXE
|
||||
UNDI STARTUP
|
||||
Op-Code: PXENV_UNDI_STARTUP (0001h)
|
||||
Input: Far pointer to a PXENV_UNDI_STARTUP_T parameter structure that has been initialized by the
|
||||
caller.
|
||||
@@ -670,7 +670,7 @@ PxeStartUndi (
|
||||
chaining interrupt 1Ah. This must be done by the PXENV_START_UNDI and
|
||||
PXENV_STOP_UNDI API calls.
|
||||
This service cannot be used in protected mode.
|
||||
typedef struct
|
||||
typedef struct
|
||||
{
|
||||
PXENV_STATUS Status;
|
||||
} PXENV_UNDI_STARTUP_T;
|
||||
@@ -680,10 +680,10 @@ PxeStartUndi (
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiStartup (
|
||||
@@ -693,7 +693,7 @@ PxeUndiStartup (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI CLEANUP
|
||||
Op-Code: PXENV_UNDI_CLEANUP (0002h)
|
||||
Input: Far pointer to a PXENV_UNDI_CLEANUP_T parameter structure.
|
||||
@@ -713,10 +713,10 @@ PxeUndiStartup (
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiCleanup (
|
||||
@@ -726,7 +726,7 @@ PxeUndiCleanup (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI INITIALIZE
|
||||
Op-Code: PXENV_UNDI_INITIALIZE (0003h)
|
||||
Input: Far pointer to a PXENV_UNDI_INITIALIZE_T parameter structure that has been initialized by the
|
||||
@@ -756,13 +756,13 @@ PxeUndiCleanup (
|
||||
protocol.ini file was done by NDIS.) This value can be NULL for any
|
||||
other application interfacing to the universal NIC driver
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance.
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiInitialize (
|
||||
@@ -773,8 +773,8 @@ PxeUndiInitialize (
|
||||
|
||||
/**
|
||||
Wrapper routine for reset adapter.
|
||||
|
||||
PXE
|
||||
|
||||
PXE
|
||||
UNDI RESET ADAPTER
|
||||
Op-Code: PXENV_UNDI_RESET_ADAPTER (0004h)
|
||||
Input: Far pointer to a PXENV_UNDI_RESET_ADAPTER_t parameter structure that has been initialized
|
||||
@@ -806,13 +806,13 @@ PxeUndiInitialize (
|
||||
addresses.
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Device instance.
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
@param RxFilter Filter setting mask value for PXE recive .
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
@param RxFilter Filter setting mask value for PXE recive .
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiResetNic (
|
||||
@@ -823,7 +823,7 @@ PxeUndiResetNic (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI SHUTDOWN
|
||||
Op-Code: PXENV_UNDI_SHUTDOWN (0005h)
|
||||
Input: Far pointer to a PXENV_UNDI_SHUTDOWN_T parameter.
|
||||
@@ -833,7 +833,7 @@ PxeUndiResetNic (
|
||||
Description: This call resets the network adapter and leaves it in a safe state for another driver to program it.
|
||||
Note: The contents of the PXENV_UNDI_STARTUP parameter structure need to be saved by the
|
||||
Universal NIC Driver in case PXENV_UNDI_INITIALIZE is called again.
|
||||
typedef struct
|
||||
typedef struct
|
||||
{
|
||||
PXENV_STATUS Status;
|
||||
} PXENV_UNDI_SHUTDOWN_T;
|
||||
@@ -841,12 +841,12 @@ PxeUndiResetNic (
|
||||
N/A
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiShutdown (
|
||||
@@ -856,7 +856,7 @@ PxeUndiShutdown (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI OPEN
|
||||
Op-Code: PXENV_UNDI_OPEN (0006h)
|
||||
Input: Far pointer to a PXENV_UNDI_OPEN_T parameter structure that has been initialized by the caller.
|
||||
@@ -888,12 +888,12 @@ PxeUndiShutdown (
|
||||
R_Mcast_Buf: See definition in UNDI RESET ADAPTER (0004h).
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiOpen (
|
||||
@@ -903,7 +903,7 @@ PxeUndiOpen (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI CLOSE
|
||||
Op-Code: PXENV_UNDI_CLOSE (0007h)
|
||||
Input: Far pointer to a PXENV_UNDI_CLOSE_T parameter.
|
||||
@@ -919,12 +919,12 @@ PxeUndiOpen (
|
||||
N/A
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiClose (
|
||||
@@ -934,7 +934,7 @@ PxeUndiClose (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI TRANSMIT PACKET
|
||||
Op-Code: PXENV_UNDI_TRANSMIT (0008h)
|
||||
Input: Far pointer to a PXENV_UNDI_TRANSMIT_T parameter structure that
|
||||
@@ -1004,13 +1004,13 @@ PxeUndiClose (
|
||||
TDDataPtr: Segment:Offset of the transmit block.
|
||||
DataBlock: Array of transmit data blocks.
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiTransmit (
|
||||
@@ -1020,7 +1020,7 @@ PxeUndiTransmit (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI SET MULTICAST ADDRESS
|
||||
Op-Code: PXENV_UNDI_SET_MCAST_ADDRESS (0009h)
|
||||
Input: Far pointer to a PXENV_TFTP_SET_MCAST_ADDRESS_t parameter structure that has been
|
||||
@@ -1038,13 +1038,13 @@ PxeUndiTransmit (
|
||||
R_Mcast_Buf: See description in the UNDI RESET ADAPTER
|
||||
(0004h) API.
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiSetMcastAddr (
|
||||
@@ -1054,7 +1054,7 @@ PxeUndiSetMcastAddr (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI SET STATION ADDRESS
|
||||
Op-Code: PXENV_UNDI_SET_STATION_ADDRESS (000Ah)
|
||||
Input: Far pointer to a PXENV_UNDI_SET_STATION_ADDRESS_t parameter structure that has been
|
||||
@@ -1073,13 +1073,13 @@ PxeUndiSetMcastAddr (
|
||||
StationAddress: Temporary MAC address to be used for
|
||||
transmit and receive.
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiSetStationAddr (
|
||||
@@ -1089,7 +1089,7 @@ PxeUndiSetStationAddr (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI SET PACKET FILTER
|
||||
Op-Code: PXENV_UNDI_SET_PACKET_FILTER (000Bh)
|
||||
Input: Far pointer to a PXENV_UNDI_SET_PACKET_FILTER_T parameter structure that has been
|
||||
@@ -1107,13 +1107,13 @@ PxeUndiSetStationAddr (
|
||||
Filter: See the receive filter values in the UNDI OPEN
|
||||
(0006h) API description.
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiSetPacketFilter (
|
||||
@@ -1123,7 +1123,7 @@ PxeUndiSetPacketFilter (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI GET INFORMATION
|
||||
Op-Code: PXENV_UNDI_GET_INFORMATION (000Ch)
|
||||
Input: Far pointer to a PXENV_UNDI_GET_INFORMATION_T parameter structure that has been
|
||||
@@ -1166,13 +1166,13 @@ PxeUndiSetPacketFilter (
|
||||
PermNodeAddress: Permanent hardware address.
|
||||
ROMAddress: Real mode ROM segment address.
|
||||
RxBufCnt: Receive queue length.
|
||||
TxBufCnt: Transmit queue length.
|
||||
|
||||
TxBufCnt: Transmit queue length.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiGetInformation (
|
||||
@@ -1182,7 +1182,7 @@ PxeUndiGetInformation (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI GET STATISTICS
|
||||
Op-Code: PXENV_UNDI_GET_STATISTICS (000Dh)
|
||||
Input: Far pointer to a PXENV_UNDI_GET_STATISTICS_T parameter structure that has been initialized
|
||||
@@ -1208,12 +1208,12 @@ PxeUndiGetInformation (
|
||||
error.
|
||||
RcvResourceErrors: Number of frames discarded
|
||||
because receive queue was full.
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiGetStatistics (
|
||||
@@ -1223,7 +1223,7 @@ PxeUndiGetStatistics (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI CLEAR STATISTICS
|
||||
Op-Code: PXENV_UNDI_CLEAR_STATISTICS (000Eh)
|
||||
Input: Far pointer to a PXENV_UNDI_CLEAR_STATISTICS_T parameter.
|
||||
@@ -1238,12 +1238,12 @@ PxeUndiGetStatistics (
|
||||
N/A
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiClearStatistics (
|
||||
@@ -1253,7 +1253,7 @@ PxeUndiClearStatistics (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI INITIATE DIAGS
|
||||
Op-Code: PXENV_UNDI_INITIATE_DIAGS (000Fh)
|
||||
Input: Far pointer to a PXENV_UNDI_INITIATE_DIAGS_T parameter.
|
||||
@@ -1268,13 +1268,13 @@ PxeUndiClearStatistics (
|
||||
Set before calling API service
|
||||
N/A
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiInitiateDiags (
|
||||
@@ -1284,7 +1284,7 @@ PxeUndiInitiateDiags (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI FORCE INTERRUPT
|
||||
Op-Code: PXENV_UNDI_FORCE_INTERRUPT (0010h)
|
||||
Input: Far pointer to a PXENV_UNDI_FORCE_INTERRUPT_T parameter structure that has been
|
||||
@@ -1305,13 +1305,13 @@ PxeUndiInitiateDiags (
|
||||
Set before calling API service
|
||||
N/A
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiForceInterrupt (
|
||||
@@ -1321,7 +1321,7 @@ PxeUndiForceInterrupt (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI GET MULTICAST ADDRESS
|
||||
Op-Code: PXENV_UNDI_GET_MCAST_ADDRESS (0011h)
|
||||
Input: Far pointer to a PXENV_GET_MCAST_ADDRESS_t parameter structure that has been initialized
|
||||
@@ -1340,12 +1340,12 @@ PxeUndiForceInterrupt (
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
MediaAddr: MAC multicast address.
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiGetMcastAddr (
|
||||
@@ -1355,7 +1355,7 @@ PxeUndiGetMcastAddr (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI GET NIC TYPE
|
||||
Op-Code: PXENV_UNDI_GET_NIC_TYPE (0012h)
|
||||
Input: Far pointer to a PXENV_UNDI_GET_NIC_TYPE_T parameter structure that has been initialized by
|
||||
@@ -1405,13 +1405,13 @@ PxeUndiGetMcastAddr (
|
||||
NICType: Type of NIC information stored in the parameter
|
||||
structure.
|
||||
Info: Information about the fields in this union can be found
|
||||
in the [PnP] and [PCI] specifications
|
||||
|
||||
in the [PnP] and [PCI] specifications
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiGetNicType (
|
||||
@@ -1421,7 +1421,7 @@ PxeUndiGetNicType (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI GET IFACE INFO
|
||||
Op-Code: PXENV_UNDI_GET_IFACE_INFO (0013h)
|
||||
Input: Far pointer to a PXENV_UNDI_GET_IFACE_INFO_t parameter structure that has been initialized
|
||||
@@ -1454,13 +1454,13 @@ PxeUndiGetNicType (
|
||||
to the protocol driver.
|
||||
LinkSpeed: Defined in the NDIS 2.0 specification.
|
||||
ServiceFlags: Defined in the NDIS 2.0 specification.
|
||||
Reserved: Must be zero.
|
||||
|
||||
Reserved: Must be zero.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiGetNdisInfo (
|
||||
@@ -1470,7 +1470,7 @@ PxeUndiGetNdisInfo (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI ISR
|
||||
Op-Code: PXENV_UNDI_ISR (0014h)
|
||||
Input: Far pointer to a PXENV_UNDI_ISR_T parameter structure that has been initialized by the caller.
|
||||
@@ -1512,13 +1512,13 @@ PxeUndiGetNdisInfo (
|
||||
if there is no other interrupt status to be processed, UNDI re-enables the interrupt at the
|
||||
NETWORK INTERFACE level and returns PXENV_UNDI_ISR_OUT_DONE in the FuncFlag.
|
||||
IMPORTANT: It is possible for the protocol driver to be interrupted again while in the
|
||||
strategy routine when the UNDI re-enables interrupts.
|
||||
|
||||
strategy routine when the UNDI re-enables interrupts.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiIsr (
|
||||
@@ -1528,7 +1528,7 @@ PxeUndiIsr (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
STOP UNDI
|
||||
Op-Code: PXENV_STOP_UNDI (0015h)
|
||||
Input: Far pointer to a PXENV_STOP_UNDI_T parameter structure that has been initialized by the caller.
|
||||
@@ -1547,13 +1547,13 @@ PxeUndiIsr (
|
||||
Set before calling API service
|
||||
N/A
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiStop (
|
||||
@@ -1563,7 +1563,7 @@ PxeUndiStop (
|
||||
;
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI GET STATE
|
||||
Op-Code: PXENV_UNDI_GET_STATE (0015h)
|
||||
Input: Far pointer to a PXENV_UNDI_GET_STATE_T parameter.
|
||||
@@ -1595,13 +1595,13 @@ PxeUndiStop (
|
||||
constants.
|
||||
Description: This API function will be called at different levels of processing the interrupt. The FuncFlag field in
|
||||
the parameter block indicates the operation to be performed for the call. This field is filled with the
|
||||
status of that operation on return.
|
||||
|
||||
status of that operation on return.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiGetState (
|
||||
@@ -1619,14 +1619,14 @@ PxeUndiGetState (
|
||||
push offset pxe_data_call_struct ;is pushed onto stack.
|
||||
push Index ;UINT16 is pushed onto stack.
|
||||
call dword ptr (s_PXE ptr es:[di]).EntryPointSP
|
||||
add sp, 6 ;Caller cleans up stack.
|
||||
add sp, 6 ;Caller cleans up stack.
|
||||
|
||||
@param SimpleNetworkDevice Device instance for simple network
|
||||
@param Table Point to parameter/retun value table for legacy far call
|
||||
@param TableSize The size of parameter/return value table
|
||||
@param CallIndex The index of legacy call.
|
||||
|
||||
@return EFI_STATUS
|
||||
|
||||
@return EFI_STATUS
|
||||
**/
|
||||
EFI_STATUS
|
||||
MakePxeCall (
|
||||
@@ -1642,7 +1642,7 @@ MakePxeCall (
|
||||
|
||||
@param NumPages The number pages want to be allocated.
|
||||
@param Buffer On return, allocated buffer.
|
||||
|
||||
|
||||
@return Status of allocating pages.
|
||||
**/
|
||||
EFI_STATUS
|
||||
|
@@ -3,14 +3,14 @@
|
||||
//
|
||||
// Thunk wrapper UEFI driver to produce EFI SNP protocol based on legacy 16 NIC ROM.
|
||||
//
|
||||
// Copyright (c) 1999 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
// Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
//
|
||||
// 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.
|
||||
//
|
||||
|
@@ -1,7 +1,7 @@
|
||||
// /** @file
|
||||
// BiosSnp16 Localized Strings and Content
|
||||
//
|
||||
// Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
// Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
//
|
||||
// This program and the accompanying materials
|
||||
// are licensed and made available under the terms and conditions
|
||||
@@ -14,8 +14,8 @@
|
||||
//
|
||||
// **/
|
||||
|
||||
#string STR_PROPERTIES_MODULE_NAME
|
||||
#language en-US
|
||||
#string STR_PROPERTIES_MODULE_NAME
|
||||
#language en-US
|
||||
"Legacy Simple Network Protocol DXE Driver"
|
||||
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
Helper Routines that use a PXE-enabled NIC option ROM.
|
||||
|
||||
Copyright (c) 1999 - 2017, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions
|
||||
@@ -39,7 +39,7 @@ UINT32 CachedVectorAddress[0x100];
|
||||
Cache Interrupt verctor address converted from IVT number.
|
||||
|
||||
@param VectorNumber IVT number
|
||||
|
||||
|
||||
@retval EFI_SUCCESS Success to operation.
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -55,10 +55,10 @@ CacheVectorAddress (
|
||||
}
|
||||
|
||||
/**
|
||||
Get interrupt vector address according to IVT number.
|
||||
|
||||
Get interrupt vector address according to IVT number.
|
||||
|
||||
@param VectorNumber Given IVT number
|
||||
|
||||
|
||||
@return cached interrupt vector address.
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -74,10 +74,10 @@ RestoreCachedVectorAddress (
|
||||
}
|
||||
|
||||
/**
|
||||
Print Undi loader table.
|
||||
Print Undi loader table.
|
||||
|
||||
@param UndiLoaderStructure Point to Undi Loader table structure.
|
||||
|
||||
@param UndiLoaderStructure Point to Undi Loader table structure.
|
||||
|
||||
**/
|
||||
VOID
|
||||
Print_Undi_Loader_Table (
|
||||
@@ -108,12 +108,12 @@ Print_Undi_Loader_Table (
|
||||
/**
|
||||
Simple table dumper. The ROMID table is necessary in order to effect
|
||||
the "Early UNDI" trick. Herein, the UNDI layer can be loaded in the
|
||||
pre-boot phase without having to download a Network Boot Program
|
||||
pre-boot phase without having to download a Network Boot Program
|
||||
across the wire. It is required in the implementation in that we
|
||||
are not using PXE.
|
||||
|
||||
@param RomIDStructure Point to RomID structure.
|
||||
|
||||
|
||||
**/
|
||||
VOID
|
||||
Print_ROMID_Table (
|
||||
@@ -199,7 +199,7 @@ Print_ROMID_Table (
|
||||
Print PXE table.
|
||||
|
||||
@param PxeTable Point to PXE table structure
|
||||
|
||||
|
||||
**/
|
||||
VOID
|
||||
Print_PXE_Table (
|
||||
@@ -351,7 +351,7 @@ Print_PXE_Table (
|
||||
Print PXENV table.
|
||||
|
||||
@param PxenvTable Point to PXENV
|
||||
|
||||
|
||||
**/
|
||||
VOID
|
||||
Print_PXENV_Table (
|
||||
@@ -425,14 +425,14 @@ Print_PXENV_Table (
|
||||
If available, launch the BaseCode from a NIC option ROM.
|
||||
This should install the !PXE and PXENV+ structures in memory for
|
||||
subsequent use.
|
||||
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Simple network device instance
|
||||
@param RomAddress The ROM base address for NIC rom.
|
||||
|
||||
@retval EFI_NOT_FOUND The check sum does not match
|
||||
@retval EFI_NOT_FOUND Rom ID offset is wrong
|
||||
@retval EFI_NOT_FOUND No Rom ID structure is found
|
||||
|
||||
@retval EFI_NOT_FOUND The check sum does not match
|
||||
@retval EFI_NOT_FOUND Rom ID offset is wrong
|
||||
@retval EFI_NOT_FOUND No Rom ID structure is found
|
||||
**/
|
||||
EFI_STATUS
|
||||
LaunchBaseCode (
|
||||
@@ -819,14 +819,14 @@ LaunchBaseCode (
|
||||
push offset pxe_data_call_struct ;is pushed onto stack.
|
||||
push Index ;UINT16 is pushed onto stack.
|
||||
call dword ptr (s_PXE ptr es:[di]).EntryPointSP
|
||||
add sp, 6 ;Caller cleans up stack.
|
||||
add sp, 6 ;Caller cleans up stack.
|
||||
|
||||
@param SimpleNetworkDevice Device instance for simple network
|
||||
@param Table Point to parameter/retun value table for legacy far call
|
||||
@param TableSize The size of parameter/return value table
|
||||
@param CallIndex The index of legacy call.
|
||||
|
||||
@return EFI_STATUS
|
||||
|
||||
@return EFI_STATUS
|
||||
**/
|
||||
EFI_STATUS
|
||||
MakePxeCall (
|
||||
|
@@ -2,12 +2,12 @@
|
||||
These are PXE Specification 2.1-compliant data structures and defines.
|
||||
|
||||
This file relies upon the existence of a PXE-compliant ROM
|
||||
in memory, as defined by the Preboot Execution Environment
|
||||
in memory, as defined by the Preboot Execution Environment
|
||||
Specification (PXE), Version 2.1, located at
|
||||
|
||||
http://developer.intel.com/ial/wfm/wfmspecs.htm
|
||||
|
||||
Copyright (c) 1999 - 2010, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions
|
||||
@@ -69,7 +69,7 @@ typedef UINT32 ADDR32;
|
||||
|
||||
//
|
||||
// Status codes returned in the status word of PXENV API parameter structures.
|
||||
//
|
||||
//
|
||||
// Generic API errors - these do not match up with the M0x or E0x messages
|
||||
// that are reported by the loader.
|
||||
//
|
||||
@@ -92,7 +92,7 @@ typedef enum {
|
||||
|
||||
/* Driver errors (0x60 to 0x6F) */
|
||||
|
||||
// These errors are for UNDI compatible NIC drivers.
|
||||
// These errors are for UNDI compatible NIC drivers.
|
||||
#define PXENV_STATUS_UNDI_INVALID_FUNCTION 0x60
|
||||
#define PXENV_STATUS_UNDI_MEDIATEST_FAILED 0x61
|
||||
#define PXENV_STATUS_UNDI_CANNOT_INIT_NIC_FOR_MCAST 0x62
|
||||
@@ -260,7 +260,7 @@ typedef struct {
|
||||
|
||||
#define ADDR_LEN 16
|
||||
#define MAXNUM_MCADDR 8
|
||||
#define IPLEN 4 ///< length of an IP address
|
||||
#define IPLEN 4 ///< length of an IP address
|
||||
#define XMT_DESTADDR 0x0000 ///< destination address given
|
||||
#define XMT_BROADCAST 0x0001 ///< use broadcast address
|
||||
|
||||
@@ -288,7 +288,7 @@ typedef struct {
|
||||
IN UINT16 Ax; ///< In: These register fields must be
|
||||
IN UINT16 Bx; ///< filled in with the same data
|
||||
IN UINT16 Dx; ///< that was passed to the MLID
|
||||
IN UINT16 Di; ///< option ROM boot code by the
|
||||
IN UINT16 Di; ///< option ROM boot code by the
|
||||
IN UINT16 Es; ///< system BIOS.
|
||||
} PXENV_START_UNDI_T;
|
||||
|
||||
@@ -302,7 +302,7 @@ typedef struct {
|
||||
|
||||
typedef struct {
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
|
||||
|
||||
///
|
||||
/// This is an input parameter and is a 32-bit physical address of
|
||||
/// a memory copy of the driver module in the protocol.ini file
|
||||
@@ -315,7 +315,7 @@ typedef struct {
|
||||
/// itself.) This value can be NULL for for any other application
|
||||
/// interfacing to the Universal NIC Driver.
|
||||
///
|
||||
IN UINT32 ProtocolIni;
|
||||
IN UINT32 ProtocolIni;
|
||||
UINT8 Reserved[8];
|
||||
} PXENV_UNDI_INITIALIZE_T;
|
||||
|
||||
@@ -329,23 +329,23 @@ typedef struct {
|
||||
Note: The NIC driver does not remember the multicast
|
||||
addresses provided in any call. So the application must
|
||||
provide the multicast address list with all the calls that
|
||||
reset the receive unit of the adapter.
|
||||
reset the receive unit of the adapter.
|
||||
--*/
|
||||
typedef struct {
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
} PXENV_UNDI_SHUTDOWN_T;
|
||||
|
||||
typedef struct {
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
|
||||
|
||||
///
|
||||
/// This is an input parameter and is adapter specific. This is
|
||||
/// supported for Universal NDIS 2.0 driver to pass down the Open
|
||||
/// flags provided by the protocol driver (See NDIS 2.0
|
||||
/// specifications). This can be zero.
|
||||
///
|
||||
IN UINT16 OpenFlag; ///< In: See description below
|
||||
IN UINT16 PktFilter; ///< In: Filter for receiving
|
||||
/// specifications). This can be zero.
|
||||
///
|
||||
IN UINT16 OpenFlag; ///< In: See description below
|
||||
IN UINT16 PktFilter; ///< In: Filter for receiving
|
||||
|
||||
/* packet. It takes the following */
|
||||
|
||||
@@ -355,7 +355,7 @@ typedef struct {
|
||||
#define FLTR_DIRECTED 0x0001 ///< directed/multicast
|
||||
#define FLTR_BRDCST 0x0002 ///< broadcast packets
|
||||
#define FLTR_PRMSCS 0x0004 ///< any packet on LAN
|
||||
#define FLTR_SRC_RTG 0x0008 ///< source routing packet
|
||||
#define FLTR_SRC_RTG 0x0008 ///< source routing packet
|
||||
IN PXENV_UNDI_MCAST_ADDR_T McastBuffer; /* In: */
|
||||
/* See t_PXENV_UNDI_MCAST_ADDR. */
|
||||
} PXENV_UNDI_OPEN_T;
|
||||
@@ -370,22 +370,22 @@ typedef struct {
|
||||
IN UINT16 ImmedLength; ///< In: Data buffer length in
|
||||
|
||||
/* bytes. */
|
||||
UINT16 XmitOffset; ///< 16-bit segment & offset of the
|
||||
UINT16 XmitSegment; ///< immediate data buffer.
|
||||
UINT16 DataBlkCount; ///< In: Number of data blocks.
|
||||
UINT16 XmitOffset; ///< 16-bit segment & offset of the
|
||||
UINT16 XmitSegment; ///< immediate data buffer.
|
||||
UINT16 DataBlkCount; ///< In: Number of data blocks.
|
||||
struct DataBlk {
|
||||
UINT8 TDPtrType; ///< 0 => 32 bit Phys pointer in TDDataPtr, not supported in this version of LSA
|
||||
UINT8 TDPtrType; ///< 0 => 32 bit Phys pointer in TDDataPtr, not supported in this version of LSA
|
||||
///< 1 => seg:offser in TDDataPtr which can be a real mode or 16-bit protected mode pointer
|
||||
UINT8 TDRsvdByte; ///< Reserved, must be zero.
|
||||
UINT16 TDDataLen; ///< Data block length in bytes.
|
||||
UINT16 TDDataPtrOffset; ///< Far pointer to data buffer.
|
||||
UINT16 TDDataPtrSegment; ///< Far pointer to data buffer.
|
||||
UINT8 TDRsvdByte; ///< Reserved, must be zero.
|
||||
UINT16 TDDataLen; ///< Data block length in bytes.
|
||||
UINT16 TDDataPtrOffset; ///< Far pointer to data buffer.
|
||||
UINT16 TDDataPtrSegment; ///< Far pointer to data buffer.
|
||||
} DataBlock[MAX_DATA_BLKS];
|
||||
}
|
||||
PXENV_UNDI_TBD_T;
|
||||
|
||||
typedef struct {
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
|
||||
///
|
||||
/// This is the protocol of the upper layer that is calling
|
||||
@@ -403,9 +403,9 @@ typedef struct {
|
||||
/// destination media address in the field DestMediaAddr. If 1,
|
||||
/// the NIC driver fills the broadcast address for the
|
||||
/// destination.
|
||||
///
|
||||
IN UINT8 XmitFlag;
|
||||
#define XMT_DESTADDR 0x0000 ///< destination address given
|
||||
///
|
||||
IN UINT8 XmitFlag;
|
||||
#define XMT_DESTADDR 0x0000 ///< destination address given
|
||||
#define XMT_BROADCAST 0x0001 ///< use broadcast address
|
||||
|
||||
///
|
||||
@@ -415,70 +415,70 @@ typedef struct {
|
||||
/// media address must be obtained by the upper level protocol
|
||||
/// (with Address Resolution Protocol) and NIC driver does not do
|
||||
/// any address resolution.
|
||||
///
|
||||
///
|
||||
IN UINT16 DestAddrOffset; ///< 16-bit segment & offset of the
|
||||
IN UINT16 DestAddrSegment; ///< destination media address
|
||||
|
||||
|
||||
IN UINT16 TBDOffset; ///< 16-bit segment & offset of the
|
||||
IN UINT16 TBDSegment; ///< transmit buffer descriptor of type
|
||||
|
||||
/// XmitBufferDesc
|
||||
IN UINT16 TBDOffset; ///< 16-bit segment & offset of the
|
||||
IN UINT16 TBDSegment; ///< transmit buffer descriptor of type
|
||||
|
||||
/// XmitBufferDesc
|
||||
IN UINT32 Reserved[2];
|
||||
} PXENV_UNDI_TRANSMIT_T;
|
||||
|
||||
|
||||
typedef struct {
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
IN PXENV_UNDI_MCAST_ADDR_T McastBuffer; ///< In:
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
IN PXENV_UNDI_MCAST_ADDR_T McastBuffer; ///< In:
|
||||
} PXENV_UNDI_SET_MCAST_ADDR_T;
|
||||
|
||||
typedef struct {
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
IN UINT8 StationAddress[ADDR_LEN]; ///< new address to be set
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
IN UINT8 StationAddress[ADDR_LEN]; ///< new address to be set
|
||||
} PXENV_UNDI_SET_STATION_ADDR_T;
|
||||
|
||||
typedef struct s_PXENV_UNDI_SET_PACKET_FILTER {
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
IN UINT8 Filter; ///< In: Receive filter value.
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
IN UINT8 Filter; ///< In: Receive filter value.
|
||||
} PXENV_UNDI_SET_PACKET_FILTER_T;
|
||||
|
||||
typedef struct {
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
OUT UINT16 BaseIo; ///< Out: Adapter's Base IO
|
||||
OUT UINT16 IntNumber; ///< Out: IRQ number
|
||||
OUT UINT16 MaxTranUnit; ///< Out: MTU
|
||||
OUT UINT16 HwType; ///< Out: type of protocol at hardware level
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
OUT UINT16 BaseIo; ///< Out: Adapter's Base IO
|
||||
OUT UINT16 IntNumber; ///< Out: IRQ number
|
||||
OUT UINT16 MaxTranUnit; ///< Out: MTU
|
||||
OUT UINT16 HwType; ///< Out: type of protocol at hardware level
|
||||
|
||||
#define ETHER_TYPE 1
|
||||
#define EXP_ETHER_TYPE 2
|
||||
#define IEEE_TYPE 6
|
||||
#define ARCNET_TYPE 7
|
||||
/*++
|
||||
/*++
|
||||
other numbers can be obtained from rfc1010 for "Assigned
|
||||
Numbers". This number may not be validated by the application
|
||||
and hence adding new numbers to the list should be fine at any
|
||||
time.
|
||||
time.
|
||||
--*/
|
||||
OUT UINT16 HwAddrLen; ///< Out: actual length of hardware address
|
||||
OUT UINT16 HwAddrLen; ///< Out: actual length of hardware address
|
||||
OUT UINT8 CurrentNodeAddress[ADDR_LEN]; ///< Out: Current hardware address
|
||||
OUT UINT8 PermNodeAddress[ADDR_LEN]; ///< Out: Permanent hardware address
|
||||
OUT UINT16 ROMAddress; ///< Out: ROM address
|
||||
OUT UINT16 RxBufCt; ///< Out: receive Queue length
|
||||
OUT UINT16 TxBufCt; ///< Out: Transmit Queue length
|
||||
OUT UINT16 ROMAddress; ///< Out: ROM address
|
||||
OUT UINT16 RxBufCt; ///< Out: receive Queue length
|
||||
OUT UINT16 TxBufCt; ///< Out: Transmit Queue length
|
||||
} PXENV_UNDI_GET_INFORMATION_T;
|
||||
|
||||
typedef struct {
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
OUT UINT32 XmtGoodFrames; ///< Out: No. of good transmissions
|
||||
OUT UINT32 RcvGoodFrames; ///< Out: No. of good frames received
|
||||
OUT UINT32 RcvCRCErrors; ///< Out: No. of frames with CRC error
|
||||
OUT UINT32 RcvResourceErrors; ///< Out: no. of frames discarded
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
OUT UINT32 XmtGoodFrames; ///< Out: No. of good transmissions
|
||||
OUT UINT32 RcvGoodFrames; ///< Out: No. of good frames received
|
||||
OUT UINT32 RcvCRCErrors; ///< Out: No. of frames with CRC error
|
||||
OUT UINT32 RcvResourceErrors; ///< Out: no. of frames discarded
|
||||
/* Out: receive Queue full */
|
||||
} PXENV_UNDI_GET_STATISTICS_T;
|
||||
|
||||
typedef struct {
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
} PXENV_UNDI_CLEAR_STATISTICS_T;
|
||||
|
||||
typedef struct {
|
||||
@@ -490,31 +490,31 @@ typedef struct {
|
||||
} PXENV_UNDI_FORCE_INTERRUPT_T;
|
||||
|
||||
typedef struct {
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
IN UINT32 InetAddr; ///< In: IP Multicast Address
|
||||
OUT UINT8 MediaAddr[ADDR_LEN]; ///< Out: corresponding hardware
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
IN UINT32 InetAddr; ///< In: IP Multicast Address
|
||||
OUT UINT8 MediaAddr[ADDR_LEN]; ///< Out: corresponding hardware
|
||||
/* multicast address */
|
||||
} PXENV_UNDI_GET_MCAST_ADDR_T;
|
||||
|
||||
typedef struct {
|
||||
OUT UINT16 Vendor_ID; ///< OUT:
|
||||
OUT UINT16 Dev_ID; ///< OUT:
|
||||
OUT UINT8 Base_Class; ///< OUT:
|
||||
OUT UINT8 Sub_Class; ///< OUT:
|
||||
OUT UINT8 Prog_Intf; ///< OUT: program interface
|
||||
OUT UINT8 Rev; ///< OUT: Revision number
|
||||
OUT UINT16 BusDevFunc; ///< OUT: Bus, Device & Function numbers
|
||||
OUT UINT16 SubVendor_ID; ///< OUT:
|
||||
OUT UINT16 SubDevice_ID; ///< OUT:
|
||||
OUT UINT16 Vendor_ID; ///< OUT:
|
||||
OUT UINT16 Dev_ID; ///< OUT:
|
||||
OUT UINT8 Base_Class; ///< OUT:
|
||||
OUT UINT8 Sub_Class; ///< OUT:
|
||||
OUT UINT8 Prog_Intf; ///< OUT: program interface
|
||||
OUT UINT8 Rev; ///< OUT: Revision number
|
||||
OUT UINT16 BusDevFunc; ///< OUT: Bus, Device & Function numbers
|
||||
OUT UINT16 SubVendor_ID; ///< OUT:
|
||||
OUT UINT16 SubDevice_ID; ///< OUT:
|
||||
} PCI_INFO_T;
|
||||
|
||||
typedef struct {
|
||||
OUT UINT32 EISA_Dev_ID; ///< Out:
|
||||
OUT UINT8 Base_Class; ///< OUT:
|
||||
OUT UINT8 Sub_Class; ///< OUT:
|
||||
OUT UINT8 Prog_Intf; ///< OUT: program interface
|
||||
OUT UINT16 CardSelNum; ///< OUT: Card Selector Number
|
||||
OUT UINT8 Reserved; ///< to make it 10 bytes
|
||||
OUT UINT32 EISA_Dev_ID; ///< Out:
|
||||
OUT UINT8 Base_Class; ///< OUT:
|
||||
OUT UINT8 Sub_Class; ///< OUT:
|
||||
OUT UINT8 Prog_Intf; ///< OUT: program interface
|
||||
OUT UINT16 CardSelNum; ///< OUT: Card Selector Number
|
||||
OUT UINT8 Reserved; ///< to make it 10 bytes
|
||||
} PNP_INFO_T;
|
||||
|
||||
|
||||
@@ -524,14 +524,14 @@ typedef union {
|
||||
} PCI_PNP_INFO_T;
|
||||
|
||||
typedef struct {
|
||||
OUT UINT16 Status; ///< OUT: PXENV_STATUS_xxx
|
||||
OUT UINT8 NicType; ///< OUT: 2=PCI, 3=PnP
|
||||
OUT UINT16 Status; ///< OUT: PXENV_STATUS_xxx
|
||||
OUT UINT8 NicType; ///< OUT: 2=PCI, 3=PnP
|
||||
PCI_PNP_INFO_T PciPnpInfo;
|
||||
} PXENV_UNDI_GET_NIC_TYPE_T;
|
||||
|
||||
typedef struct {
|
||||
OUT UINT16 Status; ///< OUT: PXENV_STATUS_xxx
|
||||
OUT UINT8 IfaceType[16]; ///< OUT: Type name of MAC, AsciiZ
|
||||
OUT UINT16 Status; ///< OUT: PXENV_STATUS_xxx
|
||||
OUT UINT8 IfaceType[16]; ///< OUT: Type name of MAC, AsciiZ
|
||||
|
||||
/* format. This is used by the */
|
||||
|
||||
@@ -542,14 +542,14 @@ typedef struct {
|
||||
/* Service specific */
|
||||
|
||||
/* characteristic table */
|
||||
OUT UINT32 LinkSpeed; ///< OUT:
|
||||
OUT UINT32 ServiceFlags; ///< OUT: as defined in NDIS Spec 2.0X
|
||||
OUT UINT32 LinkSpeed; ///< OUT:
|
||||
OUT UINT32 ServiceFlags; ///< OUT: as defined in NDIS Spec 2.0X
|
||||
OUT UINT32 Reserved[4]; ///< OUT: will be filled with 0s till defined
|
||||
} PXENV_UNDI_GET_NDIS_INFO_T;
|
||||
|
||||
typedef struct {
|
||||
OUT UINT16 Status; ///< OUT: PXENV_STATUS_xxx
|
||||
IN OUT UINT16 FuncFlag; ///< In: PXENV_UNDI_ISR_IN_xxx
|
||||
OUT UINT16 Status; ///< OUT: PXENV_STATUS_xxx
|
||||
IN OUT UINT16 FuncFlag; ///< In: PXENV_UNDI_ISR_IN_xxx
|
||||
|
||||
/* Out: PXENV_UNDI_ISR_OUT_xxx */
|
||||
OUT UINT16 BufferLength;
|
||||
@@ -580,7 +580,7 @@ typedef struct {
|
||||
Possible responses from PXENV_UNDI_ISR_IN_START
|
||||
|
||||
--*/
|
||||
#define PXENV_UNDI_ISR_OUT_OURS 0 ///< This is our interrupt. Deal with it.
|
||||
#define PXENV_UNDI_ISR_OUT_OURS 0 ///< This is our interrupt. Deal with it.
|
||||
#define PXENV_UNDI_ISR_OUT_NOT_OURS 1 ///< This is not our interrupt.
|
||||
|
||||
/*++
|
||||
@@ -589,22 +589,22 @@ typedef struct {
|
||||
PXENV_UNDI_ISR_IN_PROCESS
|
||||
|
||||
--*/
|
||||
#define PXENV_UNDI_ISR_OUT_DONE 0 ///< We are done processing this interrupt.
|
||||
#define PXENV_UNDI_ISR_OUT_TRANSMIT 2 ///< We completed a transmit interrupt.
|
||||
#define PXENV_UNDI_ISR_OUT_RECEIVE 3 ///< Get data from receive buffer.
|
||||
#define PXENV_UNDI_ISR_OUT_DONE 0 ///< We are done processing this interrupt.
|
||||
#define PXENV_UNDI_ISR_OUT_TRANSMIT 2 ///< We completed a transmit interrupt.
|
||||
#define PXENV_UNDI_ISR_OUT_RECEIVE 3 ///< Get data from receive buffer.
|
||||
|
||||
#define PXENV_UNDI_ISR_OUT_BUSY 4 /* ? */
|
||||
|
||||
typedef struct {
|
||||
UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
} PXENV_STOP_UNDI_T;
|
||||
|
||||
#define PXENV_UNDI_STARTED 1 ///< not even initialized
|
||||
#define PXENV_UNDI_INITIALIZED 2 ///< initialized and closed (not opened)
|
||||
#define PXENV_UNDI_OPENED 3 ///< initialized & opened
|
||||
#define PXENV_UNDI_STARTED 1 ///< not even initialized
|
||||
#define PXENV_UNDI_INITIALIZED 2 ///< initialized and closed (not opened)
|
||||
#define PXENV_UNDI_OPENED 3 ///< initialized & opened
|
||||
|
||||
typedef struct {
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
OUT UINT16 Status; ///< Out: PXENV_STATUS_xxx
|
||||
UINT16 UNDI_State;
|
||||
} PXENV_UNDI_GET_STATE_T;
|
||||
|
||||
|
@@ -1,15 +1,15 @@
|
||||
/** @file
|
||||
Wrapper routines that use a PXE-enabled NIC option ROM to
|
||||
supply internal routines for an EFI SNI (Simple Network
|
||||
/** @file
|
||||
Wrapper routines that use a PXE-enabled NIC option ROM to
|
||||
supply internal routines for an EFI SNI (Simple Network
|
||||
Interface) Protocol.
|
||||
|
||||
This file relies upon the existence of a PXE-compliant ROM
|
||||
in memory, as defined by the Preboot Execution Environment
|
||||
in memory, as defined by the Preboot Execution Environment
|
||||
Specification (PXE), Version 2.1, located at
|
||||
|
||||
http://developer.intel.com/ial/wfm/wfmspecs.htm
|
||||
|
||||
Copyright (c) 1999 - 2010, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions
|
||||
@@ -25,7 +25,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
#include "BiosSnp16.h"
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
START UNDI
|
||||
Op-Code: PXENV_START_UNDI (0000h)
|
||||
Input: Far pointer to a PXENV_START_UNDI_T parameter structure that has been initialized by the caller.
|
||||
@@ -54,13 +54,13 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
contents of these registers can be found in the [PnP], [PCI] and
|
||||
[BBS] specifications.
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeStartUndi (
|
||||
@@ -77,8 +77,8 @@ PxeStartUndi (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
UNDI STARTUP
|
||||
PXE
|
||||
UNDI STARTUP
|
||||
Op-Code: PXENV_UNDI_STARTUP (0001h)
|
||||
Input: Far pointer to a PXENV_UNDI_STARTUP_T parameter structure that has been initialized by the
|
||||
caller.
|
||||
@@ -95,7 +95,7 @@ PxeStartUndi (
|
||||
chaining interrupt 1Ah. This must be done by the PXENV_START_UNDI and
|
||||
PXENV_STOP_UNDI API calls.
|
||||
This service cannot be used in protected mode.
|
||||
typedef struct
|
||||
typedef struct
|
||||
{
|
||||
PXENV_STATUS Status;
|
||||
} PXENV_UNDI_STARTUP_T;
|
||||
@@ -105,10 +105,10 @@ PxeStartUndi (
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiStartup (
|
||||
@@ -125,7 +125,7 @@ PxeUndiStartup (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI CLEANUP
|
||||
Op-Code: PXENV_UNDI_CLEANUP (0002h)
|
||||
Input: Far pointer to a PXENV_UNDI_CLEANUP_T parameter structure.
|
||||
@@ -145,10 +145,10 @@ PxeUndiStartup (
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiCleanup (
|
||||
@@ -165,7 +165,7 @@ PxeUndiCleanup (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI INITIALIZE
|
||||
Op-Code: PXENV_UNDI_INITIALIZE (0003h)
|
||||
Input: Far pointer to a PXENV_UNDI_INITIALIZE_T parameter structure that has been initialized by the
|
||||
@@ -195,13 +195,13 @@ PxeUndiCleanup (
|
||||
protocol.ini file was done by NDIS.) This value can be NULL for any
|
||||
other application interfacing to the universal NIC driver
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiInitialize (
|
||||
@@ -219,8 +219,8 @@ PxeUndiInitialize (
|
||||
|
||||
/**
|
||||
Wrapper routine for reset adapter.
|
||||
|
||||
PXE
|
||||
|
||||
PXE
|
||||
UNDI RESET ADAPTER
|
||||
Op-Code: PXENV_UNDI_RESET_ADAPTER (0004h)
|
||||
Input: Far pointer to a PXENV_UNDI_RESET_ADAPTER_t parameter structure that has been initialized
|
||||
@@ -252,13 +252,13 @@ PxeUndiInitialize (
|
||||
addresses.
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Device instance.
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
@param RxFilter Filter setting mask value for PXE recive .
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
@param RxFilter Filter setting mask value for PXE recive .
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiResetNic (
|
||||
@@ -310,8 +310,8 @@ PxeUndiResetNic (
|
||||
&Open.McastBuffer,
|
||||
&PxeUndiTable->R_Mcast_Buf,
|
||||
sizeof (PXENV_UNDI_MCAST_ADDR_T)
|
||||
);
|
||||
|
||||
);
|
||||
|
||||
|
||||
Status = MakePxeCall (
|
||||
SimpleNetworkDevice,
|
||||
@@ -327,7 +327,7 @@ PxeUndiResetNic (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI SHUTDOWN
|
||||
Op-Code: PXENV_UNDI_SHUTDOWN (0005h)
|
||||
Input: Far pointer to a PXENV_UNDI_SHUTDOWN_T parameter.
|
||||
@@ -337,7 +337,7 @@ PxeUndiResetNic (
|
||||
Description: This call resets the network adapter and leaves it in a safe state for another driver to program it.
|
||||
Note: The contents of the PXENV_UNDI_STARTUP parameter structure need to be saved by the
|
||||
Universal NIC Driver in case PXENV_UNDI_INITIALIZE is called again.
|
||||
typedef struct
|
||||
typedef struct
|
||||
{
|
||||
PXENV_STATUS Status;
|
||||
} PXENV_UNDI_SHUTDOWN_T;
|
||||
@@ -345,12 +345,12 @@ PxeUndiResetNic (
|
||||
N/A
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiShutdown (
|
||||
@@ -367,7 +367,7 @@ PxeUndiShutdown (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI OPEN
|
||||
Op-Code: PXENV_UNDI_OPEN (0006h)
|
||||
Input: Far pointer to a PXENV_UNDI_OPEN_T parameter structure that has been initialized by the caller.
|
||||
@@ -399,12 +399,12 @@ PxeUndiShutdown (
|
||||
R_Mcast_Buf: See definition in UNDI RESET ADAPTER (0004h).
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiOpen (
|
||||
@@ -421,7 +421,7 @@ PxeUndiOpen (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI CLOSE
|
||||
Op-Code: PXENV_UNDI_CLOSE (0007h)
|
||||
Input: Far pointer to a PXENV_UNDI_CLOSE_T parameter.
|
||||
@@ -437,12 +437,12 @@ PxeUndiOpen (
|
||||
N/A
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiClose (
|
||||
@@ -459,7 +459,7 @@ PxeUndiClose (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI TRANSMIT PACKET
|
||||
Op-Code: PXENV_UNDI_TRANSMIT (0008h)
|
||||
Input: Far pointer to a PXENV_UNDI_TRANSMIT_T parameter structure that
|
||||
@@ -529,13 +529,13 @@ PxeUndiClose (
|
||||
TDDataPtr: Segment:Offset of the transmit block.
|
||||
DataBlock: Array of transmit data blocks.
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiTransmit (
|
||||
@@ -565,7 +565,7 @@ PxeUndiTransmit (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI SET MULTICAST ADDRESS
|
||||
Op-Code: PXENV_UNDI_SET_MCAST_ADDRESS (0009h)
|
||||
Input: Far pointer to a PXENV_TFTP_SET_MCAST_ADDRESS_t parameter structure that has been
|
||||
@@ -583,13 +583,13 @@ PxeUndiTransmit (
|
||||
R_Mcast_Buf: See description in the UNDI RESET ADAPTER
|
||||
(0004h) API.
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiSetMcastAddr (
|
||||
@@ -606,7 +606,7 @@ PxeUndiSetMcastAddr (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI SET STATION ADDRESS
|
||||
Op-Code: PXENV_UNDI_SET_STATION_ADDRESS (000Ah)
|
||||
Input: Far pointer to a PXENV_UNDI_SET_STATION_ADDRESS_t parameter structure that has been
|
||||
@@ -625,13 +625,13 @@ PxeUndiSetMcastAddr (
|
||||
StationAddress: Temporary MAC address to be used for
|
||||
transmit and receive.
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiSetStationAddr (
|
||||
@@ -648,7 +648,7 @@ PxeUndiSetStationAddr (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI SET PACKET FILTER
|
||||
Op-Code: PXENV_UNDI_SET_PACKET_FILTER (000Bh)
|
||||
Input: Far pointer to a PXENV_UNDI_SET_PACKET_FILTER_T parameter structure that has been
|
||||
@@ -666,13 +666,13 @@ PxeUndiSetStationAddr (
|
||||
Filter: See the receive filter values in the UNDI OPEN
|
||||
(0006h) API description.
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiSetPacketFilter (
|
||||
@@ -689,7 +689,7 @@ PxeUndiSetPacketFilter (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI GET INFORMATION
|
||||
Op-Code: PXENV_UNDI_GET_INFORMATION (000Ch)
|
||||
Input: Far pointer to a PXENV_UNDI_GET_INFORMATION_T parameter structure that has been
|
||||
@@ -732,13 +732,13 @@ PxeUndiSetPacketFilter (
|
||||
PermNodeAddress: Permanent hardware address.
|
||||
ROMAddress: Real mode ROM segment address.
|
||||
RxBufCnt: Receive queue length.
|
||||
TxBufCnt: Transmit queue length.
|
||||
|
||||
TxBufCnt: Transmit queue length.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiGetInformation (
|
||||
@@ -755,7 +755,7 @@ PxeUndiGetInformation (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI GET STATISTICS
|
||||
Op-Code: PXENV_UNDI_GET_STATISTICS (000Dh)
|
||||
Input: Far pointer to a PXENV_UNDI_GET_STATISTICS_T parameter structure that has been initialized
|
||||
@@ -781,12 +781,12 @@ PxeUndiGetInformation (
|
||||
error.
|
||||
RcvResourceErrors: Number of frames discarded
|
||||
because receive queue was full.
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiGetStatistics (
|
||||
@@ -803,7 +803,7 @@ PxeUndiGetStatistics (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI CLEAR STATISTICS
|
||||
Op-Code: PXENV_UNDI_CLEAR_STATISTICS (000Eh)
|
||||
Input: Far pointer to a PXENV_UNDI_CLEAR_STATISTICS_T parameter.
|
||||
@@ -818,12 +818,12 @@ PxeUndiGetStatistics (
|
||||
N/A
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiClearStatistics (
|
||||
@@ -840,7 +840,7 @@ PxeUndiClearStatistics (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI INITIATE DIAGS
|
||||
Op-Code: PXENV_UNDI_INITIATE_DIAGS (000Fh)
|
||||
Input: Far pointer to a PXENV_UNDI_INITIATE_DIAGS_T parameter.
|
||||
@@ -855,13 +855,13 @@ PxeUndiClearStatistics (
|
||||
Set before calling API service
|
||||
N/A
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiInitiateDiags (
|
||||
@@ -878,7 +878,7 @@ PxeUndiInitiateDiags (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI FORCE INTERRUPT
|
||||
Op-Code: PXENV_UNDI_FORCE_INTERRUPT (0010h)
|
||||
Input: Far pointer to a PXENV_UNDI_FORCE_INTERRUPT_T parameter structure that has been
|
||||
@@ -899,13 +899,13 @@ PxeUndiInitiateDiags (
|
||||
Set before calling API service
|
||||
N/A
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiForceInterrupt (
|
||||
@@ -922,7 +922,7 @@ PxeUndiForceInterrupt (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI GET MULTICAST ADDRESS
|
||||
Op-Code: PXENV_UNDI_GET_MCAST_ADDRESS (0011h)
|
||||
Input: Far pointer to a PXENV_GET_MCAST_ADDRESS_t parameter structure that has been initialized
|
||||
@@ -941,12 +941,12 @@ PxeUndiForceInterrupt (
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
MediaAddr: MAC multicast address.
|
||||
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiGetMcastAddr (
|
||||
@@ -963,7 +963,7 @@ PxeUndiGetMcastAddr (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI GET NIC TYPE
|
||||
Op-Code: PXENV_UNDI_GET_NIC_TYPE (0012h)
|
||||
Input: Far pointer to a PXENV_UNDI_GET_NIC_TYPE parameter structure that has been initialized by
|
||||
@@ -1013,13 +1013,13 @@ PxeUndiGetMcastAddr (
|
||||
NICType: Type of NIC information stored in the parameter
|
||||
structure.
|
||||
Info: Information about the fields in this union can be found
|
||||
in the [PnP] and [PCI] specifications
|
||||
|
||||
in the [PnP] and [PCI] specifications
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiGetNicType (
|
||||
@@ -1036,7 +1036,7 @@ PxeUndiGetNicType (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI GET IFACE INFO
|
||||
Op-Code: PXENV_UNDI_GET_IFACE_INFO (0013h)
|
||||
Input: Far pointer to a PXENV_UNDI_GET_IFACE_INFO_t parameter structure that has been initialized
|
||||
@@ -1069,13 +1069,13 @@ PxeUndiGetNicType (
|
||||
to the protocol driver.
|
||||
LinkSpeed: Defined in the NDIS 2.0 specification.
|
||||
ServiceFlags: Defined in the NDIS 2.0 specification.
|
||||
Reserved: Must be zero.
|
||||
|
||||
Reserved: Must be zero.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiGetNdisInfo (
|
||||
@@ -1092,7 +1092,7 @@ PxeUndiGetNdisInfo (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI ISR
|
||||
Op-Code: PXENV_UNDI_ISR (0014h)
|
||||
Input: Far pointer to a PXENV_UNDI_ISR_T parameter structure that has been initialized by the caller.
|
||||
@@ -1134,13 +1134,13 @@ PxeUndiGetNdisInfo (
|
||||
if there is no other interrupt status to be processed, UNDI re-enables the interrupt at the
|
||||
NETWORK INTERFACE level and returns PXENV_UNDI_ISR_OUT_DONE in the FuncFlag.
|
||||
IMPORTANT: It is possible for the protocol driver to be interrupted again while in the
|
||||
strategy routine when the UNDI re-enables interrupts.
|
||||
|
||||
strategy routine when the UNDI re-enables interrupts.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiIsr (
|
||||
@@ -1157,7 +1157,7 @@ PxeUndiIsr (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
STOP UNDI
|
||||
Op-Code: PXENV_STOP_UNDI (0015h)
|
||||
Input: Far pointer to a PXENV_STOP_UNDI_T parameter structure that has been initialized by the caller.
|
||||
@@ -1176,13 +1176,13 @@ PxeUndiIsr (
|
||||
Set before calling API service
|
||||
N/A
|
||||
Returned from API service
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
Status: See the PXENV_STATUS_xxx constants.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiStop (
|
||||
@@ -1199,7 +1199,7 @@ PxeUndiStop (
|
||||
}
|
||||
|
||||
/**
|
||||
PXE
|
||||
PXE
|
||||
UNDI GET STATE
|
||||
Op-Code: PXENV_UNDI_GET_STATE (0015h)
|
||||
Input: Far pointer to a PXENV_UNDI_GET_STATE_T parameter.
|
||||
@@ -1231,13 +1231,13 @@ PxeUndiStop (
|
||||
constants.
|
||||
Description: This API function will be called at different levels of processing the interrupt. The FuncFlag field in
|
||||
the parameter block indicates the operation to be performed for the call. This field is filled with the
|
||||
status of that operation on return.
|
||||
|
||||
status of that operation on return.
|
||||
|
||||
@param SimpleNetworkDevice Device instance
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
@param PxeUndiTable Point to structure which hold parameter and return value
|
||||
for option ROM call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
|
||||
@return Return value of PXE option ROM far call.
|
||||
**/
|
||||
EFI_STATUS
|
||||
PxeUndiGetState (
|
||||
|
@@ -3,7 +3,7 @@
|
||||
#
|
||||
# Thunk wrapper UEFI driver to produce EFI SNP protocol based on legacy 16 NIC ROM.
|
||||
#
|
||||
# Copyright (c) 1999 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
# Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
#
|
||||
# This program and the accompanying materials
|
||||
# are licensed and made available under the terms and conditions
|
||||
@@ -23,7 +23,7 @@
|
||||
MODULE_TYPE = UEFI_DRIVER
|
||||
INF_VERSION = 0x00010005
|
||||
VERSION_STRING = 1.0
|
||||
|
||||
|
||||
ENTRY_POINT = BiosSnp16DriverEntryPoint
|
||||
|
||||
#
|
||||
|
@@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
ConsoleOut Routines that speak VGA.
|
||||
|
||||
Copyright (c) 2007 - 2017, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions
|
||||
@@ -188,7 +188,7 @@ BiosVideoDriverBindingSupported (
|
||||
if (RemainingDevicePath != NULL) {
|
||||
Node = (EFI_DEV_PATH *) RemainingDevicePath;
|
||||
//
|
||||
// Check if RemainingDevicePath is the End of Device Path Node,
|
||||
// Check if RemainingDevicePath is the End of Device Path Node,
|
||||
// if yes, return EFI_SUCCESS
|
||||
//
|
||||
if (!IsDevicePathEnd (Node)) {
|
||||
@@ -295,7 +295,7 @@ BiosVideoDriverBindingStart (
|
||||
0,
|
||||
&mOriginalPciAttributes
|
||||
);
|
||||
|
||||
|
||||
if (EFI_ERROR (Status)) {
|
||||
goto Done;
|
||||
}
|
||||
@@ -319,7 +319,7 @@ BiosVideoDriverBindingStart (
|
||||
if (Supports == 0 || Supports == (EFI_PCI_IO_ATTRIBUTE_VGA_IO | EFI_PCI_IO_ATTRIBUTE_VGA_IO_16)) {
|
||||
Status = EFI_UNSUPPORTED;
|
||||
goto Done;
|
||||
}
|
||||
}
|
||||
|
||||
REPORT_STATUS_CODE_WITH_DEVICE_PATH (
|
||||
EFI_PROGRESS_CODE,
|
||||
@@ -384,7 +384,7 @@ BiosVideoDriverBindingStart (
|
||||
}
|
||||
|
||||
if (RemainingDevicePath != NULL) {
|
||||
if (IsDevicePathEnd (RemainingDevicePath) &&
|
||||
if (IsDevicePathEnd (RemainingDevicePath) &&
|
||||
(FeaturePcdGet (PcdBiosVideoCheckVbeEnable) || FeaturePcdGet (PcdBiosVideoCheckVgaEnable))) {
|
||||
//
|
||||
// If RemainingDevicePath is the End of Device Path Node,
|
||||
@@ -509,7 +509,7 @@ BiosVideoDriverBindingStop (
|
||||
(VOID **) &PciIo
|
||||
);
|
||||
ASSERT_EFI_ERROR (Status);
|
||||
|
||||
|
||||
//
|
||||
// Restore original PCI attributes
|
||||
//
|
||||
@@ -562,10 +562,10 @@ BiosVideoChildHandleInstall (
|
||||
// Allocate the private device structure for video device
|
||||
//
|
||||
BiosVideoPrivate = (BIOS_VIDEO_DEV *) AllocateZeroPool (
|
||||
sizeof (BIOS_VIDEO_DEV)
|
||||
);
|
||||
sizeof (BIOS_VIDEO_DEV)
|
||||
);
|
||||
if (NULL == BiosVideoPrivate) {
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
goto Done;
|
||||
}
|
||||
|
||||
@@ -668,7 +668,7 @@ BiosVideoChildHandleInstall (
|
||||
AcpiDeviceNode.Header.SubType = ACPI_ADR_DP;
|
||||
AcpiDeviceNode.ADR = ACPI_DISPLAY_ADR (1, 0, 0, 1, 0, ACPI_ADR_DISPLAY_TYPE_VGA, 0, 0);
|
||||
SetDevicePathNodeLength (&AcpiDeviceNode.Header, sizeof (ACPI_ADR_DEVICE_PATH));
|
||||
|
||||
|
||||
BiosVideoPrivate->GopDevicePath = AppendDevicePathNode (
|
||||
ParentDevicePath,
|
||||
(EFI_DEVICE_PATH_PROTOCOL *) &AcpiDeviceNode
|
||||
@@ -676,7 +676,7 @@ BiosVideoChildHandleInstall (
|
||||
} else {
|
||||
BiosVideoPrivate->GopDevicePath = AppendDevicePathNode (ParentDevicePath, RemainingDevicePath);
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Creat child handle and device path protocol firstly
|
||||
//
|
||||
@@ -816,7 +816,7 @@ Done:
|
||||
if (EFI_ERROR (Status)) {
|
||||
if ((BiosVideoPrivate != NULL) && (BiosVideoPrivate->ExitBootServicesEvent != NULL)) {
|
||||
gBS->CloseEvent (BiosVideoPrivate->ExitBootServicesEvent);
|
||||
}
|
||||
}
|
||||
//
|
||||
// Free private data structure
|
||||
//
|
||||
@@ -1271,7 +1271,7 @@ HasChildHandle (
|
||||
HasChild = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return HasChild;
|
||||
}
|
||||
|
||||
@@ -1343,7 +1343,7 @@ BiosVideoCheckForVbe (
|
||||
}
|
||||
|
||||
ZeroMem (&ValidEdidTiming, sizeof (VESA_BIOS_EXTENSIONS_VALID_EDID_TIMING));
|
||||
|
||||
|
||||
//
|
||||
// Fill in the VBE related data structures
|
||||
//
|
||||
@@ -1405,7 +1405,7 @@ BiosVideoCheckForVbe (
|
||||
//
|
||||
EdidOverrideDataBlock = AllocatePool (VESA_BIOS_EXTENSIONS_EDID_BLOCK_SIZE * 2);
|
||||
if (NULL == EdidOverrideDataBlock) {
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
goto Done;
|
||||
}
|
||||
|
||||
@@ -1449,13 +1449,13 @@ BiosVideoCheckForVbe (
|
||||
// Set EDID Discovered Data
|
||||
//
|
||||
BiosVideoPrivate->EdidDiscovered.SizeOfEdid = VESA_BIOS_EXTENSIONS_EDID_BLOCK_SIZE;
|
||||
BiosVideoPrivate->EdidDiscovered.Edid = (UINT8 *) AllocateCopyPool (
|
||||
BiosVideoPrivate->EdidDiscovered.Edid = (UINT8 *) AllocateCopyPool (
|
||||
VESA_BIOS_EXTENSIONS_EDID_BLOCK_SIZE,
|
||||
BiosVideoPrivate->VbeEdidDataBlock
|
||||
);
|
||||
);
|
||||
|
||||
if (NULL == BiosVideoPrivate->EdidDiscovered.Edid) {
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
goto Done;
|
||||
}
|
||||
|
||||
@@ -1470,9 +1470,9 @@ BiosVideoCheckForVbe (
|
||||
EdidActiveDataSize = EdidOverrideDataSize;
|
||||
EdidActiveDataBlock = EdidOverrideDataBlock;
|
||||
EdidFound = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
if (EdidFound) {
|
||||
if (EdidFound) {
|
||||
//
|
||||
// Parse EDID data structure to retrieve modes supported by monitor
|
||||
//
|
||||
@@ -1486,7 +1486,7 @@ BiosVideoCheckForVbe (
|
||||
EdidActiveDataBlock
|
||||
);
|
||||
if (NULL == BiosVideoPrivate->EdidActive.Edid) {
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
goto Done;
|
||||
}
|
||||
}
|
||||
@@ -1507,7 +1507,7 @@ BiosVideoCheckForVbe (
|
||||
|
||||
PreferMode = 0;
|
||||
ModeNumber = 0;
|
||||
|
||||
|
||||
//
|
||||
// ModeNumberPtr may be not 16-byte aligned, so ReadUnaligned16 is used to access the buffer pointed by ModeNumberPtr.
|
||||
//
|
||||
@@ -1635,7 +1635,7 @@ BiosVideoCheckForVbe (
|
||||
// Record the highest resolution mode to set later
|
||||
//
|
||||
if ((BiosVideoPrivate->VbeModeInformationBlock->XResolution > HighestHorizontalResolution) ||
|
||||
((BiosVideoPrivate->VbeModeInformationBlock->XResolution == HighestHorizontalResolution) &&
|
||||
((BiosVideoPrivate->VbeModeInformationBlock->XResolution == HighestHorizontalResolution) &&
|
||||
(BiosVideoPrivate->VbeModeInformationBlock->YResolution > HighestVerticalResolution))) {
|
||||
HighestHorizontalResolution = BiosVideoPrivate->VbeModeInformationBlock->XResolution;
|
||||
HighestVerticalResolution = BiosVideoPrivate->VbeModeInformationBlock->YResolution;
|
||||
@@ -1647,10 +1647,10 @@ BiosVideoCheckForVbe (
|
||||
//
|
||||
ModeNumber ++;
|
||||
ModeBuffer = (BIOS_VIDEO_MODE_DATA *) AllocatePool (
|
||||
ModeNumber * sizeof (BIOS_VIDEO_MODE_DATA)
|
||||
);
|
||||
ModeNumber * sizeof (BIOS_VIDEO_MODE_DATA)
|
||||
);
|
||||
if (NULL == ModeBuffer) {
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
goto Done;
|
||||
}
|
||||
|
||||
@@ -1715,7 +1715,7 @@ BiosVideoCheckForVbe (
|
||||
// Make sure the FrameBufferSize does not exceed the max available frame buffer size reported by VEB.
|
||||
//
|
||||
ASSERT (CurrentModeData->FrameBufferSize <= ((UINT32)BiosVideoPrivate->VbeInformationBlock->TotalMemory * 64 * 1024));
|
||||
|
||||
|
||||
BiosVideoPrivate->ModeData = ModeBuffer;
|
||||
}
|
||||
//
|
||||
@@ -1821,7 +1821,7 @@ BiosVideoCheckForVga (
|
||||
sizeof (BIOS_VIDEO_MODE_DATA)
|
||||
);
|
||||
if (NULL == ModeBuffer) {
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
goto Done;
|
||||
}
|
||||
|
||||
@@ -1913,8 +1913,8 @@ BiosVideoGraphicsOutputQueryMode (
|
||||
}
|
||||
|
||||
*Info = (EFI_GRAPHICS_OUTPUT_MODE_INFORMATION *) AllocatePool (
|
||||
sizeof (EFI_GRAPHICS_OUTPUT_MODE_INFORMATION)
|
||||
);
|
||||
sizeof (EFI_GRAPHICS_OUTPUT_MODE_INFORMATION)
|
||||
);
|
||||
if (NULL == *Info) {
|
||||
return EFI_OUT_OF_RESOURCES;
|
||||
}
|
||||
@@ -1969,8 +1969,8 @@ BiosVideoSetModeWorker (
|
||||
}
|
||||
|
||||
BiosVideoPrivate->LineBuffer = (UINT8 *) AllocatePool (
|
||||
ModeData->BytesPerScanLine
|
||||
);
|
||||
ModeData->BytesPerScanLine
|
||||
);
|
||||
if (NULL == BiosVideoPrivate->LineBuffer) {
|
||||
return EFI_OUT_OF_RESOURCES;
|
||||
}
|
||||
@@ -1998,9 +1998,9 @@ BiosVideoSetModeWorker (
|
||||
// Allocate a working buffer for BLT operations to the VBE frame buffer
|
||||
//
|
||||
BiosVideoPrivate->VbeFrameBuffer =
|
||||
(EFI_GRAPHICS_OUTPUT_BLT_PIXEL *) AllocatePool (
|
||||
ModeData->BytesPerScanLine * ModeData->VerticalResolution
|
||||
);
|
||||
(EFI_GRAPHICS_OUTPUT_BLT_PIXEL *) AllocatePool (
|
||||
ModeData->BytesPerScanLine * ModeData->VerticalResolution
|
||||
);
|
||||
if (NULL == BiosVideoPrivate->VbeFrameBuffer) {
|
||||
return EFI_OUT_OF_RESOURCES;
|
||||
}
|
||||
@@ -2079,11 +2079,11 @@ BiosVideoGraphicsOutputSetMode (
|
||||
if (ModeNumber >= This->Mode->MaxMode) {
|
||||
return EFI_UNSUPPORTED;
|
||||
}
|
||||
|
||||
|
||||
if (ModeNumber == This->Mode->Mode) {
|
||||
//
|
||||
// Clear screen to black
|
||||
//
|
||||
//
|
||||
ZeroMem (&Background, sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL));
|
||||
BiosVideoGraphicsOutputVbeBlt (
|
||||
This,
|
||||
|
@@ -4,14 +4,14 @@
|
||||
// This driver by using Legacy Bios protocol service to support csm Video
|
||||
// and produce Graphics Output Protocol.
|
||||
//
|
||||
// Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
// Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
//
|
||||
// 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.
|
||||
//
|
||||
|
@@ -1,7 +1,7 @@
|
||||
// /** @file
|
||||
// BiosVideoDxe Localized Strings and Content
|
||||
//
|
||||
// Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
// Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
//
|
||||
// This program and the accompanying materials
|
||||
// are licensed and made available under the terms and conditions
|
||||
@@ -14,8 +14,8 @@
|
||||
//
|
||||
// **/
|
||||
|
||||
#string STR_PROPERTIES_MODULE_NAME
|
||||
#language en-US
|
||||
#string STR_PROPERTIES_MODULE_NAME
|
||||
#language en-US
|
||||
"Legacy Video DXE Driver"
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user