Code Scrub the common includes in MdePkg.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5493 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
yshang1 2008-07-16 06:31:22 +00:00
parent f824f71e4b
commit 373b5cf97c
17 changed files with 303 additions and 65 deletions

View File

@ -18,7 +18,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#ifndef _ATAPI_H
#define _ATAPI_H
#pragma pack(push, 1)
#pragma pack(1)
//
// ATA_IDENTIFY_DATA is defined in ATA-5
@ -369,7 +369,7 @@ typedef union {
ATAPI_READ_FORMAT_CAP_CMD ReadFormatCapacity;
} ATAPI_PACKET_COMMAND;
#pragma pack(pop)
#pragma pack()
#define ATAPI_MAX_DMA_EXT_CMD_SECTORS 0x10000

View File

@ -27,7 +27,7 @@
//
#define PCI_VGA_PALETTE_SNOOP_DISABLED 0x20
#pragma pack(push, 1)
#pragma pack(1)
typedef struct {
UINT16 VendorId;
UINT16 DeviceId;
@ -569,6 +569,6 @@ typedef union {
EFI_LEGACY_EXPANSION_ROM_HEADER *PcAt;
} EFI_PCI_ROM_HEADER;
#pragma pack(pop)
#pragma pack()
#endif

View File

@ -18,7 +18,7 @@
#define PCI_CLASS_MASS_STORAGE_SATADPA 0x06
#define PCI_CLASS_MASS_STORAGE_AHCI PCI_CLASS_MASS_STORAGE_SATADPA
#pragma pack(push, 1)
#pragma pack(1)
typedef struct {
UINT32 Signature; // "PCIR"
@ -37,7 +37,7 @@ typedef struct {
UINT16 DMTFCLPEntryPointOffset;
} PCI_3_0_DATA_STRUCTURE;
#pragma pack(pop)
#pragma pack()
#include <IndustryStandard/Pci23.h>

View File

@ -21,9 +21,7 @@
//
// Ensure proper structure formats
//
#ifdef _MSC_EXTENSIONS
#pragma pack(1)
#endif
//
// SPCR Revision (defined in spec)
@ -57,9 +55,7 @@ typedef struct {
UINT32 Reserved2;
} EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE;
#ifdef _MSC_EXTENSIONS
#pragma pack()
#endif
//
// SPCR Definitions

View File

@ -406,13 +406,13 @@ typedef struct tdTPM_KEY_HANDLE_LIST {
//
// Part 2, section 5.10: TPM_KEY_FLAGS
//
enum tdTPM_KEY_FLAGS {
typedef enum tdTPM_KEY_FLAGS {
redirection = 0x00000001,
migratable = 0x00000002,
isVolatile = 0x00000004,
pcrIgnoredOnRead = 0x00000008,
migrateAuthority = 0x00000010
};
} TPM_KEY_FLAGS;
//
// Part 2, section 5.11: TPM_CHANGEAUTH_VALIDATE

View File

@ -61,6 +61,7 @@
**/
EFI_STATUS
EFIAPI
ScsiTestUnitReadyCommand (
IN EFI_SCSI_IO_PROTOCOL *ScsiIo,
IN UINT64 Timeout,
@ -103,6 +104,7 @@ ScsiTestUnitReadyCommand (
**/
EFI_STATUS
EFIAPI
ScsiInquiryCommand (
IN EFI_SCSI_IO_PROTOCOL *ScsiIo,
IN UINT64 Timeout,
@ -150,6 +152,7 @@ ScsiInquiryCommand (
**/
EFI_STATUS
EFIAPI
ScsiModeSense10Command (
IN EFI_SCSI_IO_PROTOCOL *ScsiIo,
IN UINT64 Timeout,
@ -202,6 +205,7 @@ ScsiModeSense10Command (
**/
EFI_STATUS
EFIAPI
ScsiRequestSenseCommand (
IN EFI_SCSI_IO_PROTOCOL *ScsiIo,
IN UINT64 Timeout,
@ -290,6 +294,7 @@ ScsiReadCapacityCommand (
**/
EFI_STATUS
EFIAPI
ScsiRead10Command (
IN EFI_SCSI_IO_PROTOCOL *ScsiIo,
IN UINT64 Timeout,
@ -337,6 +342,7 @@ ScsiRead10Command (
**/
EFI_STATUS
EFIAPI
ScsiWrite10Command (
IN EFI_SCSI_IO_PROTOCOL *ScsiIo,
IN UINT64 Timeout,

View File

@ -23,6 +23,18 @@
//
#define TIMEOUT_VALUE 3 * 1000
/**
Get Hid Descriptor
@param UsbIo EFI_USB_IO_PROTOCOL
@param InterfaceNum Hid interface number
@param HidDescriptor Caller allocated buffer to store Usb hid descriptor if
successfully returned.
@return Status of getting HID descriptor through USB I/O
protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbGetHidDescriptor (
@ -31,6 +43,20 @@ UsbGetHidDescriptor (
OUT EFI_USB_HID_DESCRIPTOR *HidDescriptor
);
/**
get Report Class descriptor
@param UsbIo EFI_USB_IO_PROTOCOL.
@param InterfaceNum Report interface number.
@param DescriptorSize Length of DescriptorBuffer.
@param DescriptorBuffer Caller allocated buffer to store Usb report descriptor
if successfully returned.
@return Status of getting Report Class descriptor through USB
I/O protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbGetReportDescriptor (
@ -40,6 +66,17 @@ UsbGetReportDescriptor (
OUT UINT8 *DescriptorBuffer
);
/**
Get Hid Protocol Request
@param UsbIo EFI_USB_IO_PROTOCOL
@param Interface Which interface the caller wants to get protocol
@param Protocol Protocol value returned.
@return Status of getting Protocol Request through USB I/O
protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbGetProtocolRequest (
@ -48,6 +85,17 @@ UsbGetProtocolRequest (
IN UINT8 *Protocol
);
/**
Set Hid Protocol Request
@param UsbIo EFI_USB_IO_PROTOCOL
@param Interface Which interface the caller wants to set protocol
@param Protocol Protocol value the caller wants to set.
@return Status of setting Protocol Request through USB I/O
protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbSetProtocolRequest (
@ -56,6 +104,18 @@ UsbSetProtocolRequest (
IN UINT8 Protocol
);
/**
Set Idel request.
@param UsbIo EFI_USB_IO_PROTOCOL
@param Interface Which interface the caller wants to set.
@param ReportId Which report the caller wants to set.
@param Duration Idle rate the caller wants to set.
@return Status of setting IDLE Request through USB I/O
protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbSetIdleRequest (
@ -65,6 +125,18 @@ UsbSetIdleRequest (
IN UINT8 Duration
);
/**
Get Idel request.
@param UsbIo EFI_USB_IO_PROTOCOL
@param Interface Which interface the caller wants to get.
@param ReportId Which report the caller wants to get.
@param Duration Idle rate the caller wants to get.
@return Status of getting IDLE Request through USB I/O
protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbGetIdleRequest (
@ -74,6 +146,20 @@ UsbGetIdleRequest (
OUT UINT8 *Duration
);
/**
Hid Set Report request.
@param UsbIo EFI_USB_IO_PROTOCOL
@param Interface Which interface the caller wants to set.
@param ReportId Which report the caller wants to set.
@param ReportType Type of report.
@param ReportLen Length of report descriptor.
@param Report Report Descriptor buffer.
@return Status of setting Report Request through USB I/O
protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbSetReportRequest (
@ -85,6 +171,20 @@ UsbSetReportRequest (
IN UINT8 *Report
);
/**
Hid Set Report request.
@param UsbIo EFI_USB_IO_PROTOCOL
@param Interface Which interface the caller wants to set.
@param ReportId Which report the caller wants to set.
@param ReportType Type of report.
@param ReportLen Length of report descriptor.
@param Report Caller allocated buffer to store Report Descriptor.
@return Status of getting Report Request through USB I/O
protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbGetReportRequest (
@ -96,6 +196,21 @@ UsbGetReportRequest (
IN UINT8 *Report
);
/**
Usb Get Descriptor
@param UsbIo EFI_USB_IO_PROTOCOL
@param Value Device Request Value
@param Index Device Request Index
@param DescriptorLength Descriptor Length
@param Descriptor Descriptor buffer to contain result
@param Status Transfer Status
@retval EFI_INVALID_PARAMETER Parameter is error
@retval EFI_SUCCESS Success
@retval EFI_TIMEOUT Device has no response
**/
EFI_STATUS
UsbGetDescriptor (
IN EFI_USB_IO_PROTOCOL *UsbIo,
@ -106,6 +221,21 @@ UsbGetDescriptor (
OUT UINT32 *Status
);
/**
Usb Set Descriptor
@param UsbIo EFI_USB_IO_PROTOCOL
@param Value Device Request Value
@param Index Device Request Index
@param DescriptorLength Descriptor Length
@param Descriptor Descriptor buffer to set
@param Status Transfer Status
@retval EFI_INVALID_PARAMETER Parameter is error
@retval EFI_SUCCESS Success
@retval EFI_TIMEOUT Device has no response
**/
EFI_STATUS
EFIAPI
UsbSetDescriptor (
@ -117,6 +247,19 @@ UsbSetDescriptor (
OUT UINT32 *Status
);
/**
Usb Get Device Interface
@param UsbIo EFI_USB_IO_PROTOCOL
@param Index Interface index value
@param AltSetting Alternate setting
@param Status Trasnsfer status
@retval EFI_INVALID_PARAMETER Parameter is error
@retval EFI_SUCCESS Success
@retval EFI_TIMEOUT Device has no response
**/
EFI_STATUS
EFIAPI
UsbGetInterface (
@ -126,6 +269,19 @@ UsbGetInterface (
OUT UINT32 *Status
);
/**
Usb Set Device Interface
@param UsbIo EFI_USB_IO_PROTOCOL
@param InterfaceNo Interface Number
@param AltSetting Alternate setting
@param Status Trasnsfer status
@retval EFI_INVALID_PARAMETER Parameter is error
@retval EFI_SUCCESS Success
@retval EFI_TIMEOUT Device has no response
**/
EFI_STATUS
EFIAPI
UsbSetInterface (
@ -135,6 +291,18 @@ UsbSetInterface (
OUT UINT32 *Status
);
/**
Usb Get Device Configuration
@param UsbIo EFI_USB_IO_PROTOCOL
@param ConfigValue Config Value
@param Status Transfer Status
@retval EFI_INVALID_PARAMETER Parameter is error
@retval EFI_SUCCESS Success
@retval EFI_TIMEOUT Device has no response
**/
EFI_STATUS
EFIAPI
UsbGetConfiguration (
@ -143,6 +311,18 @@ UsbGetConfiguration (
OUT UINT32 *Status
);
/**
Usb Set Device Configuration
@param UsbIo EFI_USB_IO_PROTOCOL
@param Value Configuration Value to set
@param Status Transfer status
@retval EFI_INVALID_PARAMETER Parameter is error
@retval EFI_SUCCESS Success
@retval EFI_TIMEOUT Device has no response
**/
EFI_STATUS
EFIAPI
UsbSetConfiguration (
@ -151,6 +331,20 @@ UsbSetConfiguration (
OUT UINT32 *Status
);
/**
Usb Set Device Feature
@param UsbIo EFI_USB_IO_PROTOCOL
@param Recipient Interface/Device/Endpoint
@param Value Request value
@param Target Request Index
@param Status Transfer status
@retval EFI_INVALID_PARAMETER Parameter is error
@retval EFI_SUCCESS Success
@retval EFI_TIMEOUT Device has no response
**/
EFI_STATUS
EFIAPI
UsbSetFeature (
@ -161,6 +355,20 @@ UsbSetFeature (
OUT UINT32 *Status
);
/**
Usb Clear Device Feature
@param UsbIo EFI_USB_IO_PROTOCOL
@param Recipient Interface/Device/Endpoint
@param Value Request value
@param Target Request Index
@param Status Transfer status
@retval EFI_INVALID_PARAMETER Parameter is error
@retval EFI_SUCCESS Success
@retval EFI_TIMEOUT Device has no response
**/
EFI_STATUS
EFIAPI
UsbClearFeature (
@ -171,6 +379,20 @@ UsbClearFeature (
OUT UINT32 *Status
);
/**
Usb Get Device Status
@param UsbIo EFI_USB_IO_PROTOCOL
@param Recipient Interface/Device/Endpoint
@param Target Request index
@param DevStatus Device status
@param Status Transfer status
@retval EFI_INVALID_PARAMETER Parameter is error
@retval EFI_SUCCESS Success
@retval EFI_TIMEOUT Device has no response
**/
EFI_STATUS
EFIAPI
UsbGetStatus (
@ -181,9 +403,18 @@ UsbGetStatus (
OUT UINT32 *Status
);
//
// Clear endpoint stall
//
/**
Clear endpoint stall
@param UsbIo EFI_USB_IO_PROTOCOL
@param EndpointNo Endpoint Number
@param Status Transfer Status
@retval EFI_NOT_FOUND Can't find the Endpoint
@retval EFI_DEVICE_ERROR Hardware error
@retval EFI_SUCCESS Success
**/
EFI_STATUS
EFIAPI
UsbClearEndpointHalt (

View File

@ -416,7 +416,7 @@ EFI_STATUS
/**
Loads and executed DXE drivers from firmware volumes.
@return Status code
@return Status of dispatching and execution DXE drivers.
**/
typedef
@ -432,7 +432,7 @@ EFI_STATUS
@param FirmwareVolumeHandle The handle of the firmware volume that contains the file specified by FileName.
@param DriverName A pointer to the name of the file in a firmware volume.
@return Status code
@return Status of clearing SOR.
**/
typedef
@ -449,7 +449,8 @@ EFI_STATUS
@param FirmwareVolumeHandle The handle of the firmware volume that contains the file specified by FileName.
@param DriverName A pointer to the name of the file in a firmware volume.
@return Status code
@return Status of promoting FFS from untrusted to trusted
state.
**/
typedef
@ -467,7 +468,7 @@ EFI_STATUS
@param Size The size, in bytes, of the firmware volume.
@param FirmwareVolumeHandle On output, a pointer to the created handle.
@return Status code
@return Status of processing FV.
**/
typedef

View File

@ -52,7 +52,8 @@ typedef struct _EFI_PEI_NOTIFY_DESCRIPTOR EFI_PEI_NOTIFY_DESCRIPTOR;
@param FileHandle Pointer to the FFS file header.
@param PeiServices Describes the list of possible PEI Services.
@return Status code
@retval EFI_SUCCESS The PEI completed successfully.
@retval !EFI_SUCCESS There is error in PEIM.
**/
typedef
@ -69,7 +70,7 @@ EFI_STATUS
@param NotifyDescriptor Address of the notification descriptor data structure.
@param Ppi Address of the PPI that was installed.
@return Status code
@return Status of the notification.
**/
typedef
EFI_STATUS
@ -427,8 +428,6 @@ EFI_STATUS
@param Source Pointer to the source buffer of the memory copy
@param Length Number of bytes to copy from Source to Destination.
@return None
**/
typedef
VOID
@ -445,8 +444,6 @@ VOID
@param Size Number of bytes in Buffer to fill.
@param Value Value to fill Buffer with
@return None
**/
typedef
VOID
@ -528,7 +525,6 @@ EFI_STATUS
@retval EFI_INVALID_PARAMETER VolumeHandle or FileHandle or
FileName was NULL.
**/
typedef
EFI_STATUS

View File

@ -50,8 +50,6 @@ CONST EFI_PEI_FIRMWARE_VOLUME_INFO_PPI mFvInfoPpiTemplate = {
parent firmware volume name and firmware volume file. If it did not originally come
from a firmware file, these should be NULL
@retval VOID
**/
VOID
EFIAPI

View File

@ -23,7 +23,8 @@
base addres is used to save the EFI_PEI_SERVICES**.
For x64, the eight-bytes field immediately prior to new IDT
base addres is used to save the EFI_PEI_SERVICES**
@retval The pointer to PeiServices.
@return The pointer to PeiServices.
**/
EFI_PEI_SERVICES **
@ -43,14 +44,15 @@ GetPeiServicesTablePointer (
/**
The function returns the pointer to PeiServicee following
The function sets the pointer to PeiServicee following
PI1.0.
For IA32, the four-bytes field immediately prior to new IDT
base addres is used to save the EFI_PEI_SERVICES**.
For x64, the eight-bytes field immediately prior to new IDT
base addres is used to save the EFI_PEI_SERVICES**
@retval The pointer to PeiServices.
@param PeiServicesTablePointer The pointer to PeiServices.
**/
VOID

View File

@ -23,7 +23,7 @@
The function returns the pointer to PeiServices.
It will ASSERT() if the pointer to PeiServices is NULL.
@retval The pointer to PeiServices.
@return The pointer to PeiServices.
**/
EFI_PEI_SERVICES **

View File

@ -72,8 +72,6 @@ _ModuleEntryPoint (
@param Status Status returned by the application that is exiting.
@retval VOID
**/
VOID
EFIAPI

View File

@ -28,12 +28,11 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
protocols produced and deallocates pool used by the driver. Called by the core
when unloading the driver.
@param ImageHandle
@param ImageHandle ImageHandle of the loaded driver.
@retval EFI_SUCCESS
@return Status returned by all unload().
**/
STATIC
EFI_STATUS
EFIAPI
_DriverUnloadHandler (

View File

@ -52,6 +52,7 @@
**/
EFI_STATUS
EFIAPI
ScsiTestUnitReadyCommand (
IN EFI_SCSI_IO_PROTOCOL *ScsiIo,
IN UINT64 Timeout,
@ -140,6 +141,7 @@ ScsiTestUnitReadyCommand (
**/
EFI_STATUS
EFIAPI
ScsiInquiryCommand (
IN EFI_SCSI_IO_PROTOCOL *ScsiIo,
IN UINT64 Timeout,
@ -241,6 +243,7 @@ ScsiInquiryCommand (
**/
EFI_STATUS
EFIAPI
ScsiModeSense10Command (
IN EFI_SCSI_IO_PROTOCOL *ScsiIo,
IN UINT64 Timeout,
@ -337,6 +340,7 @@ ScsiModeSense10Command (
**/
EFI_STATUS
EFIAPI
ScsiRequestSenseCommand (
IN EFI_SCSI_IO_PROTOCOL *ScsiIo,
IN UINT64 Timeout,
@ -426,6 +430,7 @@ ScsiRequestSenseCommand (
**/
EFI_STATUS
EFIAPI
ScsiReadCapacityCommand (
IN EFI_SCSI_IO_PROTOCOL *ScsiIo,
IN UINT64 Timeout,
@ -528,6 +533,7 @@ ScsiReadCapacityCommand (
**/
EFI_STATUS
EFIAPI
ScsiRead10Command (
IN EFI_SCSI_IO_PROTOCOL *ScsiIo,
IN UINT64 Timeout,
@ -629,6 +635,7 @@ ScsiRead10Command (
**/
EFI_STATUS
EFIAPI
ScsiWrite10Command (
IN EFI_SCSI_IO_PROTOCOL *ScsiIo,
IN UINT64 Timeout,
@ -694,3 +701,4 @@ ScsiWrite10Command (
return Status;
}

View File

@ -24,12 +24,12 @@
@param HidDescriptor Caller allocated buffer to store Usb hid descriptor if
successfully returned.
@return EFI_SUCCESS
@return EFI_DEVICE_ERROR
@return EFI_TIMEOUT
@return Status of getting HID descriptor through USB I/O
protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbGetHidDescriptor (
IN EFI_USB_IO_PROTOCOL *UsbIo,
IN UINT8 InterfaceNum,
@ -73,12 +73,12 @@ UsbGetHidDescriptor (
@param DescriptorBuffer Caller allocated buffer to store Usb report descriptor
if successfully returned.
@return EFI_SUCCESS
@return EFI_DEVICE_ERROR
@return EFI_TIMEOUT
@return Status of getting Report Class descriptor through USB
I/O protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbGetReportDescriptor (
IN EFI_USB_IO_PROTOCOL *UsbIo,
IN UINT8 InterfaceNum,
@ -117,18 +117,18 @@ UsbGetReportDescriptor (
}
/**
Get Hid Protocol Request.
Get Hid Protocol Request
@param UsbIo EFI_USB_IO_PROTOCOL.
@param Interface Which interface the caller wants to get protocol.
@param Interface Which interface the caller wants to get protocol
@param Protocol Protocol value returned.
@return EFI_SUCCESS
@return EFI_DEVICE_ERROR
@return EFI_TIMEOUT
@return Status of getting Protocol Request through USB I/O
protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbGetProtocolRequest (
IN EFI_USB_IO_PROTOCOL *UsbIo,
IN UINT8 Interface,
@ -168,19 +168,21 @@ UsbGetProtocolRequest (
}
/**
Set Hid Protocol Request.
@param UsbIo EFI_USB_IO_PROTOCOL.
@param Interface Which interface the caller wants to set protocol.
@param Interface Which interface the caller wants to
set protocol.
@param Protocol Protocol value the caller wants to set.
@return EFI_SUCCESS
@return EFI_DEVICE_ERROR
@return EFI_TIMEOUT
@return Status of setting Protocol Request through USB I/O
protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbSetProtocolRequest (
IN EFI_USB_IO_PROTOCOL *UsbIo,
IN UINT8 Interface,
@ -227,12 +229,12 @@ UsbSetProtocolRequest (
@param ReportId Which report the caller wants to set.
@param Duration Idle rate the caller wants to set.
@return EFI_SUCCESS
@return EFI_DEVICE_ERROR
@return EFI_TIMEOUT
@return Status of setting IDLE Request through USB I/O
protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbSetIdleRequest (
IN EFI_USB_IO_PROTOCOL *UsbIo,
IN UINT8 Interface,
@ -280,12 +282,12 @@ UsbSetIdleRequest (
@param ReportId Which report the caller wants to get.
@param Duration Idle rate the caller wants to get.
@return EFI_SUCCESS
@return EFI_DEVICE_ERROR
@return EFI_TIMEOUT
@return Status of getting IDLE Request through USB I/O
protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbGetIdleRequest (
IN EFI_USB_IO_PROTOCOL *UsbIo,
IN UINT8 Interface,
@ -326,6 +328,7 @@ UsbGetIdleRequest (
}
/**
Hid Set Report request.
@ -336,12 +339,12 @@ UsbGetIdleRequest (
@param ReportLen Length of report descriptor.
@param Report Report Descriptor buffer.
@return EFI_SUCCESS
@return EFI_DEVICE_ERROR
@return EFI_TIMEOUT
@return Status of setting Report Request through USB I/O
protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbSetReportRequest (
IN EFI_USB_IO_PROTOCOL *UsbIo,
IN UINT8 Interface,
@ -394,12 +397,12 @@ UsbSetReportRequest (
@param ReportLen Length of report descriptor.
@param Report Caller allocated buffer to store Report Descriptor.
@return EFI_SUCCESS
@return EFI_DEVICE_ERROR
@return EFI_TIMEOUT
@return Status of getting Report Request through USB I/O
protocol's UsbControlTransfer().
**/
EFI_STATUS
EFIAPI
UsbGetReportRequest (
IN EFI_USB_IO_PROTOCOL *UsbIo,
IN UINT8 Interface,