summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/g_NCR5380.h
diff options
context:
space:
mode:
authorOndrej Zary <linux@rainbow-software.org>2016-01-03 16:06:15 +1100
committerMartin K. Petersen <martin.petersen@oracle.com>2016-01-06 21:43:10 -0500
commit12150797d064e2936154a8c01be24ce1b0115cfe (patch)
tree06c8396a0872e40d40a2f94dcf2b556208f932aa /drivers/scsi/g_NCR5380.h
parentf03946210d67be9a33ad63f6a0eed7cdf8c28334 (diff)
downloadop-kernel-dev-12150797d064e2936154a8c01be24ce1b0115cfe.zip
op-kernel-dev-12150797d064e2936154a8c01be24ce1b0115cfe.tar.gz
ncr5380: Use runtime register mapping
Convert compile-time C400_ register mapping to runtime mapping. This removes the weird negative register offsets and allows adding additional mappings. While at it, convert read/write loops into insb/outsb. Signed-off-by: Ondrej Zary <linux@rainbow-software.org> Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Reviewed-by: Hannes Reinecke <hare@suse.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/g_NCR5380.h')
-rw-r--r--drivers/scsi/g_NCR5380.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/scsi/g_NCR5380.h b/drivers/scsi/g_NCR5380.h
index fd201e9..c5e57b7 100644
--- a/drivers/scsi/g_NCR5380.h
+++ b/drivers/scsi/g_NCR5380.h
@@ -29,7 +29,6 @@
#define NCR5380_map_type int
#define NCR5380_map_name port
-#define NCR53C400_register_offset 0
#ifdef CONFIG_SCSI_GENERIC_NCR53C400
#define NCR5380_region_size 16
@@ -42,7 +41,10 @@
#define NCR5380_write(reg, value) \
outb(value, instance->io_port + (reg))
-#define NCR5380_implementation_fields /* none */
+#define NCR5380_implementation_fields \
+ int c400_ctl_status; \
+ int c400_blk_cnt; \
+ int c400_host_buf;
#else
/* therefore SCSI_G_NCR5380_MEM */
@@ -50,7 +52,6 @@
#define NCR5380_map_type unsigned long
#define NCR5380_map_name base
-#define NCR53C400_register_offset 0x108
#define NCR53C400_mem_base 0x3880
#define NCR53C400_host_buffer 0x3900
#define NCR5380_region_size 0x3a00
@@ -63,7 +64,10 @@
NCR53C400_mem_base + (reg))
#define NCR5380_implementation_fields \
- void __iomem *iomem;
+ void __iomem *iomem; \
+ int c400_ctl_status; \
+ int c400_blk_cnt; \
+ int c400_host_buf;
#endif
OpenPOWER on IntegriCloud