linux/drivers/scsi/aic94xx/aic94xx_task.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Aic94xx SAS/SATA Tasks
 *
 * Copyright (C) 2005 Adaptec, Inc.  All rights reserved.
 * Copyright (C) 2005 Luben Tuikov <[email protected]>
 */

#include <linux/spinlock.h>
#include "aic94xx.h"
#include "aic94xx_sas.h"
#include "aic94xx_hwi.h"

static void asd_unbuild_ata_ascb(struct asd_ascb *a);
static void asd_unbuild_smp_ascb(struct asd_ascb *a);
static void asd_unbuild_ssp_ascb(struct asd_ascb *a);

static void asd_can_dequeue(struct asd_ha_struct *asd_ha, int num)
{}

/* DMA_... to our direction translation.
 */
static const u8 data_dir_flags[] =;

static int asd_map_scatterlist(struct sas_task *task,
			       struct sg_el *sg_arr,
			       gfp_t gfp_flags)
{}

static void asd_unmap_scatterlist(struct asd_ascb *ascb)
{}

/* ---------- Task complete tasklet ---------- */

static void asd_get_response_tasklet(struct asd_ascb *ascb,
				     struct done_list_struct *dl)
{}

static void asd_task_tasklet_complete(struct asd_ascb *ascb,
				      struct done_list_struct *dl)
{}

/* ---------- ATA ---------- */

static int asd_build_ata_ascb(struct asd_ascb *ascb, struct sas_task *task,
			      gfp_t gfp_flags)
{}

static void asd_unbuild_ata_ascb(struct asd_ascb *a)
{}

/* ---------- SMP ---------- */

static int asd_build_smp_ascb(struct asd_ascb *ascb, struct sas_task *task,
			      gfp_t gfp_flags)
{}

static void asd_unbuild_smp_ascb(struct asd_ascb *a)
{}

/* ---------- SSP ---------- */

static int asd_build_ssp_ascb(struct asd_ascb *ascb, struct sas_task *task,
			      gfp_t gfp_flags)
{}

static void asd_unbuild_ssp_ascb(struct asd_ascb *a)
{}

/* ---------- Execute Task ---------- */

static int asd_can_queue(struct asd_ha_struct *asd_ha, int num)
{}

int asd_execute_task(struct sas_task *task, gfp_t gfp_flags)
{}