+++ /dev/null
-/*++\r
-\r
-Copyright (c) 2006, Intel Corporation \r
-All rights reserved. This program and the accompanying materials \r
-are licensed and made available under the terms and conditions of the BSD License \r
-which accompanies this distribution. The full text of the license may be found at \r
-http://opensource.org/licenses/bsd-license.php \r
- \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
-\r
-Module Name:\r
-\r
- ScsiBus.h\r
-\r
-Abstract:\r
-\r
- Header file for SCSI Bus Driver.\r
-\r
-Revision History\r
-++*/\r
-\r
-// TODO: fix comment to end with --*/\r
-#ifndef _SCSI_BUS_H\r
-#define _SCSI_BUS_H\r
-\r
-\r
-#include <IndustryStandard/scsi.h>\r
-//\r
-// 1000 * 1000 * 10\r
-//\r
-#define ONE_SECOND_TIMER 10000000 \r
-\r
-#define SCSI_IO_DEV_SIGNATURE EFI_SIGNATURE_32 ('s', 'c', 'i', 'o')\r
-\r
-typedef struct {\r
- UINT32 Signature;\r
-\r
- EFI_HANDLE Handle;\r
- EFI_SCSI_IO_PROTOCOL ScsiIo;\r
- EFI_DEVICE_PATH_PROTOCOL *DevicePath;\r
- EFI_SCSI_PASS_THRU_PROTOCOL *ScsiPassThru;\r
-\r
- UINT32 Pun;\r
- UINT64 Lun;\r
- UINT8 ScsiDeviceType;\r
- UINT8 ScsiVersion;\r
- BOOLEAN RemovableDevice;\r
-} SCSI_IO_DEV;\r
-\r
-#define SCSI_IO_DEV_FROM_THIS(a) CR (a, SCSI_IO_DEV, ScsiIo, SCSI_IO_DEV_SIGNATURE)\r
-\r
-//\r
-// Global Variables\r
-//\r
-extern EFI_DRIVER_BINDING_PROTOCOL gScsiBusDriverBinding;\r
-extern EFI_COMPONENT_NAME_PROTOCOL gScsiBusComponentName;\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-SCSIBusDriverBindingSupported (\r
- IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
- IN EFI_HANDLE Controller,\r
- IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath\r
- );\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-SCSIBusDriverBindingStart (\r
- IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
- IN EFI_HANDLE Controller,\r
- IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath\r
- );\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-SCSIBusDriverBindingStop (\r
- IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
- IN EFI_HANDLE Controller,\r
- IN UINTN NumberOfChildren,\r
- IN EFI_HANDLE *ChildHandleBuffer\r
- );\r
-\r
-//\r
-// EFI Component Name Functions\r
-//\r
-EFI_STATUS\r
-EFIAPI\r
-ScsiBusComponentNameGetDriverName (\r
- IN EFI_COMPONENT_NAME_PROTOCOL *This,\r
- IN CHAR8 *Language,\r
- OUT CHAR16 **DriverName\r
- );\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-ScsiBusComponentNameGetControllerName (\r
- IN EFI_COMPONENT_NAME_PROTOCOL *This,\r
- IN EFI_HANDLE ControllerHandle,\r
- IN EFI_HANDLE ChildHandle OPTIONAL,\r
- IN CHAR8 *Language,\r
- OUT CHAR16 **ControllerName\r
- );\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-ScsiGetDeviceType (\r
- IN EFI_SCSI_IO_PROTOCOL *This,\r
- OUT UINT8 *DeviceType\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- This - TODO: add argument description\r
- DeviceType - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
---*/\r
-;\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-ScsiResetBus (\r
- IN EFI_SCSI_IO_PROTOCOL *This\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- This - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
---*/\r
-;\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-ScsiResetDevice (\r
- IN EFI_SCSI_IO_PROTOCOL *This\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- This - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
---*/\r
-;\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-ScsiExecuteSCSICommand (\r
- IN EFI_SCSI_IO_PROTOCOL *This,\r
- IN OUT EFI_SCSI_IO_SCSI_REQUEST_PACKET *CommandPacket,\r
- IN EFI_EVENT Event\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- This - TODO: add argument description\r
- CommandPacket - TODO: add argument description\r
- Event - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
---*/\r
-;\r
-\r
-EFI_STATUS\r
-ScsiScanCreateDevice (\r
- EFI_DRIVER_BINDING_PROTOCOL *This,\r
- EFI_HANDLE Controller,\r
- UINT32 Pun,\r
- UINT64 Lun,\r
- EFI_SCSI_PASS_THRU_PROTOCOL *ScsiPassThru,\r
- EFI_DEVICE_PATH_PROTOCOL *ParentDevicePath\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- This - TODO: add argument description\r
- Controller - TODO: add argument description\r
- Pun - TODO: add argument description\r
- Lun - TODO: add argument description\r
- ScsiPassThru - TODO: add argument description\r
- ParentDevicePath - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
---*/\r
-;\r
-\r
-BOOLEAN\r
-DiscoverScsiDevice (\r
- SCSI_IO_DEV *ScsiIoDevice\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- ScsiIoDevice - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
---*/\r
-;\r
-\r
-EFI_STATUS\r
-GetLunList (\r
- EFI_SCSI_PASS_THRU_PROTOCOL *ScsiPassThru,\r
- UINT32 Target,\r
- UINT64 **LunArray,\r
- UINTN *NumberOfLuns\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- ScsiPassThru - TODO: add argument description\r
- Target - TODO: add argument description\r
- LunArray - TODO: add argument description\r
- NumberOfLuns - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
---*/\r
-;\r
-\r
-EFI_STATUS\r
-ScsiBusSubmitReportLunCommand (\r
- EFI_SCSI_PASS_THRU_PROTOCOL *ScsiPassThru,\r
- UINT32 Target,\r
- UINTN AllocationLength,\r
- VOID *Buffer,\r
- EFI_SCSI_SENSE_DATA *SenseData,\r
- UINT8 *SenseDataLength,\r
- UINT8 *HostAdapterStatus,\r
- UINT8 *TargetStatus\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- ScsiPassThru - TODO: add argument description\r
- Target - TODO: add argument description\r
- AllocationLength - TODO: add argument description\r
- Buffer - TODO: add argument description\r
- SenseData - TODO: add argument description\r
- SenseDataLength - TODO: add argument description\r
- HostAdapterStatus - TODO: add argument description\r
- TargetStatus - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
---*/\r
-;\r
-#endif\r