[PATCH 04/10] gdth: remove ISA and EISA support

2018-12-11 Thread Christoph Hellwig
The non-PCI code has bitrotted for quite a while and will just oops
on load because it passes a NULL pointer to the PCI DMA routines.

Lets kill it for good - if someone really wants to use one of these
cards I'll help mentoring them to write a proper driver glue.

Signed-off-by: Christoph Hellwig 
---
 drivers/scsi/Kconfig |   2 +-
 drivers/scsi/gdth.c  | 709 ++-
 drivers/scsi/gdth.h  |  30 --
 3 files changed, 24 insertions(+), 717 deletions(-)

diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
index f07444d30b21..0cfa385625d8 100644
--- a/drivers/scsi/Kconfig
+++ b/drivers/scsi/Kconfig
@@ -676,7 +676,7 @@ config SCSI_DMX3191D
 
 config SCSI_GDTH
tristate "Intel/ICP (former GDT SCSI Disk Array) RAID Controller 
support"
-   depends on (ISA || EISA || PCI) && SCSI && ISA_DMA_API
+   depends on PCI && SCSI
---help---
  Formerly called GDT SCSI Disk Array Controller Support.
 
diff --git a/drivers/scsi/gdth.c b/drivers/scsi/gdth.c
index d065fe8ac013..5d71eb8bf6fd 100644
--- a/drivers/scsi/gdth.c
+++ b/drivers/scsi/gdth.c
@@ -1,6 +1,6 @@
 /
  * Linux driver for *  
- * ICP vortex GmbH:GDT ISA/EISA/PCI Disk Array Controllers  *
+ * ICP vortex GmbH:GDT PCI Disk Array Controllers   *
  * Intel Corporation:  Storage RAID Controllers *
  *  *
  * gdth.c   *
@@ -32,15 +32,10 @@
  /
 
 /* All GDT Disk Array Controllers are fully supported by this driver.
- * This includes the PCI/EISA/ISA SCSI Disk Array Controllers and the
+ * This includes the PCI SCSI Disk Array Controllers and the
  * PCI Fibre Channel Disk Array Controllers. See gdth.h for a complete
  * list of all controller types.
  * 
- * If you have one or more GDT3000/3020 EISA controllers with 
- * controller BIOS disabled, you have to set the IRQ values with the 
- * command line option "gdth=irq1,irq2,...", where the irq1,irq2,... are
- * the IRQ values for the EISA controllers.
- * 
  * After the optional list of IRQ values, other possible 
  * command line options are:
  * disable:Ydisable driver
@@ -61,14 +56,12 @@
  *  access a shared resource from several nodes, 
  *  appropriate controller firmware required
  * shared_access:N  enable driver reserve/release protocol
- * probe_eisa_isa:Y scan for EISA/ISA controllers
- * probe_eisa_isa:N do not scan for EISA/ISA controllers
  * force_dma32:Yuse only 32 bit DMA mode
  * force_dma32:Nuse 64 bit DMA mode, if supported
  *
  * The default values are: "gdth=disable:N,reserve_mode:1,reverse_scan:N,
  *  max_ids:127,rescan:N,hdr_channel:0,
- *  shared_access:Y,probe_eisa_isa:N,force_dma32:N".
+ *  shared_access:Y,force_dma32:N".
  * Here is another example: "gdth=reserve_list:0,1,2,0,0,1,3,0,rescan:Y".
  * 
  * When loading the gdth driver as a module, the same options are available. 
@@ -79,7 +72,7 @@
  * 
  * Default: "modprobe gdth disable=0 reserve_mode=1 reverse_scan=0
  *   max_ids=127 rescan=0 hdr_channel=0 shared_access=0
- *   probe_eisa_isa=0 force_dma32=0"
+ *   force_dma32=0"
  * The other example: "modprobe gdth reserve_list=0,1,2,0,0,1,3,0 rescan=1".
  */
 
@@ -286,12 +279,6 @@ static struct timer_list gdth_timer;
 
 #define BUS_L2P(a,b)((b)>(a)->virt_bus ? (b-1):(b))
 
-#ifdef CONFIG_ISA
-static u8   gdth_drq_tab[4] = {5,6,7,7};/* DRQ table */
-#endif
-#if defined(CONFIG_EISA) || defined(CONFIG_ISA)
-static u8   gdth_irq_tab[6] = {0,10,11,12,14,0};/* IRQ table */
-#endif
 static u8   gdth_polling;   /* polling if TRUE */
 static int  gdth_ctr_count  = 0;/* controller count */
 static LIST_HEAD(gdth_instances);   /* controller list */
@@ -325,10 +312,6 @@ static u8 gdth_direction_tab[0x100] = {
 };
 
 /* LILO and modprobe/insmod parameters */
-/* IRQ list for GDT3000/3020 EISA controllers */
-static int irq[MAXHA] __initdata = 
-{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
- 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff};
 /* disable driver flag */
 static int disable __initdata = 0;
 /* reserve flag */
@@ -348,13 +331,10 @@ static int max_ids = MAXID;
 static int rescan = 0;
 /* shared access */
 static int shared_access = 1;
-/* enable support for EISA and ISA controllers */
-static int probe_eisa_isa = 0;
 /* 64 bit DMA mode, support for drives > 2 TB, if force_dma32 = 0 */
 static int force_dma32 = 0;
 
 /* parameters for 

[PATCH 04/10] gdth: remove ISA and EISA support

2018-12-06 Thread Christoph Hellwig
The non-PCI code has bitrotted for quite a while and will just oops
on load because it passes a NULL pointer to the PCI DMA routines.

Lets kill it for good - if someone really wants to use one of these
cards I'll help mentoring them to write a proper driver glue.

Signed-off-by: Christoph Hellwig 
---
 drivers/scsi/Kconfig |   2 +-
 drivers/scsi/gdth.c  | 709 ++-
 drivers/scsi/gdth.h  |  30 --
 3 files changed, 24 insertions(+), 717 deletions(-)

diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
index f07444d30b21..0cfa385625d8 100644
--- a/drivers/scsi/Kconfig
+++ b/drivers/scsi/Kconfig
@@ -676,7 +676,7 @@ config SCSI_DMX3191D
 
 config SCSI_GDTH
tristate "Intel/ICP (former GDT SCSI Disk Array) RAID Controller 
support"
-   depends on (ISA || EISA || PCI) && SCSI && ISA_DMA_API
+   depends on PCI && SCSI
---help---
  Formerly called GDT SCSI Disk Array Controller Support.
 
diff --git a/drivers/scsi/gdth.c b/drivers/scsi/gdth.c
index 7174e7a88da2..45ddecd0284c 100644
--- a/drivers/scsi/gdth.c
+++ b/drivers/scsi/gdth.c
@@ -1,6 +1,6 @@
 /
  * Linux driver for *  
- * ICP vortex GmbH:GDT ISA/EISA/PCI Disk Array Controllers  *
+ * ICP vortex GmbH:GDT PCI Disk Array Controllers   *
  * Intel Corporation:  Storage RAID Controllers *
  *  *
  * gdth.c   *
@@ -32,15 +32,10 @@
  /
 
 /* All GDT Disk Array Controllers are fully supported by this driver.
- * This includes the PCI/EISA/ISA SCSI Disk Array Controllers and the
+ * This includes the PCI SCSI Disk Array Controllers and the
  * PCI Fibre Channel Disk Array Controllers. See gdth.h for a complete
  * list of all controller types.
  * 
- * If you have one or more GDT3000/3020 EISA controllers with 
- * controller BIOS disabled, you have to set the IRQ values with the 
- * command line option "gdth=irq1,irq2,...", where the irq1,irq2,... are
- * the IRQ values for the EISA controllers.
- * 
  * After the optional list of IRQ values, other possible 
  * command line options are:
  * disable:Ydisable driver
@@ -61,14 +56,12 @@
  *  access a shared resource from several nodes, 
  *  appropriate controller firmware required
  * shared_access:N  enable driver reserve/release protocol
- * probe_eisa_isa:Y scan for EISA/ISA controllers
- * probe_eisa_isa:N do not scan for EISA/ISA controllers
  * force_dma32:Yuse only 32 bit DMA mode
  * force_dma32:Nuse 64 bit DMA mode, if supported
  *
  * The default values are: "gdth=disable:N,reserve_mode:1,reverse_scan:N,
  *  max_ids:127,rescan:N,hdr_channel:0,
- *  shared_access:Y,probe_eisa_isa:N,force_dma32:N".
+ *  shared_access:Y,force_dma32:N".
  * Here is another example: "gdth=reserve_list:0,1,2,0,0,1,3,0,rescan:Y".
  * 
  * When loading the gdth driver as a module, the same options are available. 
@@ -79,7 +72,7 @@
  * 
  * Default: "modprobe gdth disable=0 reserve_mode=1 reverse_scan=0
  *   max_ids=127 rescan=0 hdr_channel=0 shared_access=0
- *   probe_eisa_isa=0 force_dma32=0"
+ *   force_dma32=0"
  * The other example: "modprobe gdth reserve_list=0,1,2,0,0,1,3,0 rescan=1".
  */
 
@@ -286,12 +279,6 @@ static struct timer_list gdth_timer;
 
 #define BUS_L2P(a,b)((b)>(a)->virt_bus ? (b-1):(b))
 
-#ifdef CONFIG_ISA
-static u8   gdth_drq_tab[4] = {5,6,7,7};/* DRQ table */
-#endif
-#if defined(CONFIG_EISA) || defined(CONFIG_ISA)
-static u8   gdth_irq_tab[6] = {0,10,11,12,14,0};/* IRQ table */
-#endif
 static u8   gdth_polling;   /* polling if TRUE */
 static int  gdth_ctr_count  = 0;/* controller count */
 static LIST_HEAD(gdth_instances);   /* controller list */
@@ -325,10 +312,6 @@ static u8 gdth_direction_tab[0x100] = {
 };
 
 /* LILO and modprobe/insmod parameters */
-/* IRQ list for GDT3000/3020 EISA controllers */
-static int irq[MAXHA] __initdata = 
-{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
- 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff};
 /* disable driver flag */
 static int disable __initdata = 0;
 /* reserve flag */
@@ -348,13 +331,10 @@ static int max_ids = MAXID;
 static int rescan = 0;
 /* shared access */
 static int shared_access = 1;
-/* enable support for EISA and ISA controllers */
-static int probe_eisa_isa = 0;
 /* 64 bit DMA mode, support for drives > 2 TB, if force_dma32 = 0 */
 static int force_dma32 = 0;
 
 /* parameters for