mirror of https://github.com/acidanthera/audk.git
Fix the wrong checking for UnixSerialIo
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2604 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
d84d8834a3
commit
d756d2e739
|
@ -17,14 +17,14 @@ Abstract:
|
||||||
|
|
||||||
--*/
|
--*/
|
||||||
|
|
||||||
#include "UnixSerialIo.h"
|
#include "WinNtSerialIo.h"
|
||||||
|
|
||||||
//
|
//
|
||||||
// EFI Component Name Functions
|
// EFI Component Name Functions
|
||||||
//
|
//
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
EFIAPI
|
EFIAPI
|
||||||
UnixSerialIoComponentNameGetDriverName (
|
WinNtSerialIoComponentNameGetDriverName (
|
||||||
IN EFI_COMPONENT_NAME_PROTOCOL *This,
|
IN EFI_COMPONENT_NAME_PROTOCOL *This,
|
||||||
IN CHAR8 *Language,
|
IN CHAR8 *Language,
|
||||||
OUT CHAR16 **DriverName
|
OUT CHAR16 **DriverName
|
||||||
|
@ -32,7 +32,7 @@ UnixSerialIoComponentNameGetDriverName (
|
||||||
|
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
EFIAPI
|
EFIAPI
|
||||||
UnixSerialIoComponentNameGetControllerName (
|
WinNtSerialIoComponentNameGetControllerName (
|
||||||
IN EFI_COMPONENT_NAME_PROTOCOL *This,
|
IN EFI_COMPONENT_NAME_PROTOCOL *This,
|
||||||
IN EFI_HANDLE ControllerHandle,
|
IN EFI_HANDLE ControllerHandle,
|
||||||
IN EFI_HANDLE ChildHandle OPTIONAL,
|
IN EFI_HANDLE ChildHandle OPTIONAL,
|
||||||
|
@ -43,20 +43,20 @@ UnixSerialIoComponentNameGetControllerName (
|
||||||
//
|
//
|
||||||
// EFI Component Name Protocol
|
// EFI Component Name Protocol
|
||||||
//
|
//
|
||||||
EFI_COMPONENT_NAME_PROTOCOL gUnixSerialIoComponentName = {
|
EFI_COMPONENT_NAME_PROTOCOL gWinNtSerialIoComponentName = {
|
||||||
UnixSerialIoComponentNameGetDriverName,
|
WinNtSerialIoComponentNameGetDriverName,
|
||||||
UnixSerialIoComponentNameGetControllerName,
|
WinNtSerialIoComponentNameGetControllerName,
|
||||||
"eng"
|
"eng"
|
||||||
};
|
};
|
||||||
|
|
||||||
static EFI_UNICODE_STRING_TABLE mUnixSerialIoDriverNameTable[] = {
|
static EFI_UNICODE_STRING_TABLE mWinNtSerialIoDriverNameTable[] = {
|
||||||
{ "eng", L"Unix Serial I/O Driver" },
|
{ "eng", L"Windows Serial I/O Driver" },
|
||||||
{ NULL , NULL }
|
{ NULL , NULL }
|
||||||
};
|
};
|
||||||
|
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
EFIAPI
|
EFIAPI
|
||||||
UnixSerialIoComponentNameGetDriverName (
|
WinNtSerialIoComponentNameGetDriverName (
|
||||||
IN EFI_COMPONENT_NAME_PROTOCOL *This,
|
IN EFI_COMPONENT_NAME_PROTOCOL *This,
|
||||||
IN CHAR8 *Language,
|
IN CHAR8 *Language,
|
||||||
OUT CHAR16 **DriverName
|
OUT CHAR16 **DriverName
|
||||||
|
@ -90,15 +90,15 @@ UnixSerialIoComponentNameGetDriverName (
|
||||||
{
|
{
|
||||||
return LookupUnicodeString (
|
return LookupUnicodeString (
|
||||||
Language,
|
Language,
|
||||||
gUnixSerialIoComponentName.SupportedLanguages,
|
gWinNtSerialIoComponentName.SupportedLanguages,
|
||||||
mUnixSerialIoDriverNameTable,
|
mWinNtSerialIoDriverNameTable,
|
||||||
DriverName
|
DriverName
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
EFIAPI
|
EFIAPI
|
||||||
UnixSerialIoComponentNameGetControllerName (
|
WinNtSerialIoComponentNameGetControllerName (
|
||||||
IN EFI_COMPONENT_NAME_PROTOCOL *This,
|
IN EFI_COMPONENT_NAME_PROTOCOL *This,
|
||||||
IN EFI_HANDLE ControllerHandle,
|
IN EFI_HANDLE ControllerHandle,
|
||||||
IN EFI_HANDLE ChildHandle OPTIONAL,
|
IN EFI_HANDLE ChildHandle OPTIONAL,
|
||||||
|
@ -152,15 +152,15 @@ UnixSerialIoComponentNameGetControllerName (
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
EFI_SERIAL_IO_PROTOCOL *SerialIo;
|
EFI_SERIAL_IO_PROTOCOL *SerialIo;
|
||||||
UNIX_SERIAL_IO_PRIVATE_DATA *Private;
|
WIN_NT_SERIAL_IO_PRIVATE_DATA *Private;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Make sure this driver is currently managing ControllHandle
|
// Make sure this driver is currently managing ControllHandle
|
||||||
//
|
//
|
||||||
Status = EfiTestManagedDevice (
|
Status = EfiTestManagedDevice (
|
||||||
ControllerHandle,
|
ControllerHandle,
|
||||||
gUnixSerialIoDriverBinding.DriverBindingHandle,
|
gWinNtSerialIoDriverBinding.DriverBindingHandle,
|
||||||
&gEfiUnixIoProtocolGuid
|
&gEfiWinNtIoProtocolGuid
|
||||||
);
|
);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return Status;
|
return Status;
|
||||||
|
@ -176,7 +176,7 @@ UnixSerialIoComponentNameGetControllerName (
|
||||||
Status = EfiTestChildHandle (
|
Status = EfiTestChildHandle (
|
||||||
ControllerHandle,
|
ControllerHandle,
|
||||||
ChildHandle,
|
ChildHandle,
|
||||||
&gEfiUnixIoProtocolGuid
|
&gEfiWinNtIoProtocolGuid
|
||||||
);
|
);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return Status;
|
return Status;
|
||||||
|
@ -188,8 +188,8 @@ UnixSerialIoComponentNameGetControllerName (
|
||||||
Status = gBS->OpenProtocol (
|
Status = gBS->OpenProtocol (
|
||||||
ChildHandle,
|
ChildHandle,
|
||||||
&gEfiSerialIoProtocolGuid,
|
&gEfiSerialIoProtocolGuid,
|
||||||
(VOID**)&SerialIo,
|
&SerialIo,
|
||||||
gUnixSerialIoDriverBinding.DriverBindingHandle,
|
gWinNtSerialIoDriverBinding.DriverBindingHandle,
|
||||||
ChildHandle,
|
ChildHandle,
|
||||||
EFI_OPEN_PROTOCOL_GET_PROTOCOL
|
EFI_OPEN_PROTOCOL_GET_PROTOCOL
|
||||||
);
|
);
|
||||||
|
@ -197,11 +197,11 @@ UnixSerialIoComponentNameGetControllerName (
|
||||||
return EFI_UNSUPPORTED;
|
return EFI_UNSUPPORTED;
|
||||||
}
|
}
|
||||||
|
|
||||||
Private = UNIX_SERIAL_IO_PRIVATE_DATA_FROM_THIS (SerialIo);
|
Private = WIN_NT_SERIAL_IO_PRIVATE_DATA_FROM_THIS (SerialIo);
|
||||||
|
|
||||||
return LookupUnicodeString (
|
return LookupUnicodeString (
|
||||||
Language,
|
Language,
|
||||||
gUnixSerialIoComponentName.SupportedLanguages,
|
gWinNtSerialIoComponentName.SupportedLanguages,
|
||||||
Private->ControllerNameTable,
|
Private->ControllerNameTable,
|
||||||
ControllerName
|
ControllerName
|
||||||
);
|
);
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,507 +0,0 @@
|
||||||
/*++
|
|
||||||
|
|
||||||
Copyright (c) 2006, Intel Corporation
|
|
||||||
All rights reserved. This program and the accompanying materials
|
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
|
||||||
http://opensource.org/licenses/bsd-license.php
|
|
||||||
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|
||||||
|
|
||||||
Module Name:
|
|
||||||
|
|
||||||
UnixSerialIo.h
|
|
||||||
|
|
||||||
Abstract:
|
|
||||||
|
|
||||||
|
|
||||||
--*/
|
|
||||||
|
|
||||||
#ifndef _UNIXPKG_SERIAL_IO_
|
|
||||||
#define _UNIXPKG_SERIAL_IO_
|
|
||||||
#include <sys/types.h>
|
|
||||||
#include <sys/stat.h>
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <stdlib.h>
|
|
||||||
#include <termio.h>
|
|
||||||
#include <fcntl.h>
|
|
||||||
#include <errno.h>
|
|
||||||
|
|
||||||
#define SERIAL_MAX_BUFFER_SIZE 256
|
|
||||||
#define TIMEOUT_STALL_INTERVAL 10
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
UINT32 First;
|
|
||||||
UINT32 Last;
|
|
||||||
UINT32 Surplus;
|
|
||||||
UINT8 Data[SERIAL_MAX_BUFFER_SIZE];
|
|
||||||
} SERIAL_DEV_FIFO;
|
|
||||||
|
|
||||||
#define UNIX_SERIAL_IO_PRIVATE_DATA_SIGNATURE EFI_SIGNATURE_32 ('U', 'N', 's', 'i')
|
|
||||||
typedef struct {
|
|
||||||
UINT64 Signature;
|
|
||||||
|
|
||||||
//
|
|
||||||
// Protocol data for the new handle we are going to add
|
|
||||||
//
|
|
||||||
EFI_HANDLE Handle;
|
|
||||||
EFI_SERIAL_IO_PROTOCOL SerialIo;
|
|
||||||
EFI_SERIAL_IO_MODE SerialIoMode;
|
|
||||||
EFI_DEVICE_PATH_PROTOCOL *DevicePath;
|
|
||||||
|
|
||||||
//
|
|
||||||
// Private Data
|
|
||||||
//
|
|
||||||
EFI_HANDLE ControllerHandle;
|
|
||||||
EFI_DEVICE_PATH_PROTOCOL *ParentDevicePath;
|
|
||||||
UART_DEVICE_PATH UartDevicePath;
|
|
||||||
EFI_UNIX_THUNK_PROTOCOL *UnixThunk;
|
|
||||||
|
|
||||||
EFI_UNICODE_STRING_TABLE *ControllerNameTable;
|
|
||||||
|
|
||||||
//
|
|
||||||
// Private NT type Data;
|
|
||||||
//
|
|
||||||
UINTN UnixHandle;
|
|
||||||
struct termios UnixTermios;
|
|
||||||
|
|
||||||
BOOLEAN SoftwareLoopbackEnable;
|
|
||||||
BOOLEAN HardwareFlowControl;
|
|
||||||
BOOLEAN HardwareLoopbackEnable;
|
|
||||||
|
|
||||||
SERIAL_DEV_FIFO Fifo;
|
|
||||||
|
|
||||||
} UNIX_SERIAL_IO_PRIVATE_DATA;
|
|
||||||
|
|
||||||
#define UNIX_SERIAL_IO_PRIVATE_DATA_FROM_THIS(a) \
|
|
||||||
CR(a, UNIX_SERIAL_IO_PRIVATE_DATA, SerialIo, UNIX_SERIAL_IO_PRIVATE_DATA_SIGNATURE)
|
|
||||||
|
|
||||||
//
|
|
||||||
// Global Protocol Variables
|
|
||||||
//
|
|
||||||
extern EFI_DRIVER_BINDING_PROTOCOL gUnixSerialIoDriverBinding;
|
|
||||||
extern EFI_COMPONENT_NAME_PROTOCOL gUnixSerialIoComponentName;
|
|
||||||
|
|
||||||
//
|
|
||||||
// Macros to convert EFI serial types to NT serial types.
|
|
||||||
//
|
|
||||||
|
|
||||||
//
|
|
||||||
// one second
|
|
||||||
//
|
|
||||||
#define SERIAL_TIMEOUT_DEFAULT (1000 * 1000)
|
|
||||||
#define SERIAL_BAUD_DEFAULT 115200
|
|
||||||
#define SERIAL_FIFO_DEFAULT 14
|
|
||||||
#define SERIAL_DATABITS_DEFAULT 8
|
|
||||||
#define SERIAL_PARITY_DEFAULT DefaultParity
|
|
||||||
#define SERIAL_STOPBITS_DEFAULT DefaultStopBits
|
|
||||||
|
|
||||||
#define SERIAL_CONTROL_MASK (EFI_SERIAL_CLEAR_TO_SEND | \
|
|
||||||
EFI_SERIAL_DATA_SET_READY | \
|
|
||||||
EFI_SERIAL_RING_INDICATE | \
|
|
||||||
EFI_SERIAL_CARRIER_DETECT | \
|
|
||||||
EFI_SERIAL_REQUEST_TO_SEND | \
|
|
||||||
EFI_SERIAL_DATA_TERMINAL_READY | \
|
|
||||||
EFI_SERIAL_INPUT_BUFFER_EMPTY)
|
|
||||||
|
|
||||||
#define ConvertBaud2Nt(x) (DWORD) x
|
|
||||||
#define ConvertData2Nt(x) (BYTE) x
|
|
||||||
|
|
||||||
#define ConvertParity2Nt(x) \
|
|
||||||
(BYTE) ( \
|
|
||||||
x == DefaultParity ? NOPARITY : \
|
|
||||||
x == NoParity ? NOPARITY : \
|
|
||||||
x == EvenParity ? EVENPARITY : \
|
|
||||||
x == OddParity ? ODDPARITY : \
|
|
||||||
x == MarkParity ? MARKPARITY : \
|
|
||||||
x == SpaceParity ? SPACEPARITY : 0 \
|
|
||||||
)
|
|
||||||
|
|
||||||
#define ConvertStop2Nt(x) \
|
|
||||||
(BYTE) ( \
|
|
||||||
x == DefaultParity ? ONESTOPBIT : \
|
|
||||||
x == OneFiveStopBits ? ONE5STOPBITS : \
|
|
||||||
x == TwoStopBits ? TWOSTOPBITS : 0 \
|
|
||||||
)
|
|
||||||
|
|
||||||
#define ConvertTime2Nt(x) ((x) / 1000)
|
|
||||||
|
|
||||||
//
|
|
||||||
// 115400 baud with rounding errors
|
|
||||||
//
|
|
||||||
#define SERIAL_PORT_MAX_BAUD_RATE 115400
|
|
||||||
|
|
||||||
//
|
|
||||||
// Function Prototypes
|
|
||||||
//
|
|
||||||
EFI_STATUS
|
|
||||||
EFIAPI
|
|
||||||
InitializeUnixSerialIo (
|
|
||||||
IN EFI_HANDLE ImageHandle,
|
|
||||||
IN EFI_SYSTEM_TABLE *SystemTable
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
ImageHandle - TODO: add argument description
|
|
||||||
SystemTable - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
EFIAPI
|
|
||||||
UnixSerialIoDriverBindingSupported (
|
|
||||||
IN EFI_DRIVER_BINDING_PROTOCOL *This,
|
|
||||||
IN EFI_HANDLE Handle,
|
|
||||||
IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
This - TODO: add argument description
|
|
||||||
Handle - TODO: add argument description
|
|
||||||
RemainingDevicePath - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
EFIAPI
|
|
||||||
UnixSerialIoDriverBindingStart (
|
|
||||||
IN EFI_DRIVER_BINDING_PROTOCOL *This,
|
|
||||||
IN EFI_HANDLE Handle,
|
|
||||||
IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
This - TODO: add argument description
|
|
||||||
Handle - TODO: add argument description
|
|
||||||
RemainingDevicePath - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
EFIAPI
|
|
||||||
UnixSerialIoDriverBindingStop (
|
|
||||||
IN EFI_DRIVER_BINDING_PROTOCOL *This,
|
|
||||||
IN EFI_HANDLE Handle,
|
|
||||||
IN UINTN NumberOfChildren,
|
|
||||||
IN EFI_HANDLE *ChildHandleBuffer
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
This - TODO: add argument description
|
|
||||||
Handle - TODO: add argument description
|
|
||||||
NumberOfChildren - TODO: add argument description
|
|
||||||
ChildHandleBuffer - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
EFIAPI
|
|
||||||
UnixSerialIoReset (
|
|
||||||
IN EFI_SERIAL_IO_PROTOCOL *This
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
This - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
EFIAPI
|
|
||||||
UnixSerialIoSetAttributes (
|
|
||||||
IN EFI_SERIAL_IO_PROTOCOL *This,
|
|
||||||
IN UINT64 BaudRate,
|
|
||||||
IN UINT32 ReceiveFifoDepth,
|
|
||||||
IN UINT32 Timeout,
|
|
||||||
IN EFI_PARITY_TYPE Parity,
|
|
||||||
IN UINT8 DataBits,
|
|
||||||
IN EFI_STOP_BITS_TYPE StopBits
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
This - TODO: add argument description
|
|
||||||
BaudRate - TODO: add argument description
|
|
||||||
ReceiveFifoDepth - TODO: add argument description
|
|
||||||
Timeout - TODO: add argument description
|
|
||||||
Parity - TODO: add argument description
|
|
||||||
DataBits - TODO: add argument description
|
|
||||||
StopBits - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
EFIAPI
|
|
||||||
UnixSerialIoSetControl (
|
|
||||||
IN EFI_SERIAL_IO_PROTOCOL *This,
|
|
||||||
IN UINT32 Control
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
This - TODO: add argument description
|
|
||||||
Control - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
EFIAPI
|
|
||||||
UnixSerialIoGetControl (
|
|
||||||
IN EFI_SERIAL_IO_PROTOCOL *This,
|
|
||||||
OUT UINT32 *Control
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
This - TODO: add argument description
|
|
||||||
Control - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
EFIAPI
|
|
||||||
UnixSerialIoWrite (
|
|
||||||
IN EFI_SERIAL_IO_PROTOCOL *This,
|
|
||||||
IN OUT UINTN *BufferSize,
|
|
||||||
IN VOID *Buffer
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
This - TODO: add argument description
|
|
||||||
BufferSize - TODO: add argument description
|
|
||||||
Buffer - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
EFIAPI
|
|
||||||
UnixSerialIoRead (
|
|
||||||
IN EFI_SERIAL_IO_PROTOCOL *This,
|
|
||||||
IN OUT UINTN *BufferSize,
|
|
||||||
OUT VOID *Buffer
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
This - TODO: add argument description
|
|
||||||
BufferSize - TODO: add argument description
|
|
||||||
Buffer - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
BOOLEAN
|
|
||||||
IsaSerialFifoFull (
|
|
||||||
IN SERIAL_DEV_FIFO *Fifo
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
Fifo - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
BOOLEAN
|
|
||||||
IsaSerialFifoEmpty (
|
|
||||||
IN SERIAL_DEV_FIFO *Fifo
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
Fifo - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
IsaSerialFifoAdd (
|
|
||||||
IN SERIAL_DEV_FIFO *Fifo,
|
|
||||||
IN UINT8 Data
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
Fifo - TODO: add argument description
|
|
||||||
Data - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
IsaSerialFifoRemove (
|
|
||||||
IN SERIAL_DEV_FIFO *Fifo,
|
|
||||||
OUT UINT8 *Data
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
Fifo - TODO: add argument description
|
|
||||||
Data - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
IsaSerialReceiveTransmit (
|
|
||||||
UNIX_SERIAL_IO_PRIVATE_DATA *Private
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
TODO: Add function description
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
Private - TODO: add argument description
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
TODO: add return values
|
|
||||||
|
|
||||||
--*/
|
|
||||||
;
|
|
||||||
|
|
||||||
#endif
|
|
|
@ -1,87 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
||||||
<MsaHeader>
|
|
||||||
<ModuleName>UnixSerialIo</ModuleName>
|
|
||||||
<ModuleType>UEFI_DRIVER</ModuleType>
|
|
||||||
<GuidValue>600F2BF2-63A7-48ca-9FD0-A3450B87EE05</GuidValue>
|
|
||||||
<Version>1.0</Version>
|
|
||||||
<Abstract>Serial I/O driver</Abstract>
|
|
||||||
<Description>Our DriverBinding member functions operate on the handles
|
|
||||||
created by the Unix Bus driver</Description>
|
|
||||||
<Copyright>Copyright (c) 2006 - 2007, Intel Corporation</Copyright>
|
|
||||||
<License>All rights reserved. This program and the accompanying materials
|
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
|
||||||
http://opensource.org/licenses/bsd-license.php
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.</License>
|
|
||||||
<Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052</Specification>
|
|
||||||
</MsaHeader>
|
|
||||||
<ModuleDefinitions>
|
|
||||||
<SupportedArchitectures>IA32</SupportedArchitectures>
|
|
||||||
<BinaryModule>false</BinaryModule>
|
|
||||||
<OutputFileBasename>UnixSerialIo</OutputFileBasename>
|
|
||||||
</ModuleDefinitions>
|
|
||||||
<LibraryClassDefinitions>
|
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
||||||
<Keyword>DebugLib</Keyword>
|
|
||||||
</LibraryClass>
|
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
||||||
<Keyword>BaseLib</Keyword>
|
|
||||||
</LibraryClass>
|
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
||||||
<Keyword>UefiDriverModelLib</Keyword>
|
|
||||||
</LibraryClass>
|
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
||||||
<Keyword>UefiDriverEntryPoint</Keyword>
|
|
||||||
</LibraryClass>
|
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
||||||
<Keyword>UefiLib</Keyword>
|
|
||||||
</LibraryClass>
|
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
||||||
<Keyword>BaseMemoryLib</Keyword>
|
|
||||||
</LibraryClass>
|
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
||||||
<Keyword>UefiBootServicesTableLib</Keyword>
|
|
||||||
</LibraryClass>
|
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
||||||
<Keyword>DevicePathLib</Keyword>
|
|
||||||
</LibraryClass>
|
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
||||||
<Keyword>MemoryAllocationLib</Keyword>
|
|
||||||
</LibraryClass>
|
|
||||||
</LibraryClassDefinitions>
|
|
||||||
<SourceFiles>
|
|
||||||
<Filename>UnixSerialIo.h</Filename>
|
|
||||||
<Filename>UnixSerialIo.c</Filename>
|
|
||||||
<Filename>ComponentName.c</Filename>
|
|
||||||
</SourceFiles>
|
|
||||||
<PackageDependencies>
|
|
||||||
<Package PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
|
|
||||||
<Package PackageGuid="f2805c44-8985-11db-9e98-0040d02b1835"/>
|
|
||||||
</PackageDependencies>
|
|
||||||
<Protocols>
|
|
||||||
<Protocol Usage="TO_START">
|
|
||||||
<ProtocolCName>gEfiUnixIoProtocolGuid</ProtocolCName>
|
|
||||||
</Protocol>
|
|
||||||
<Protocol Usage="TO_START">
|
|
||||||
<ProtocolCName>gEfiDevicePathProtocolGuid</ProtocolCName>
|
|
||||||
</Protocol>
|
|
||||||
<Protocol Usage="BY_START">
|
|
||||||
<ProtocolCName>gEfiSerialIoProtocolGuid</ProtocolCName>
|
|
||||||
</Protocol>
|
|
||||||
</Protocols>
|
|
||||||
<Guids>
|
|
||||||
<GuidCNames Usage="ALWAYS_CONSUMED">
|
|
||||||
<GuidCName>gEfiUnixSerialPortGuid</GuidCName>
|
|
||||||
</GuidCNames>
|
|
||||||
</Guids>
|
|
||||||
<Externs>
|
|
||||||
<Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification>
|
|
||||||
<Specification>EDK_RELEASE_VERSION 0x00020000</Specification>
|
|
||||||
<Extern>
|
|
||||||
<DriverBinding>gUnixSerialIoDriverBinding</DriverBinding>
|
|
||||||
<ComponentName>gUnixSerialIoComponentName</ComponentName>
|
|
||||||
</Extern>
|
|
||||||
</Externs>
|
|
||||||
</ModuleSurfaceArea>
|
|
Loading…
Reference in New Issue