#include "aic94xx.h"
#include "aic94xx_hwi.h"
#include "aic94xx_reg.h"
#include "aic94xx_sas.h"
#define FIND_FREE_DDB(_ha) …
#define SET_DDB(_ddb, _ha) …
#define CLEAR_DDB(_ddb, _ha) …
static int asd_get_ddb(struct asd_ha_struct *asd_ha)
{ … }
#define INIT_CONN_TAG …
#define DEST_SAS_ADDR …
#define SEND_QUEUE_HEAD …
#define DDB_TYPE …
#define CONN_MASK …
#define DDB_TARG_FLAGS …
#define DDB_TARG_FLAGS2 …
#define EXEC_QUEUE_TAIL …
#define SEND_QUEUE_TAIL …
#define SISTER_DDB …
#define MAX_CCONN …
#define NUM_CTX …
#define ATA_CMD_SCBPTR …
#define SATA_TAG_ALLOC_MASK …
#define NUM_SATA_TAGS …
#define SATA_STATUS …
#define NCQ_DATA_SCB_PTR …
#define ITNL_TIMEOUT …
static void asd_free_ddb(struct asd_ha_struct *asd_ha, int ddb)
{ … }
static void asd_set_ddb_type(struct domain_device *dev)
{ … }
static int asd_init_sata_tag_ddb(struct domain_device *dev)
{ … }
void asd_set_dmamode(struct domain_device *dev)
{ … }
static int asd_init_sata(struct domain_device *dev)
{ … }
static int asd_init_target_ddb(struct domain_device *dev)
{ … }
static int asd_init_sata_pm_table_ddb(struct domain_device *dev)
{ … }
#define PM_PORT_FLAGS …
#define PARENT_DDB …
static int asd_init_sata_pm_port_ddb(struct domain_device *dev)
{ … }
static int asd_init_initiator_ddb(struct domain_device *dev)
{ … }
static int asd_init_sata_pm_ddb(struct domain_device *dev)
{ … }
int asd_dev_found(struct domain_device *dev)
{ … }
void asd_dev_gone(struct domain_device *dev)
{ … }