Skip to content

Commit

Permalink
scsi: delete the MCA specific drivers and driver code
Browse files Browse the repository at this point in the history
The support for CONFIG_MCA is being removed, since the 20
year old hardware simply isn't capable of meeting today's
software demands on CPU and memory resources.

This commit removes the MCA specific SCSI drivers, and the
MCA specific portions of code in dual role ISA/MCA drivers.
Also, the MCA specific SCSI documentation is removed.

Cc: James Bottomley <JBottomley@parallels.com>
Cc: linux-scsi@vger.kernel.org
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
  • Loading branch information
Paul Gortmaker committed May 17, 2012
1 parent d157be8 commit a88dc06
Show file tree
Hide file tree
Showing 10 changed files with 6 additions and 5,414 deletions.
2 changes: 0 additions & 2 deletions Documentation/scsi/00-INDEX
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,6 @@ g_NCR5380.txt
- info on driver for NCR5380 and NCR53c400 based adapters
hptiop.txt
- HIGHPOINT ROCKETRAID 3xxx RAID DRIVER
ibmmca.txt
- info on driver for IBM adapters with MCA bus
in2000.txt
- info on in2000 driver
libsas.txt
Expand Down
1,402 changes: 0 additions & 1,402 deletions Documentation/scsi/ibmmca.txt

This file was deleted.

6 changes: 0 additions & 6 deletions Documentation/scsi/scsi-parameters.txt
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,6 @@ parameters may be changed at runtime by the command

eata= [HW,SCSI]

fd_mcs= [HW,SCSI]
See header of drivers/scsi/fd_mcs.c.

fdomain= [HW,SCSI]
See header of drivers/scsi/fdomain.c.

Expand All @@ -48,9 +45,6 @@ parameters may be changed at runtime by the command

gvp11= [HW,SCSI]

ibmmcascsi= [HW,MCA,SCSI] IBM MicroChannel SCSI adapter
See Documentation/mca.txt.

in2000= [HW,SCSI]
See header of drivers/scsi/in2000.c.

Expand Down
2 changes: 1 addition & 1 deletion Documentation/scsi/scsi_mid_low_api.txt
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ the motherboard (or both). Some aic7xxx based HBAs are dual controllers
and thus represent two hosts. Like most modern HBAs, each aic7xxx host
has its own PCI device address. [The one-to-one correspondence between
a SCSI host and a PCI device is common but not required (e.g. with
ISA or MCA adapters).]
ISA adapters).]

The SCSI mid level isolates an LLD from other layers such as the SCSI
upper layer drivers and the block layer.
Expand Down
83 changes: 0 additions & 83 deletions drivers/scsi/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -807,19 +807,6 @@ config SCSI_FUTURE_DOMAIN
To compile this driver as a module, choose M here: the
module will be called fdomain.

config SCSI_FD_MCS
tristate "Future Domain MCS-600/700 SCSI support"
depends on MCA_LEGACY && SCSI
---help---
This is support for Future Domain MCS 600/700 MCA SCSI adapters.
Some PS/2 computers are equipped with IBM Fast SCSI Adapter/A which
is identical to the MCS 700 and hence also supported by this driver.
This driver also supports the Reply SB16/SCSI card (the SCSI part).
It supports multiple adapters in the same system.

To compile this driver as a module, choose M here: the
module will be called fd_mcs.

config SCSI_GDTH
tristate "Intel/ICP (former GDT SCSI Disk Array) RAID Controller support"
depends on (ISA || EISA || PCI) && SCSI && ISA_DMA_API
Expand Down Expand Up @@ -889,76 +876,6 @@ config SCSI_GENERIC_NCR53C400
not detect your card. See the file
<file:Documentation/scsi/g_NCR5380.txt> for details.

config SCSI_IBMMCA
tristate "IBMMCA SCSI support"
depends on MCA && SCSI
---help---
This is support for the IBM SCSI adapter found in many of the PS/2
series computers. These machines have an MCA bus, so you need to
answer Y to "MCA support" as well and read
<file:Documentation/mca.txt>.

If the adapter isn't found during boot (a common problem for models
56, 57, 76, and 77) you'll need to use the 'ibmmcascsi=<pun>' kernel
option, where <pun> is the id of the SCSI subsystem (usually 7, but
if that doesn't work check your reference diskette). Owners of
model 95 with a LED-matrix-display can in addition activate some
activity info like under OS/2, but more informative, by setting
'ibmmcascsi=display' as an additional kernel parameter. Try "man
bootparam" or see the documentation of your boot loader about how to
pass options to the kernel.

To compile this driver as a module, choose M here: the
module will be called ibmmca.

config IBMMCA_SCSI_ORDER_STANDARD
bool "Standard SCSI-order"
depends on SCSI_IBMMCA
---help---
In the PC-world and in most modern SCSI-BIOS-setups, SCSI-hard disks
are assigned to the drive letters, starting with the lowest SCSI-id
(physical number -- pun) to be drive C:, as seen from DOS and
similar operating systems. When looking into papers describing the
ANSI-SCSI-standard, this assignment of drives appears to be wrong.
The SCSI-standard follows a hardware-hierarchy which says that id 7
has the highest priority and id 0 the lowest. Therefore, the host
adapters are still today everywhere placed as SCSI-id 7 by default.
In the SCSI-standard, the drive letters express the priority of the
disk. C: should be the hard disk, or a partition on it, with the
highest priority. This must therefore be the disk with the highest
SCSI-id (e.g. 6) and not the one with the lowest! IBM-BIOS kept the
original definition of the SCSI-standard as also industrial- and
process-control-machines, like VME-CPUs running under realtime-OSes
(e.g. LynxOS, OS9) do.

If you like to run Linux on your MCA-machine with the same
assignment of hard disks as seen from e.g. DOS or OS/2 on your
machine, which is in addition conformant to the SCSI-standard, you
must say Y here. This is also necessary for MCA-Linux users who want
to keep downward compatibility to older releases of the
IBM-MCA-SCSI-driver (older than driver-release 2.00 and older than
June 1997).

If you like to have the lowest SCSI-id assigned as drive C:, as
modern SCSI-BIOSes do, which does not conform to the standard, but
is widespread and common in the PC-world of today, you must say N
here. If unsure, say Y.

config IBMMCA_SCSI_DEV_RESET
bool "Reset SCSI-devices at boottime"
depends on SCSI_IBMMCA
---help---
By default, SCSI-devices are reset when the machine is powered on.
However, some devices exist, like special-control-devices,
SCSI-CNC-machines, SCSI-printer or scanners of older type, that do
not reset when switched on. If you say Y here, each device connected
to your SCSI-bus will be issued a reset-command after it has been
probed, while the kernel is booting. This may cause problems with
more modern devices, like hard disks, which do not appreciate these
reset commands, and can cause your system to hang. So say Y only if
you know that one of your older devices needs it; N is the safe
answer.

config SCSI_IPS
tristate "IBM ServeRAID support"
depends on PCI && SCSI
Expand Down
2 changes: 0 additions & 2 deletions drivers/scsi/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,6 @@ obj-$(CONFIG_SCSI_AIC94XX) += aic94xx/
obj-$(CONFIG_SCSI_PM8001) += pm8001/
obj-$(CONFIG_SCSI_ISCI) += isci/
obj-$(CONFIG_SCSI_IPS) += ips.o
obj-$(CONFIG_SCSI_FD_MCS) += fd_mcs.o
obj-$(CONFIG_SCSI_FUTURE_DOMAIN)+= fdomain.o
obj-$(CONFIG_SCSI_IN2000) += in2000.o
obj-$(CONFIG_SCSI_GENERIC_NCR5380) += g_NCR5380.o
Expand All @@ -100,7 +99,6 @@ obj-$(CONFIG_SCSI_SYM53C8XX_2) += sym53c8xx_2/
obj-$(CONFIG_SCSI_ZALON) += zalon7xx.o
obj-$(CONFIG_SCSI_EATA_PIO) += eata_pio.o
obj-$(CONFIG_SCSI_7000FASST) += wd7000.o
obj-$(CONFIG_SCSI_IBMMCA) += ibmmca.o
obj-$(CONFIG_SCSI_EATA) += eata.o
obj-$(CONFIG_SCSI_DC395x) += dc395x.o
obj-$(CONFIG_SCSI_DC390T) += tmscsim.o
Expand Down
66 changes: 2 additions & 64 deletions drivers/scsi/aha1542.c
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
* Added module command-line options
* 19-Jul-99
* Modified by Adam Fritzler
* Added proper detection of the AHA-1640 (MCA version of AHA-1540)
* Added proper detection of the AHA-1640 (MCA, now deleted)
*/

#include <linux/module.h>
Expand All @@ -37,8 +37,6 @@
#include <linux/spinlock.h>
#include <linux/isapnp.h>
#include <linux/blkdev.h>
#include <linux/mca.h>
#include <linux/mca-legacy.h>
#include <linux/slab.h>

#include <asm/dma.h>
Expand Down Expand Up @@ -71,7 +69,7 @@
#define MAXBOARDS 4 /* Increase this and the sizes of the
arrays below, if you need more.. */

/* Boards 3,4 slots are reserved for ISAPnP/MCA scans */
/* Boards 3,4 slots are reserved for ISAPnP scans */

static unsigned int bases[MAXBOARDS] __initdata = {0x330, 0x334, 0, 0};

Expand Down Expand Up @@ -1008,66 +1006,6 @@ static int __init aha1542_detect(struct scsi_host_template * tpnt)
}
#endif

/*
* Find MicroChannel cards (AHA1640)
*/
#ifdef CONFIG_MCA_LEGACY
if(MCA_bus) {
int slot = 0;
int pos = 0;

for (indx = 0; (slot != MCA_NOTFOUND) && (indx < ARRAY_SIZE(bases)); indx++) {

if (bases[indx])
continue;

/* Detect only AHA-1640 cards -- MCA ID 0F1F */
slot = mca_find_unused_adapter(0x0f1f, slot);
if (slot == MCA_NOTFOUND)
break;

/* Found one */
pos = mca_read_stored_pos(slot, 3);

/* Decode address */
if (pos & 0x80) {
if (pos & 0x02) {
if (pos & 0x01)
bases[indx] = 0x334;
else
bases[indx] = 0x234;
} else {
if (pos & 0x01)
bases[indx] = 0x134;
}
} else {
if (pos & 0x02) {
if (pos & 0x01)
bases[indx] = 0x330;
else
bases[indx] = 0x230;
} else {
if (pos & 0x01)
bases[indx] = 0x130;
}
}

/* No need to decode IRQ and Arb level -- those are
* read off the card later.
*/
printk(KERN_INFO "Found an AHA-1640 in MCA slot %d, I/O 0x%04x\n", slot, bases[indx]);

mca_set_adapter_name(slot, "Adapter AHA-1640");
mca_set_adapter_procfn(slot, NULL, NULL);
mca_mark_as_used(slot);

/* Go on */
slot++;
}

}
#endif

/*
* Hunt for ISA Plug'n'Pray Adaptecs (AHA1535)
*/
Expand Down
Loading

0 comments on commit a88dc06

Please sign in to comment.