summaryrefslogtreecommitdiff
path: root/Core/EM/usb/int13/UsbInt13.h
diff options
context:
space:
mode:
Diffstat (limited to 'Core/EM/usb/int13/UsbInt13.h')
-rw-r--r--Core/EM/usb/int13/UsbInt13.h178
1 files changed, 178 insertions, 0 deletions
diff --git a/Core/EM/usb/int13/UsbInt13.h b/Core/EM/usb/int13/UsbInt13.h
new file mode 100644
index 0000000..eb05b02
--- /dev/null
+++ b/Core/EM/usb/int13/UsbInt13.h
@@ -0,0 +1,178 @@
+//****************************************************************************
+//****************************************************************************
+//** **
+//** (C)Copyright 1985-2008, American Megatrends, Inc. **
+//** **
+//** All Rights Reserved. **
+//** **
+//** 5555 Oakbrook Pkwy, Norcross, GA 30093 **
+//** **
+//** Phone (770)-246-8600 **
+//** **
+//****************************************************************************
+//****************************************************************************
+
+//****************************************************************************
+// $Header: /Alaska/SOURCE/Modules/USB/ALASKA/Int13/UsbInt13.h 13 12/24/14 1:13a Wilsonlee $
+//
+// $Revision: 13 $
+//
+// $Date: 12/24/14 1:13a $
+//
+//****************************************************************************
+// Revision History
+// ----------------
+// $Log: /Alaska/SOURCE/Modules/USB/ALASKA/Int13/UsbInt13.h $
+//
+// 13 12/24/14 1:13a Wilsonlee
+// [TAG] EIP192517
+// [Category] Improvement
+// [Description] USB Driver handles 0x100 NumHeads as a valid value.
+// [Files] usbmass.c, usbdef.h, UsbInt13.c, UsbInt13.h, UI13.bin,
+// Bfiusb.equ, Bfiusb.asm
+//
+// 12 12/15/13 10:13p Wilsonlee
+// [TAG] EIP136594
+// [Category] New Feature
+// [Description] Support 64 bits LBA of usb mass storages.
+// [Files] Bfiusb.asm, Bfiusb.equ, UsbInt13.c, UsbInt13.h, amiusb.c,
+// usbdef.h, usbmass.c, UsbMass.h, efiusbmass.c, UI13.bin
+//
+// 11 7/23/13 2:11a Wilsonlee
+// [TAG] EIP127941
+// [Category] Improvement
+// [Description] Replace UI13HDDFunc08 with UI13FDDFunc08 if the media
+// descriptor is a fixed disk.
+// [Files] UsbInt13.h, UsbInt13.c, usbmass.c, usbdef.h, Bfiusb.asm,
+// Bfiusb.equ
+//
+// 10 7/03/13 5:21a Ryanchou
+// [TAG] EIP123988
+// [Category] Improvement
+// [Description] Move the code creating BBS table to end of POST.
+// [Files] UsbBbs.c, UsbInt13.c, UsbInt13.cif, UsbInt13.h,
+// UsbInt13.mak, UsbInt13.sdl, efiusbmass.c, uhcd.c, uhcd.h,
+// AmiUsbController.h
+//
+// 9 1/06/12 1:01a Rajeshms
+// [TAG] EIP62737
+// [Category] Improvement
+// [Description] Added USB Device number into USB mass device name
+// string based on SDL Token.
+// [Files] Usb.sdl, usbport.c, usbmass.c, UsbInt13.h, UsbInt13.c,
+// usbbus.c, Bfiusb.equ
+//
+// 8 3/04/11 11:42a Olegi
+// [TAG] EIP51927
+// [Category] Improvement
+// [Description] Support for the interface path reporting in USB INT13
+// function 48.
+// [Files] UsbInt13.c
+// UsbInt13.h
+//
+// 7 10/12/10 2:07a Rameshr
+// [TAG]- EIP 44585
+// [Category]-IMPROVEMENT
+// [Description]- Number of maximum supported USB Mass Storage device
+// increased from 8 to 16.
+// [Files]- Uin13.bin, UsbPort.c, UsbInt13.h, Usb.c, Usbdef.h, Uasbmass.c,
+// Usb.sd, usb.uni, UsbSetup.c, UsbSrc.sdl, UsbPolicy.h
+//
+// 6 5/21/09 5:14p Olegi
+//
+// 5 11/25/08 5:59p Olegi
+//
+// 4 11/03/08 9:53a Olegi
+//
+// 3 10/24/08 3:06p Olegi
+//
+// 2 6/27/08 5:50p Olegi
+//
+// 1 5/16/08 12:12p Olegi
+// First check-in.
+//
+//****************************************************************************
+
+#ifndef __UI13_HEADER__
+#define __UI13_HEADER__
+
+#include "efi.h"
+
+#pragma pack(1)
+
+//<AMI_FHDR_START>
+//---------------------------------------------------------------------------
+//
+// Name: UINT13.H
+// Description: Definitions and structures for USB INT13
+//
+//---------------------------------------------------------------------------
+//<AMI_FHDR_END>
+
+VOID AmiUsbNotifyCallback (EFI_EVENT, VOID*);
+VOID ReadyToBootNotify(EFI_EVENT, VOID*);
+EFI_STATUS InstallUsbLegacyBootDevices (VOID);
+EFI_STATUS UsbInstallLegacyDevice (USB_MASS_DEV*);
+EFI_STATUS UsbUninstallLegacyDevice (USB_MASS_DEV*);
+
+#define USBDEVS_MAX_ENTRIES 16
+
+typedef struct _USBMASS_INT13_DEV {
+ UINT8 Handle;
+ UINT8 BbsEntryNo;
+ UINT8 DevBaidType;
+ UINT16 NumHeads;
+ UINT16 LBANumHeads;
+ UINT16 NumCylinders;
+ UINT16 LBANumCyls;
+ UINT8 NumSectors;
+ UINT8 LBANumSectors;
+ UINT16 BytesPerSector;
+ UINT8 MediaType;
+ UINT64 LastLBA;
+ UINT8 BpbMediaDesc;
+ UINT8 DeviceNameString[64];
+} USBMASS_INT13_DEV;
+
+//
+// The following data structure is located in UI13.BIN
+//
+typedef struct _UINT13_DATA {
+ USBMASS_INT13_DEV UsbMassI13Dev[USBDEVS_MAX_ENTRIES];
+ UINT8 MfgGenericName[12]; // "USB Storage", 0
+ UINT16 BcvOffset;
+ UINT16 CheckForUsbCDROMOffset;
+ UINT16 UsbSmmDataOffset;
+ UINT16 UsbPciLocationTableOffset;
+} UINT13_DATA;
+
+typedef struct _USB_PCI_LOCATION {
+ UINT8 Handle; // USB device address
+ UINT16 PciLocation; // Bus[15..8] Device[7..3] Function[2..0]
+} USB_PCI_LOCATION;
+
+#pragma pack()
+
+typedef enum {
+ Floppy,
+ HardDrive,
+ CDROM
+} HOTPLUG_DEVICE;
+
+EFI_STATUS InitializeHotplugDevices();
+
+#endif
+
+//****************************************************************************
+//****************************************************************************
+//** **
+//** (C)Copyright 1985-2008, American Megatrends, Inc. **
+//** **
+//** All Rights Reserved. **
+//** **
+//** 5555 Oakbrook Pkwy, Norcross, GA 30093 **
+//** **
+//** Phone (770)-246-8600 **
+//** **
+//****************************************************************************
+//****************************************************************************