/* Determine if Block Io & Block Io2 should be produced. */
BOOLEAN DetermineInstallBlockIo(IN EFI_HANDLE ChildHandle)
/* Determine if Block Io & Block Io2 should be produced. */
BOOLEAN DetermineInstallBlockIo(IN EFI_HANDLE ChildHandle)
{
  EFI_SCSI_PASS_THRU_PROTOCOL      *ScsiPassThru;
  EFI_EXT_SCSI_PASS_THRU_PROTOCOL  *ExtScsiPassThru;
  ExtScsiPassThru = (EFI_EXT_SCSI_PASS_THRU_PROTOCOL *)GetParentProtocol (&gEfiExtScsiPassThruProtocolGuid, ChildHandle);
  if (ExtScsiPassThru != NULL) {
    if ((ExtScsiPassThru->Mode->Attributes & EFI_SCSI_PASS_THRU_ATTRIBUTES_LOGICAL) != 0) {
      return TRUE;
    }
  }
  ScsiPassThru = (EFI_SCSI_PASS_THRU_PROTOCOL *)GetParentProtocol (&gEfiScsiPassThruProtocolGuid, ChildHandle);
  if (ScsiPassThru != NULL) {
    if ((ScsiPassThru->Mode->Attributes & EFI_SCSI_PASS_THRU_ATTRIBUTES_LOGICAL) != 0) {
      return TRUE;
    }
  }
  return FALSE;
}