diff options
author | Ondrej Zary <linux@rainbow-software.org> | 2016-01-03 16:06:15 +1100 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2016-01-06 21:43:10 -0500 |
commit | 12150797d064e2936154a8c01be24ce1b0115cfe (patch) | |
tree | 06c8396a0872e40d40a2f94dcf2b556208f932aa /drivers/scsi/g_NCR5380.h | |
parent | f03946210d67be9a33ad63f6a0eed7cdf8c28334 (diff) |
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.h | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/scsi/g_NCR5380.h b/drivers/scsi/g_NCR5380.h index fd201e94f66b..c5e57b7588c1 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 |