public inbox for linux-m68k@lists.linux-m68k.org
 help / color / mirror / Atom feed
From: Finn Thain <fthain@telegraphics.com.au>
To: "James E.J. Bottomley" <JBottomley@odin.com>,
	Michael Schmitz <schmitzmic@gmail.com>,
	linux-m68k@vger.kernel.org, linux-scsi@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: [PATCH 41/71] ncr5380: Replace redundant flags with FLAG_NO_DMA_FIXUP
Date: Wed, 18 Nov 2015 19:35:36 +1100	[thread overview]
Message-ID: <20151118083507.511702423@telegraphics.com.au> (raw)
In-Reply-To: 20151118083455.331768508@telegraphics.com.au

[-- Attachment #1: ncr5380-remove-FLAG_NCR53C400 --]
[-- Type: text/plain, Size: 7677 bytes --]

The flags DMA_WORKS_RIGHT, FLAG_NCR53C400 and FLAG_HAS_LAST_BYTE_SENT
all mean the same thing, i.e. the chip is not a 538[01]. (More recent
devices such as the 53C80 have a 'Last Byte Sent' bit in the Target
Command Register as well as other fixes for End-of-DMA errata.)

These flags have no additional meanings since previous cleanup patches
eliminated the NCR53C400 macro, moved g_NCR5380-specific code out of the
core driver and standardized interrupt handling.

Use the FLAG_NO_DMA_FIXUP flag to suppress End-of-DMA errata workarounds,
for those cards and drivers that make use of the TCR_LAST_BYTE_SENT bit.
Remove the old flags.

Signed-off-by: Finn Thain <fthain@telegraphics.com.au>

---
 drivers/scsi/NCR5380.c   |   68 +++++++++++++++--------------------------------
 drivers/scsi/NCR5380.h   |    4 --
 drivers/scsi/dtc.c       |    4 --
 drivers/scsi/g_NCR5380.c |    5 +--
 4 files changed, 26 insertions(+), 55 deletions(-)

Index: linux/drivers/scsi/NCR5380.c
===================================================================
--- linux.orig/drivers/scsi/NCR5380.c	2015-11-18 19:33:55.000000000 +1100
+++ linux/drivers/scsi/NCR5380.c	2015-11-18 19:33:56.000000000 +1100
@@ -552,7 +552,7 @@ static void prepare_info(struct Scsi_Hos
 	         instance->base, instance->irq,
 	         instance->can_queue, instance->cmd_per_lun,
 	         instance->sg_tablesize, instance->this_id,
-	         hostdata->flags & FLAG_NCR53C400     ? "NCR53C400 "     : "",
+	         hostdata->flags & FLAG_NO_DMA_FIXUP  ? "NO_DMA_FIXUP "  : "",
 	         hostdata->flags & FLAG_DTC3181E      ? "DTC3181E "      : "",
 	         hostdata->flags & FLAG_NO_PSEUDO_DMA ? "NO_PSEUDO_DMA " : "",
 	         hostdata->flags & FLAG_TOSHIBA_DELAY ? "TOSHIBA_DELAY "  : "",
@@ -712,6 +712,7 @@ static int NCR5380_init(struct Scsi_Host
 	hostdata->connected = NULL;
 	hostdata->issue_queue = NULL;
 	hostdata->disconnected_queue = NULL;
+	hostdata->flags = flags;
 	
 	INIT_WORK(&hostdata->main_task, NCR5380_main);
 	hostdata->work_q = alloc_workqueue("ncr5380_%d",
@@ -720,12 +721,6 @@ static int NCR5380_init(struct Scsi_Host
 	if (!hostdata->work_q)
 		return -ENOMEM;
 
-	/* The CHECK code seems to break the 53C400. Will check it later maybe */
-	if (flags & FLAG_NCR53C400)
-		hostdata->flags = FLAG_HAS_LAST_BYTE_SENT | flags;
-	else
-		hostdata->flags = FLAG_CHECK_LAST_BYTE_SENT | flags;
-
 	hostdata->host = instance;
 
 	prepare_info(instance);
@@ -1609,7 +1604,7 @@ static int NCR5380_transfer_dma(struct S
 	 * before the setting of DMA mode to after transfer of the last byte.
 	 */
 
-	if (hostdata->flags & FLAG_NCR53C400)
+	if (hostdata->flags & FLAG_NO_DMA_FIXUP)
 		NCR5380_write(MODE_REG, MR_BASE | MR_DMA_MODE | MR_MONITOR_BSY |
 		                        MR_ENABLE_EOP_INTR);
 	else
@@ -1729,14 +1724,9 @@ static int NCR5380_transfer_dma(struct S
 	return 0;
 #else				/* defined(REAL_DMA_POLL) */
 	if (p & SR_IO) {
-#ifdef DMA_WORKS_RIGHT
-		foo = NCR5380_pread(instance, d, c);
-#else
-		int diff = 1;
-		if (hostdata->flags & FLAG_NCR53C400) {
-			diff = 0;
-		}
-		if (!(foo = NCR5380_pread(instance, d, c - diff))) {
+		foo = NCR5380_pread(instance, d,
+			hostdata->flags & FLAG_NO_DMA_FIXUP ? c : c - 1);
+		if (!foo && !(hostdata->flags & FLAG_NO_DMA_FIXUP)) {
 			/*
 			 * We can't disable DMA mode after successfully transferring 
 			 * what we plan to be the last byte, since that would open up
@@ -1759,46 +1749,32 @@ static int NCR5380_transfer_dma(struct S
 			 * byte.
 			 */
 
-			if (!(hostdata->flags & FLAG_NCR53C400)) {
-				while (!(NCR5380_read(BUS_AND_STATUS_REG) & BASR_DRQ));
-				/* Wait for clean handshake */
-				while (NCR5380_read(STATUS_REG) & SR_REQ);
-				d[c - 1] = NCR5380_read(INPUT_DATA_REG);
+			if (NCR5380_poll_politely(instance, BUS_AND_STATUS_REG,
+			                          BASR_DRQ, BASR_DRQ, HZ) < 0) {
+				foo = -1;
+				shost_printk(KERN_ERR, instance, "PDMA read: DRQ timeout\n");
+			}
+			if (NCR5380_poll_politely(instance, STATUS_REG,
+			                          SR_REQ, 0, HZ) < 0) {
+				foo = -1;
+				shost_printk(KERN_ERR, instance, "PDMA read: !REQ timeout\n");
 			}
+			d[c - 1] = NCR5380_read(INPUT_DATA_REG);
 		}
-#endif
 	} else {
-#ifdef DMA_WORKS_RIGHT
 		foo = NCR5380_pwrite(instance, d, c);
-#else
-		int timeout;
-		dprintk(NDEBUG_C400_PWRITE, "About to pwrite %d bytes\n", c);
-		if (!(foo = NCR5380_pwrite(instance, d, c))) {
+		if (!foo && !(hostdata->flags & FLAG_NO_DMA_FIXUP)) {
 			/*
 			 * Wait for the last byte to be sent.  If REQ is being asserted for 
 			 * the byte we're interested, we'll ACK it and it will go false.  
 			 */
-			if (!(hostdata->flags & FLAG_HAS_LAST_BYTE_SENT)) {
-				timeout = 20000;
-				while (!(NCR5380_read(BUS_AND_STATUS_REG) & BASR_DRQ) && (NCR5380_read(BUS_AND_STATUS_REG) & BASR_PHASE_MATCH));
-
-				if (!timeout)
-					dprintk(NDEBUG_LAST_BYTE_SENT, "scsi%d : timed out on last byte\n", instance->host_no);
-
-				if (hostdata->flags & FLAG_CHECK_LAST_BYTE_SENT) {
-					hostdata->flags &= ~FLAG_CHECK_LAST_BYTE_SENT;
-					if (NCR5380_read(TARGET_COMMAND_REG) & TCR_LAST_BYTE_SENT) {
-						hostdata->flags |= FLAG_HAS_LAST_BYTE_SENT;
-						dprintk(NDEBUG_LAST_BYTE_SENT, "scsi%d : last byte sent works\n", instance->host_no);
-					}
-				}
-			} else {
-				dprintk(NDEBUG_C400_PWRITE, "Waiting for LASTBYTE\n");
-				while (!(NCR5380_read(TARGET_COMMAND_REG) & TCR_LAST_BYTE_SENT));
-				dprintk(NDEBUG_C400_PWRITE, "Got LASTBYTE\n");
+			if (NCR5380_poll_politely2(instance,
+			     BUS_AND_STATUS_REG, BASR_DRQ, BASR_DRQ,
+			     BUS_AND_STATUS_REG, BASR_PHASE_MATCH, 0, HZ) < 0) {
+				foo = -1;
+				shost_printk(KERN_ERR, instance, "PDMA write: DRQ and phase timeout\n");
 			}
 		}
-#endif
 	}
 	NCR5380_write(MODE_REG, MR_BASE);
 	NCR5380_write(INITIATOR_COMMAND_REG, ICR_BASE);
Index: linux/drivers/scsi/NCR5380.h
===================================================================
--- linux.orig/drivers/scsi/NCR5380.h	2015-11-18 19:33:51.000000000 +1100
+++ linux/drivers/scsi/NCR5380.h	2015-11-18 19:33:56.000000000 +1100
@@ -226,9 +226,7 @@
 #define NO_IRQ		0
 #endif
 
-#define FLAG_HAS_LAST_BYTE_SENT		1	/* NCR53c81 or better */
-#define FLAG_CHECK_LAST_BYTE_SENT	2	/* Only test once */
-#define FLAG_NCR53C400			4	/* NCR53c400 */
+#define FLAG_NO_DMA_FIXUP		1	/* No DMA errata workarounds */
 #define FLAG_NO_PSEUDO_DMA		8	/* Inhibit DMA */
 #define FLAG_DTC3181E			16	/* DTC3181E */
 #define FLAG_LATE_DMA_SETUP		32	/* Setup NCR before DMA H/W */
Index: linux/drivers/scsi/dtc.c
===================================================================
--- linux.orig/drivers/scsi/dtc.c	2015-11-18 19:33:53.000000000 +1100
+++ linux/drivers/scsi/dtc.c	2015-11-18 19:33:56.000000000 +1100
@@ -1,7 +1,5 @@
 #define PSEUDO_DMA
 #define DONT_USE_INTR
-#define DMA_WORKS_RIGHT
-
 
 /*
  * DTC 3180/3280 driver, by
@@ -233,7 +231,7 @@ found:
 		instance->base = addr;
 		((struct NCR5380_hostdata *)(instance)->hostdata)->base = base;
 
-		if (NCR5380_init(instance, 0))
+		if (NCR5380_init(instance, FLAG_NO_DMA_FIXUP))
 			goto out_unregister;
 
 		NCR5380_maybe_reset_bus(instance);
Index: linux/drivers/scsi/g_NCR5380.c
===================================================================
--- linux.orig/drivers/scsi/g_NCR5380.c	2015-11-18 19:33:53.000000000 +1100
+++ linux/drivers/scsi/g_NCR5380.c	2015-11-18 19:33:56.000000000 +1100
@@ -320,9 +320,8 @@ static int __init generic_NCR5380_detect
 			flags = FLAG_NO_PSEUDO_DMA;
 			break;
 		case BOARD_NCR53C400:
-#ifdef PSEUDO_DMA
-			flags = FLAG_NCR53C400;
-#else
+			flags = FLAG_NO_DMA_FIXUP;
+#ifndef PSEUDO_DMA
 			flags = FLAG_NO_PSEUDO_DMA;
 #endif
 			break;

  parent reply	other threads:[~2015-11-18  8:35 UTC|newest]

Thread overview: 182+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-18  8:34 [PATCH 00/71] More fixes, cleanup and modernization for NCR5380 drivers Finn Thain
2015-11-18  8:34 ` [PATCH 01/71] atari_scsi: Fix SCSI host ID setting Finn Thain
2015-11-19  7:37   ` Hannes Reinecke
2015-11-18  8:34 ` [PATCH 02/71] ncr5380: Remove redundant static variable initializers Finn Thain
2015-11-19  7:37   ` Hannes Reinecke
2015-11-18  8:34 ` [PATCH 03/71] ncr5380: Eliminate PDEBUG*, TDEBUG* and DTCDEBUG* macros Finn Thain
2015-11-19  7:38   ` Hannes Reinecke
2015-11-18  8:34 ` [PATCH 04/71] ncr5380: Remove more pointless macros Finn Thain
2015-11-19  7:38   ` Hannes Reinecke
2015-11-18  8:35 ` [PATCH 05/71] ncr5380: Remove NCR5380_local_declare and NCR5380_setup macros Finn Thain
2015-11-19  7:41   ` Hannes Reinecke
2015-11-18  8:35 ` [PATCH 06/71] ncr5380: Remove NCR5380_instance_name macro Finn Thain
2015-11-19  7:41   ` Hannes Reinecke
2015-11-18  8:35 ` [PATCH 07/71] ncr5380: Split NCR5380_init() into two functions Finn Thain
2015-11-19 13:30   ` Hannes Reinecke
2015-11-18  8:35 ` [PATCH 08/71] ncr5380: Move NCR53C400-specific code Finn Thain
2015-11-19 13:31   ` Hannes Reinecke
2015-11-18  8:35 ` [PATCH 09/71] atari_NCR5380: Reset bus on driver initialization if required Finn Thain
2015-11-19 13:38   ` Hannes Reinecke
2015-11-18  8:35 ` [PATCH 10/71] atari_NCR5380: Remove RESET_BOOT, CONFIG_ATARI_SCSI_TOSHIBA_DELAY and CONFIG_ATARI_SCSI_RESET_BOOT Finn Thain
2015-11-19  3:05   ` Michael Schmitz
2015-11-19  4:05     ` Finn Thain
2015-11-19  4:43       ` Michael Schmitz
2015-11-19 13:41   ` Hannes Reinecke
2015-11-18  8:35 ` [PATCH 11/71] ncr5380: Simplify bus reset handlers Finn Thain
2015-11-19 13:56   ` Hannes Reinecke
2015-11-18  8:35 ` [PATCH 12/71] ncr5380: Remove unused hostdata->aborted flag Finn Thain
2015-11-19 14:13   ` Hannes Reinecke
2015-11-18  8:35 ` [PATCH 13/71] ncr5380: Remove redundant register writes Finn Thain
2015-11-19 14:14   ` Hannes Reinecke
2015-11-18  8:35 ` [PATCH 14/71] ncr5380: Use return instead of goto in NCR5380_select() Finn Thain
2015-11-19 14:14   ` Hannes Reinecke
2015-11-18  8:35 ` [PATCH 15/71] ncr5380: Always escalate bad target time-out " Finn Thain
2015-11-19 14:15   ` Hannes Reinecke
2015-11-18  8:35 ` [PATCH 16/71] ncr5380: Proceed with next command after NCR5380_select() calls scsi_done Finn Thain
2015-11-19 14:16   ` Hannes Reinecke
2015-11-18  8:35 ` [PATCH 17/71] ncr5380: Keep BSY asserted when entering SELECTION phase Finn Thain
2015-11-18  8:35 ` [PATCH 18/71] ncr5380: Eliminate USLEEP_WAITLONG delay Finn Thain
2015-11-18  8:35 ` [PATCH 19/71] ncr5380: Cleanup bogus {request,release}_region() calls Finn Thain
2015-11-18  8:35 ` [PATCH 20/71] ncr5380: Introduce unbound workqueue Finn Thain
2015-11-18  8:35 ` [PATCH 21/71] ncr5380: Sleep when polling, if possible Finn Thain
2015-11-18  8:35 ` [PATCH 22/71] ncr5380: Eliminate selecting state Finn Thain
2015-11-24 19:08   ` Ondrej Zary
2015-11-25  3:17     ` Finn Thain
2015-11-25 21:59       ` Ondrej Zary
2015-11-26 10:23         ` Finn Thain
2015-11-26 19:35           ` Ondrej Zary
2015-11-26 22:32             ` Finn Thain
2015-11-28 23:13               ` Ondrej Zary
2015-11-29  0:46                 ` Finn Thain
2015-11-29  9:09                   ` Ondrej Zary
2015-11-29  9:27               ` Geert Uytterhoeven
2015-11-29 10:25                 ` Finn Thain
2015-11-29 13:50                   ` Geert Uytterhoeven
2015-11-30  2:12                     ` Finn Thain
2015-11-18  8:35 ` [PATCH 23/71] ncr5380: Always retry arbitration and selection Finn Thain
2015-11-18  8:35 ` [PATCH 24/71] ncr5380: Implement NCR5380_dma_xfer_len and remove LIMIT_TRANSFERSIZE macro Finn Thain
2015-11-18  8:35 ` [PATCH 25/71] ncr5380: Rework disconnect versus poll logic Finn Thain
2015-11-18  8:35 ` [PATCH 26/71] ncr5380: Fix NCR5380_transfer_pio() result Finn Thain
2015-11-18  8:35 ` [PATCH 27/71] ncr5380: Add missing lock in eh_abort_handler Finn Thain
2015-11-18  8:35 ` [PATCH 28/71] ncr5380: Drop DEF_SCSI_QCMD macro Finn Thain
2015-11-18  8:35 ` [PATCH 29/71] ncr5380: Remove references to linked commands Finn Thain
2015-11-18  8:35 ` [PATCH 30/71] ncr5380: Add missing break after case MESSAGE_REJECT Finn Thain
2015-11-18  8:35 ` [PATCH 31/71] ncr5380: Fix !REQ timeout in do_abort() Finn Thain
2015-11-18  8:35 ` [PATCH 32/71] ncr5380: Fix bus phase " Finn Thain
2015-11-18  8:35 ` [PATCH 33/71] atari_NCR5380: Set do_abort() timeouts Finn Thain
2015-11-18  8:35 ` [PATCH 34/71] atari_NCR5380: Use arbitration timeout Finn Thain
2015-11-18  8:35 ` [PATCH 35/71] ncr5380: Dont wait for BUS FREE after disconnect Finn Thain
2015-11-18  8:35 ` [PATCH 36/71] ncr5380: Use work_struct instead of delayed_work Finn Thain
2015-11-18  8:35 ` [PATCH 37/71] ncr5380: Standardize work queueing algorithm Finn Thain
2015-11-18  8:35 ` [PATCH 38/71] ncr5380: Remove UNSAFE macro Finn Thain
2015-11-18  8:35 ` [PATCH 39/71] ncr5380: Standardize interrupt handling Finn Thain
2015-11-18  8:35 ` [PATCH 40/71] ncr5380: Introduce NCR5380_poll_politely2 Finn Thain
2015-11-18  8:35 ` Finn Thain [this message]
2015-11-18  8:35 ` [PATCH 42/71] ncr5380: Replace READ_OVERRUNS macro with FLAG_NO_DMA_FIXUPS Finn Thain
2015-11-18  8:35 ` [PATCH 43/71] ncr5380: Standardize reselection handling Finn Thain
2015-11-18  8:35 ` [PATCH 44/71] ncr5380: Fix off-by-one bug in extended_msg[] bounds check Finn Thain
2015-11-18  8:35 ` [PATCH 45/71] ncr5380: Cleanup #include directives Finn Thain
2015-11-18  8:35 ` [PATCH 46/71] ncr5380: Fix NDEBUG_NO_DATAOUT flag Finn Thain
2015-11-18  8:35 ` [PATCH 47/71] ncr5380: Fix and cleanup scsi_host_template initializers Finn Thain
2015-11-18  8:35 ` [PATCH 48/71] atari_NCR5380: Fix queue_size limit Finn Thain
2015-11-18  8:35 ` [PATCH 49/71] atari_NCR5380: Introduce FLAG_DTC3181E Finn Thain
2015-11-18  8:35 ` [PATCH 50/71] ncr5380: Change instance->host_lock to hostdata->lock Finn Thain
2015-11-18  8:35 ` [PATCH 51/71] ncr5380: Remove command list debug code Finn Thain
2015-11-18  8:35 ` [PATCH 52/71] ncr5380: Remove H_NO macro and introduce dsprintk Finn Thain
2015-11-18  8:35 ` [PATCH 53/71] ncr5380: Use shost_priv helper Finn Thain
2015-11-18  8:35 ` [PATCH 54/71] ncr5380: Use dsprintk() for queue debugging Finn Thain
2015-11-18  8:35 ` [PATCH 55/71] ncr5380: Remove LIST and REMOVE macros Finn Thain
2015-11-18  8:35 ` [PATCH 56/71] ncr5380: Remove redundant volatile qualifiers Finn Thain
2015-11-18  8:35 ` [PATCH 57/71] ncr5380: Use standard list data structure Finn Thain
2015-11-18  8:35 ` [PATCH 58/71] ncr5380: Refactor command completion Finn Thain
2015-11-18  8:35 ` [PATCH 59/71] ncr5380: Fix autosense bugs Finn Thain
2015-11-18  8:35 ` [PATCH 60/71] ncr5380: Implement new eh_abort_handler Finn Thain
2015-11-18  8:35 ` [PATCH 61/71] ncr5380: Fix EH during arbitration and selection Finn Thain
2015-11-18  8:35 ` [PATCH 62/71] ncr5380: Implement new eh_bus_reset_handler Finn Thain
2015-11-18  8:35 ` [PATCH 63/71] atari_NCR5380: Remove HOSTNO macro from printk() and seq_printf() calls Finn Thain
2015-11-18  8:35 ` [PATCH 64/71] atari_NCR5380: Eliminate HOSTNO macro Finn Thain
2015-11-18  8:36 ` [PATCH 65/71] atari_scsi, sun3_scsi: Remove global Scsi_Host pointer Finn Thain
2015-11-18  8:36 ` [PATCH 66/71] ncr5380: Fix soft lockups Finn Thain
2015-11-18  8:36 ` [PATCH 67/71] ncr5380: Cleanup comments Finn Thain
2015-11-18  8:36 ` [PATCH 68/71] ncr5380: Fix whitespace issues using regexp Finn Thain
2015-11-18  8:36 ` [PATCH 69/71] ncr5380: Merge changes from atari_NCR5380.c Finn Thain
2015-11-18  8:36 ` [PATCH 70/71] atari_NCR5380: Merge changes from NCR5380.c Finn Thain
2015-11-18  8:36 ` [PATCH 71/71] ncr5380: Cleanup whitespace and parentheses Finn Thain
2015-11-18 11:35 ` [PATCH 00/71] More fixes, cleanup and modernization for NCR5380 drivers Ondrej Zary
2015-11-19  2:24   ` Finn Thain
2015-11-19  2:52     ` Michael Schmitz
2015-11-19  7:48     ` Ondrej Zary
2015-11-19 22:50     ` Ondrej Zary
2015-11-20  1:41       ` Finn Thain
2015-11-20  7:21         ` Finn Thain
2015-11-20  7:33           ` Christoph Hellwig
2015-11-20  8:19             ` Finn Thain
2015-11-20  9:16               ` Ondrej Zary
2015-11-20 10:00               ` Christoph Hellwig
2015-11-20 10:53                 ` Finn Thain
2015-11-20 11:40                   ` Ondrej Zary
2015-11-20 11:45                     ` Christoph Hellwig
2015-11-20 12:23                     ` Geert Uytterhoeven
2015-11-20 12:46                       ` Ondrej Zary
2015-11-20  7:35         ` Ondrej Zary
2015-11-20 18:29         ` Ondrej Zary
2015-11-21  1:58           ` Finn Thain
2015-11-21 13:01             ` Ondrej Zary
2015-11-21 23:07               ` Ondrej Zary
2015-11-21 23:32               ` Finn Thain
2015-11-23 22:55                 ` Ondrej Zary
2015-11-24  1:21                   ` Finn Thain
2015-11-24  8:04                     ` Ondrej Zary
2015-11-24  9:13                       ` Finn Thain
2015-11-24 12:03                         ` Ondrej Zary
2015-11-24 18:04                           ` Ondrej Zary
2015-11-24 21:40                         ` Ondrej Zary
2015-11-25  2:10                           ` Finn Thain
2015-11-25  9:04                             ` Ondrej Zary
2015-11-25 11:50                               ` Finn Thain
2015-11-25 23:01                               ` Ondrej Zary
2015-11-25 21:34 ` [PATCH 72/71] ncr5380: Fix pseudo-DMA Ondrej Zary
2015-11-29  9:39 ` [RFC PATCH 73/71] ncr5380: Use runtime register mapping Ondrej Zary
2015-11-30 11:50   ` Finn Thain
2015-11-29  9:39 ` [RFC PATCH 74/71] ncr5380: Enable PDMA for NCR53C400A Ondrej Zary
2015-11-30 11:52   ` Finn Thain
2015-11-30 12:04   ` Finn Thain
2015-11-30 13:40     ` Ondrej Zary
2015-12-06  3:20       ` Finn Thain
2015-11-29 10:01 ` [RFC PATCH 75/71] ncr5380: Remove FLAG_DTC3181E Ondrej Zary
2015-11-30  4:56   ` Finn Thain
2015-12-03 23:03 ` [RFC PATCH 76/71] ncr5380: Enable PDMA for DTC chips Ondrej Zary
2015-12-04  0:12   ` Julian Calaby
2015-12-04  8:38     ` Finn Thain
2015-12-05  1:32       ` Julian Calaby
2015-12-05  2:12         ` Finn Thain
2015-12-05  2:38           ` Julian Calaby
2015-12-04  9:08   ` Finn Thain
2015-12-04  9:32     ` Ondrej Zary
2015-12-04  9:20   ` Finn Thain
2015-12-03 23:03 ` [RFC PATCH 77/71] ncr5380: Fix wait for 53C80 registers registers after PDMA Ondrej Zary
2015-12-04 21:00 ` [PATCH 73/71] ncr5380: Use runtime register mapping Ondrej Zary
2015-12-06  3:39   ` Finn Thain
2015-12-06  8:42     ` Geert Uytterhoeven
2015-12-04 21:02 ` [PATCH 74/71] ncr5380: Enable PDMA for NCR53C400A Ondrej Zary
2015-12-06  3:41   ` Finn Thain
2015-12-04 21:17 ` [PATCH 76/71] ncr5380: Enable PDMA for DTC chips Ondrej Zary
2015-12-06  3:40   ` Finn Thain
2015-12-06 22:47     ` Ondrej Zary
2015-12-05 21:18 ` [RFC PATCH 78/71] ncr5380: Add support for HP 53C400A-based cards (C2502) Ondrej Zary
2015-12-06  3:39   ` Finn Thain
2015-12-06 22:20 ` [PATCH v2 73/71] ncr5380: Use runtime register mapping Ondrej Zary
2015-12-06 22:21 ` [PATCH v2 74/71] ncr5380: Enable PDMA for NCR53C400A Ondrej Zary
2015-12-08  2:05   ` Finn Thain
2015-12-09 13:39     ` Ondrej Zary
2015-12-10 23:39       ` Finn Thain
2015-12-06 22:55 ` [PATCH v2 76/71] ncr5380: Enable PDMA for DTC chips Ondrej Zary
2015-12-06 23:17 ` [PATCH v2 77/71] ncr5380: Fix wait for 53C80 registers registers after PDMA Ondrej Zary
2015-12-07  3:16   ` Finn Thain
2015-12-07  8:08     ` Ondrej Zary
2015-12-06 23:20 ` [PATCH v3 76/71] ncr5380: Enable PDMA for DTC chips Ondrej Zary
2015-12-08  7:51 ` [PATCH v2 78/71] ncr5380: Add support for HP 53C400A-based cards (C2502) Ondrej Zary
2015-12-08 11:40   ` Finn Thain
2015-12-09 11:33     ` Ondrej Zary
2015-12-10 23:38       ` Finn Thain
2015-12-09 12:11 ` [PATCH v3 " Ondrej Zary

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20151118083507.511702423@telegraphics.com.au \
    --to=fthain@telegraphics.com.au \
    --cc=JBottomley@odin.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-m68k@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=schmitzmic@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox