linux/drivers/scsi/aha1740.c

/*  $Id$
 *  1993/03/31
 *  linux/kernel/aha1740.c
 *
 *  Based loosely on aha1542.c which is
 *  Copyright (C) 1992  Tommy Thorn and
 *  Modified by Eric Youngdale
 *
 *  This file is aha1740.c, written and
 *  Copyright (C) 1992,1993  Brad McLean
 *  [email protected] or [email protected].
 *  
 *  Modifications to makecode and queuecommand
 *  for proper handling of multiple devices courteously
 *  provided by Michael Weller, March, 1993
 *
 *  Multiple adapter support, extended translation detection,
 *  update to current scsi subsystem changes, proc fs support,
 *  working (!) module support based on patches from Andreas Arens,
 *  by Andreas Degert <[email protected]>, 2/1997
 *
 * aha1740_makecode may still need even more work
 * if it doesn't work for your devices, take a look.
 *
 * Reworked for new_eh and new locking by Alan Cox <[email protected]>
 *
 * Converted to EISA and generic DMA APIs by Marc Zyngier
 * <[email protected]>, 4/2003.
 *
 * Shared interrupt support added by Rask Ingemann Lambertsen
 * <[email protected]>, 10/2003
 *
 * For the avoidance of doubt the "preferred form" of this code is one which
 * is in an open non patent encumbered format. Where cryptographic key signing
 * forms part of the process of creating an executable the information
 * including keys needed to generate an equivalently functional executable
 * are deemed to be part of the source code.
 */

#include <linux/blkdev.h>
#include <linux/interrupt.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/types.h>
#include <linux/string.h>
#include <linux/ioport.h>
#include <linux/proc_fs.h>
#include <linux/stat.h>
#include <linux/init.h>
#include <linux/device.h>
#include <linux/eisa.h>
#include <linux/dma-mapping.h>
#include <linux/gfp.h>

#include <asm/dma.h>
#include <asm/io.h>

#include <scsi/scsi.h>
#include <scsi/scsi_cmnd.h>
#include <scsi/scsi_device.h>
#include <scsi/scsi_eh.h>
#include <scsi/scsi_host.h>
#include <scsi/scsi_tcq.h>
#include "aha1740.h"

/* IF YOU ARE HAVING PROBLEMS WITH THIS DRIVER, AND WANT TO WATCH
   IT WORK, THEN:
#define DEBUG
*/
#ifdef DEBUG
#define DEB
#else
#define DEB(x)
#endif

struct aha1740_hostdata {};

struct aha1740_sg {};

#define HOSTDATA(host)

static inline struct ecb *ecb_dma_to_cpu (struct Scsi_Host *host,
					  dma_addr_t dma)
{}

static inline dma_addr_t ecb_cpu_to_dma (struct Scsi_Host *host, void *cpu)
{}

static int aha1740_show_info(struct seq_file *m, struct Scsi_Host *shpnt)
{}

static int aha1740_makecode(unchar *sense, unchar *status)
{}

static int aha1740_test_port(unsigned int base)
{}

/* A "high" level interrupt handler */
static irqreturn_t aha1740_intr_handle(int irq, void *dev_id)
{}

static int aha1740_queuecommand_lck(struct scsi_cmnd *SCpnt)
{}

static DEF_SCSI_QCMD(aha1740_queuecommand)

/* Query the board for its irq_level and irq_type.  Nothing else matters
   in enhanced mode on an EISA bus. */

static void aha1740_getconfig(unsigned int base, unsigned int *irq_level,
			      unsigned int *irq_type,
			      unsigned int *translation)
{}

static int aha1740_biosparam(struct scsi_device *sdev,
			     struct block_device *dev,
			     sector_t capacity, int* ip)
{}

static int aha1740_eh_abort_handler (struct scsi_cmnd *dummy)
{}

static const struct scsi_host_template aha1740_template =;

static int aha1740_probe (struct device *dev)
{}

static int aha1740_remove (struct device *dev)
{}

static struct eisa_device_id aha1740_ids[] =;
MODULE_DEVICE_TABLE(eisa, aha1740_ids);

static struct eisa_driver aha1740_driver =;

static __init int aha1740_init (void)
{}

static __exit void aha1740_exit (void)
{}

module_init();
module_exit (aha1740_exit);

MODULE_DESCRIPTION();
MODULE_LICENSE();