#define _ATP870U_H
#include <linux/types.h>
-#include <linux/kdev_t.h>
/* I/O Port */
-#define MAX_CDB 12
-#define MAX_SENSE 14
-#define qcnt 32
-#define ATP870U_SCATTER 128
-#define ATP870U_CMDLUN 1
-
-#define MAX_ADAPTER 8
-#define MAX_SCSI_ID 16
-#define ATP870U_MAX_SECTORS 128
-
-#define ATP885_DEVID 0x808A
-#define ATP880_DEVID1 0x8080
-#define ATP880_DEVID2 0x8081
-
-//#define ED_DBGP
-
-struct atp_unit
-{
- unsigned long baseport;
- unsigned long ioport[2];
- unsigned long pciport[2];
- unsigned long irq;
- unsigned char last_cmd[2];
- unsigned char in_snd[2];
- unsigned char in_int[2];
- unsigned char quhd[2];
- unsigned char quend[2];
- unsigned char global_map[2];
- unsigned char chip_ver;
+#define MAX_CDB 12
+#define MAX_SENSE 14
+#define qcnt 32
+#define ATP870U_SCATTER 128
+#define ATP870U_CMDLUN 1
+
+struct atp_unit {
+ unsigned long ioport;
+ unsigned long pciport;
+ unsigned char last_cmd;
+ unsigned char in_snd;
+ unsigned char in_int;
+ unsigned char quhdu;
+ unsigned char quendu;
unsigned char scam_on;
- unsigned char host_id[2];
- unsigned int working[2];
- unsigned short wide_id[2];
- unsigned short active_id[2];
- unsigned short ultra_map[2];
- unsigned short async[2];
- unsigned short dev_id;
- unsigned char sp[2][16];
- unsigned char r1f[2][16];
- struct scsi_cmnd *quereq[2][qcnt];
- struct atp_id
- {
- unsigned char dirct;
- unsigned char devsp;
- unsigned char devtype;
- unsigned long tran_len;
- unsigned long last_len;
- unsigned char *prd_pos;
- unsigned char *prd_table;
- dma_addr_t prdaddr;
+ unsigned char global_map;
+ unsigned char chip_veru;
+ unsigned char host_idu;
+ volatile int working;
+ unsigned short wide_idu;
+ unsigned short active_idu;
+ unsigned short ultra_map;
+ unsigned short async;
+ unsigned short deviceid;
+ unsigned char ata_cdbu[16];
+ unsigned char sp[16];
+ struct scsi_cmnd *querequ[qcnt];
+ struct atp_id {
+ unsigned char dirctu;
+ unsigned char devspu;
+ unsigned char devtypeu;
+ unsigned long prdaddru;
+ unsigned long tran_lenu;
+ unsigned long last_lenu;
+ unsigned char *prd_posu;
+ unsigned char *prd_tableu;
+ dma_addr_t prd_phys;
struct scsi_cmnd *curr_req;
- } id[2][16];
- struct Scsi_Host *host;
- struct pci_dev *pdev;
+ } id[16];
+ struct Scsi_Host *host;
+ struct pci_dev *pdev;
unsigned int unit;
};