0
     )ˆÈÏƒD÷Ä¿Ì P    )/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
 * Support for SATA devices on Serial Attached SCSI (SAS) controllers
 *
 * Copyright (C) 2006 IBM Corporation
 *
 * Written by: Darrick J. Wong <djwong@us.ibm.com>, IBM Corporation
 */

#ifndef _SAS_ATA_H_
#define _SAS_ATA_H_

#include <linux/libata.h>
#include <scsi/libsas.h>

#ifdef CONFIG_SCSI_SAS_ATA

static inline int dev_is_sata(struct domain_device *dev)
{
	return dev->dev_type == SAS_SATA_DEV || dev->dev_type == SAS_SATA_PM ||
	       dev->dev_type == SAS_SATA_PM_PORT || dev->dev_type == SAS_SATA_PENDING;
}

int sas_get_ata_info(struct domain_device *dev, struct ex_phy *phy);
int sas_ata_init(struct domain_device *dev);
void sas_ata_task_abort(struct sas_task *task);
void sas_ata_strategy_handler(struct Scsi_Host *shost);
void sas_ata_eh(struct Scsi_Host *shost, struct list_head *work_q,
		struct list_head *done_q);
void sas_ata_schedule_reset(struct domain_device *dev);
void sas_ata_wait_eh(struct domain_device *dev);
void sas_probe_sata(struct asd_sas_port *port);
void sas_suspend_sata(struct asd_sas_port *port);
void sas_resume_sata(struct asd_sas_port *port);
void sas_ata_end_eh(struct ata_port *ap);
#else


static inline int dev_is_sata(struct domain_device *dev)
{
	return 0;
}
static inline int sas_ata_init(struct domain_device *dev)
{
	return 0;
}
static inline void sas_ata_task_abort(struct sas_task *task)
{
}

static inline void sas_ata_strategy_handler(struct Scsi_Host *shost)
{
}

static inline void sas_ata_eh(struct Scsi_Host *shost, struct list_head *work_q,
			      struct list_head *done_q)
{
}

static inline void sas_ata_schedule_reset(struct domain_device *dev)
{
}

static inline void sas_ata_wait_eh(struct domain_device *dev)
{
}

static inline void sas_probe_sata(struct asd_sas_port *port)
{
}

static inline void sas_suspend_sata(struct asd_sas_port *port)
{
}

static inline void sas_resume_sata(struct asd_sas_port *port)
{
}

static inline int sas_get_ata_info(struct domain_device *dev, struct ex_phy *phy)
{
	return 0;
}

static inline void sas_ata_end_eh(struct ata_port *ap)
{
}
#endif

#endif /* _SAS_ATA_H_ */
  5   +ˆl–ß=¿J	µ7µ6 Cq§.2ê˜´oÐ„i§€÷_�uÐb&=L‰*VBl(éÁÎ ?÷     +ELF          >    �&      @       ¨          @ 8  @                                                                                  IQ      IQ                    €       €       €      l      l                   ¨›      ¨«      ¨«      ø                         À›      À«      À«      P      P                   ¨      ¨      ¨                                   È      È      È      $       $              Såtd   ¨      ¨      ¨                             Påtd   p†      p†      p†      \      \             Qåtd                                                  Råtd   ¨›      ¨«      ¨«      X      X                      GNU   À                   GNU Þ{°Ïp°¿s¤Þ¾kZ¸}–
éÉ       0         §ÁŒd €ì, (�0   2       5   6       7   8   9   ;   ?           A       C   E   ¨ð_•‘yè\`ä€ÚÚî9ã�O*=ó�§«¡šû‹�Eq|>Ñ…“q UH|<[A€º¶Ž�d‹zä	AíÈñý3O¸Ž.ÈOÇuÍÃöbÍjB?‚Ï\                        ¬                     ›                      —                     é                     ÿ                     R                                            #                     €                     U                      ¯                     Ê                     U                     ª                     i                      f                     ¦                     Û                     v                                          ?                     (                     à                     2                                                                 L                     m                     }                     �                     ±                     þ                     ï                     º                                          Å                     ”                      .      