From 820682b1b34ebb97434c4abc00c744870364e2be Mon Sep 17 00:00:00 2001 From: Finn Thain Date: Mon, 10 Oct 2016 00:46:53 -0400 Subject: scsi: ncr5380: Store IO ports and addresses in host private data The various 5380 drivers inconsistently store register pointers either in the Scsi_Host struct "legacy crap" area or in special, board-specific members of the NCR5380_hostdata struct. Uniform use of the latter struct makes for simpler and faster code (see the following patches) and helps to reduce use of the NCR5380_implementation_fields macro. Signed-off-by: Finn Thain Reviewed-by: Hannes Reinecke Tested-by: Ondrej Zary Tested-by: Michael Schmitz Acked-by: Russell King Signed-off-by: Martin K. Petersen --- drivers/scsi/NCR5380.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'drivers/scsi/NCR5380.h') diff --git a/drivers/scsi/NCR5380.h b/drivers/scsi/NCR5380.h index ceafa0cd80be..02f20ff757ae 100644 --- a/drivers/scsi/NCR5380.h +++ b/drivers/scsi/NCR5380.h @@ -220,6 +220,8 @@ struct NCR5380_hostdata { NCR5380_implementation_fields; /* Board-specific data */ + u8 __iomem *io; /* Remapped 5380 address */ + u8 __iomem *pdma_io; /* Remapped PDMA address */ unsigned long poll_loops; /* Register polling limit */ spinlock_t lock; /* Protects this struct */ struct scsi_cmnd *connected; /* Currently connected cmnd */ @@ -230,6 +232,8 @@ struct NCR5380_hostdata { int flags; /* Board-specific quirks */ int dma_len; /* Requested length of DMA */ int read_overruns; /* Transfer size reduction for DMA erratum */ + unsigned long io_port; /* Device IO port */ + unsigned long base; /* Device base address */ struct list_head unissued; /* Waiting to be issued */ struct scsi_cmnd *selecting; /* Cmnd to be connected */ struct list_head autosense; /* Priority cmnd queue */ @@ -239,6 +243,7 @@ struct NCR5380_hostdata { unsigned char id_mask; /* 1 << Host ID */ unsigned char id_higher_mask; /* All bits above id_mask */ unsigned char last_message; /* Last Message Out */ + unsigned long region_size; /* Size of address/port range */ char info[256]; }; -- cgit v1.2.3