A.3.3 AtaPassThru.c File

Example A-15-ATA Pass Thru Protocol implementation template
/** @file
  <<BriefDescription>>
  <<DetailedDescription>>
  <<Copyright>>
  <<License>>
**/

#include "<<DriverName>>.h"

GLOBAL_REMOVE_IF_UNREFERENCED
EFI_ATA_PASS_THRU_PROTOCOL g<<DriverName>>AtaScsiPassThru = { NULL,
  <<DriverName>>AtaPassThruPassThru,
  <<DriverName>>AtaPassThruGetNextPort,
  <<DriverName>>AtaPassThruGetNextDevice,
  <<DriverName>>AtaPassThruBuildDevicePath,
  <<DriverName>>AtaPassThruGetDevice,
  <<DriverName>>AtaPassThruResetPort,
  <<DriverName>>AtaPassThruResetDevice
};

EFI_STATUS
EFIAPI
<<DriverName>>AtaPassThruPassThru (
  IN     EFI_ATA_PASS_THRU_PROTOCOL        *This,
  IN     UINT16                            Port,
  IN     UINT16                            PortMultiplierPort,
  IN OUT EFI_ATA_PASS_THRU_COMMAND_PACKET  *Packet,
  IN     EFI_EVENT                         Event                OPTIONAL
  )
{
}

EFI_STATUS
EFIAPI
<<DriverName>>AtaPassThruGetNextPort (
  IN     EFI_ATA_PASS_THRU_PROTOCOL        *This,
  IN OUT UINT16                            *Port
  )
{
}

EFI_STATUS
EFIAPI
<<DriverName>>AtaPassThruGetNextDevice (
  IN     EFI_ATA_PASS_THRU_PROTOCOL        *This,
  IN     UINT16                            Port,
  IN OUT UINT16                            *PortMultiplierPort
  )
{
}

EFI_STATUS
EFIAPI
<<DriverName>>AtaPassThruBuildDevicePath (
  IN     EFI_ATA_PASS_THRU_PROTOCOL        *This,
  IN     UINT16                            Port,
  IN     UINT16                            PortMultiplierPort,
  IN OUT EFI_DEVICE_PATH_PROTOCOL          **DevicePath
  )
{
}

EFI_STATUS
EFIAPI
<<DriverName>>AtaPassThruGetDevice (
  IN  EFI_ATA_PASS_THRU_PROTOCOL           *This,
  IN  EFI_DEVICE_PATH_PROTOCOL             *DevicePath,
  OUT UINT16                               *Port,
  OUT UINT16                               *PortMultiplierPort
  )
{
}

EFI_STATUS
EFIAPI
<<DriverName>>AtaPassThruResetPort (
  IN EFI_ATA_PASS_THRU_PROTOCOL            *This,
  IN UINT16                                Port
  )
{
}

EFI_STATUS
EFIAPI
<<DriverName>>AtaPassThruResetDevice (
  IN EFI_ATA_PASS_THRU_PROTOCOL            *This,
  IN UINT16                                Port,
  IN UINT16                                PortMultiplierPort
  )
{
}