Main Page | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

oak.c File Reference

#include <linux/module.h>
#include <linux/signal.h>
#include <linux/sched.h>
#include <linux/ioport.h>
#include <linux/blk.h>
#include <linux/init.h>
#include <asm/ecard.h>
#include <asm/io.h>
#include <asm/system.h>
#include "../../scsi/scsi.h"
#include "../../scsi/hosts.h"
#include "oak.h"
#include "../../scsi/NCR5380.h"
#include "../../scsi/constants.h"
#include "../../scsi/NCR5380.c"

Include dependency graph for oak.c:

Go to the source code of this file.

Defines

#define AUTOSENSE
#define START_DMA_INITIATOR_RECEIVE_REG   (7 + 128)
#define OAK_ADDRESS(card)   (ecard_address((card), ECARD_MEMC, 0))
#define OAK_IRQ(card)   (IRQ_NONE)
#define STAT(p)   inw(p + 144)
#define oakscsi_read(instance, reg)   (inb((instance)->io_port + (reg)))
#define oakscsi_write(instance, reg, val)   (outb((val), (instance)->io_port + (reg)))

Functions

int oakscsi_detect (Scsi_Host_Template *tpnt)
int oakscsi_release (struct Scsi_Host *shpnt)
const char * oakscsi_info (struct Scsi_Host *spnt)
void inswb (int from, void *to, int len)
static int NCR5380_pwrite (struct Scsi_Host *instance, unsigned char *addr, int len)
static int NCR5380_pread (struct Scsi_Host *instance, unsigned char *addr, int len)

Variables

static const card_ids oakscsi_cids []
static struct proc_dir_entry proc_scsi_oakscsi
static struct expansion_cardecs [4]


Define Documentation

#define AUTOSENSE
 

Definition at line 1 of file oak.c.

#define OAK_ADDRESS card   )     (ecard_address((card), ECARD_MEMC, 0))
 

Definition at line 78 of file oak.c.

Referenced by oakscsi_detect(), and oakscsi_release().

#define OAK_IRQ card   )     (IRQ_NONE)
 

Definition at line 79 of file oak.c.

Referenced by oakscsi_detect().

#define oakscsi_read instance,
reg   )     (inb((instance)->io_port + (reg)))
 

Definition at line 226 of file oak.c.

#define oakscsi_write instance,
reg,
val   )     (outb((val), (instance)->io_port + (reg)))
 

Definition at line 227 of file oak.c.

#define START_DMA_INITIATOR_RECEIVE_REG   (7 + 128)
 

Definition at line 67 of file oak.c.

#define STAT  )     inw(p + 144)
 

Definition at line 169 of file oak.c.


Function Documentation

void inswb int  from,
void *  to,
int  len
 

static int NCR5380_pread struct Scsi_Host instance,
unsigned char *  addr,
int  len
[inline, static]
 

Definition at line 186 of file oak.c.

References b, inswb(), inw, Scsi_Host::io_port, iobase, long, printk, STAT, status, and timeout.

Here is the call graph for this function:

static int NCR5380_pwrite struct Scsi_Host instance,
unsigned char *  addr,
int  len
[inline, static]
 

Definition at line 172 of file oak.c.

References Scsi_Host::io_port, iobase, printk, STAT, and status.

int oakscsi_detect Scsi_Host_Template tpnt  ) 
 

Definition at line 93 of file oak.c.

References CAN_QUEUE, CMD_PER_LUN, count, ecard_claim, ecard_find(), ecard_startfind(), Scsi_Host::host_no, Scsi_Host::io_port, Scsi_Host::irq, IRQ_NONE, memset, Scsi_Host::n_io_port, NULL, OAK_ADDRESS, OAK_IRQ, OAKSCSI_PUBLIC_RELEASE, printk, SHT::proc_dir, request_irq(), request_region, SA_INTERRUPT, and scsi_register().

Here is the call graph for this function:

const char* oakscsi_info struct Scsi_Host spnt  ) 
 

Definition at line 165 of file oak.c.

int oakscsi_release struct Scsi_Host shpnt  ) 
 

Definition at line 150 of file oak.c.

References ecard_release, free_irq(), i, Scsi_Host::io_port, Scsi_Host::irq, IRQ_NONE, Scsi_Host::n_io_port, NULL, OAK_ADDRESS, and release_region.

Here is the call graph for this function:


Variable Documentation

struct expansion_card* ecs[4] [static]
 

Definition at line 91 of file oak.c.

const card_ids oakscsi_cids[] [static]
 

Initial value:

 {
        { MANU_OAK, PROD_OAK_SCSI },
        { 0xffff, 0xffff }
}

Definition at line 69 of file oak.c.

struct proc_dir_entry proc_scsi_oakscsi [static]
 

Initial value:

 {
        PROC_SCSI_PAS16, 7, "oakscsi", S_IFDIR | S_IRUGO | S_IXUGO, 2
}

Definition at line 74 of file oak.c.