diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-05-23 20:12:06 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-05-23 20:12:06 -0400 |
commit | d5b4bb4d103cd601d8009f2d3a7e44586c9ae7cc (patch) | |
tree | 0f3b6da2b66fc7a4278764982279c2815c913010 /include/linux/mca-legacy.h | |
parent | c80ddb526331a72c9e9d1480f85f6fd7c74e3d2d (diff) | |
parent | bb8187d35f820671d6dd76700d77a6b55f95e2c5 (diff) |
Merge branch 'delete-mca' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux
Pull the MCA deletion branch from Paul Gortmaker:
"It was good that we could support MCA machines back in the day, but
realistically, nobody is using them anymore. They were mostly limited
to 386-sx 16MHz CPU and some 486 class machines and never more than
64MB of RAM. Even the enthusiast hobbyist community seems to have
dried up close to ten years ago, based on what you can find searching
various websites dedicated to the relatively short lived hardware.
So lets remove the support relating to CONFIG_MCA. There is no point
carrying this forward, wasting cycles doing routine maintenance on it;
wasting allyesconfig build time on validating it, wasting I/O on git
grep'ping over it, and so on."
Let's see if anybody screams. It generally has compiled, and James
Bottomley pointed out that there was a MCA extension from NCR that
allowed for up to 4GB of memory and PPro-class machines. So in *theory*
there may be users out there.
But even James (technically listed as a maintainer) doesn't actually
have a system, and while Alan Cox claims to have a machine in his cellar
that he offered to anybody who wants to take it off his hands, he didn't
argue for keeping MCA support either.
So we could bring it back. But somebody had better speak up and talk
about how they have actually been using said MCA hardware with modern
kernels for us to do that. And David already took the patch to delete
all the networking driver code (commit a5e371f61ad3: "drivers/net:
delete all code/drivers depending on CONFIG_MCA").
* 'delete-mca' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:
MCA: delete all remaining traces of microchannel bus support.
scsi: delete the MCA specific drivers and driver code
serial: delete the MCA specific 8250 support.
arm: remove ability to select CONFIG_MCA
Diffstat (limited to 'include/linux/mca-legacy.h')
-rw-r--r-- | include/linux/mca-legacy.h | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/include/linux/mca-legacy.h b/include/linux/mca-legacy.h deleted file mode 100644 index 7a3aea845902..000000000000 --- a/include/linux/mca-legacy.h +++ /dev/null | |||
@@ -1,66 +0,0 @@ | |||
1 | /* -*- mode: c; c-basic-offset: 8 -*- */ | ||
2 | |||
3 | /* This is the function prototypes for the old legacy MCA interface | ||
4 | * | ||
5 | * Please move your driver to the new sysfs based one instead */ | ||
6 | |||
7 | #ifndef _LINUX_MCA_LEGACY_H | ||
8 | #define _LINUX_MCA_LEGACY_H | ||
9 | |||
10 | #include <linux/mca.h> | ||
11 | |||
12 | #warning "MCA legacy - please move your driver to the new sysfs api" | ||
13 | |||
14 | /* MCA_NOTFOUND is an error condition. The other two indicate | ||
15 | * motherboard POS registers contain the adapter. They might be | ||
16 | * returned by the mca_find_adapter() function, and can be used as | ||
17 | * arguments to mca_read_stored_pos(). I'm not going to allow direct | ||
18 | * access to the motherboard registers until we run across an adapter | ||
19 | * that requires it. We don't know enough about them to know if it's | ||
20 | * safe. | ||
21 | * | ||
22 | * See Documentation/mca.txt or one of the existing drivers for | ||
23 | * more information. | ||
24 | */ | ||
25 | #define MCA_NOTFOUND (-1) | ||
26 | |||
27 | |||
28 | |||
29 | /* Returns the slot of the first enabled adapter matching id. User can | ||
30 | * specify a starting slot beyond zero, to deal with detecting multiple | ||
31 | * devices. Returns MCA_NOTFOUND if id not found. Also checks the | ||
32 | * integrated adapters. | ||
33 | */ | ||
34 | extern int mca_find_adapter(int id, int start); | ||
35 | extern int mca_find_unused_adapter(int id, int start); | ||
36 | |||
37 | extern int mca_mark_as_used(int slot); | ||
38 | extern void mca_mark_as_unused(int slot); | ||
39 | |||
40 | /* gets a byte out of POS register (stored in memory) */ | ||
41 | extern unsigned char mca_read_stored_pos(int slot, int reg); | ||
42 | |||
43 | /* This can be expanded later. Right now, it gives us a way of | ||
44 | * getting meaningful information into the MCA_info structure, | ||
45 | * so we can have a more interesting /proc/mca. | ||
46 | */ | ||
47 | extern void mca_set_adapter_name(int slot, char* name); | ||
48 | |||
49 | /* These routines actually mess with the hardware POS registers. They | ||
50 | * temporarily disable the device (and interrupts), so make sure you know | ||
51 | * what you're doing if you use them. Furthermore, writing to a POS may | ||
52 | * result in two devices trying to share a resource, which in turn can | ||
53 | * result in multiple devices sharing memory spaces, IRQs, or even trashing | ||
54 | * hardware. YOU HAVE BEEN WARNED. | ||
55 | * | ||
56 | * You can only access slots with this. Motherboard registers are off | ||
57 | * limits. | ||
58 | */ | ||
59 | |||
60 | /* read a byte from the specified POS register. */ | ||
61 | extern unsigned char mca_read_pos(int slot, int reg); | ||
62 | |||
63 | /* write a byte to the specified POS register. */ | ||
64 | extern void mca_write_pos(int slot, int reg, unsigned char byte); | ||
65 | |||
66 | #endif | ||