1
<?xml version="1.0" encoding="UTF-8"?>
2
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
3
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" []>
7
<title>MCA Driver Programming Interface</title>
11
<firstname>Alan</firstname>
12
<surname>Cox</surname>
15
<email>alan@lxorguk.ukuu.org.uk</email>
20
<firstname>David</firstname>
21
<surname>Weinehall</surname>
24
<firstname>Chris</firstname>
25
<surname>Beauregard</surname>
31
<holder>Alan Cox</holder>
32
<holder>David Weinehall</holder>
33
<holder>Chris Beauregard</holder>
38
This documentation is free software; you can redistribute
39
it and/or modify it under the terms of the GNU General Public
40
License as published by the Free Software Foundation; either
41
version 2 of the License, or (at your option) any later
46
This program is distributed in the hope that it will be
47
useful, but WITHOUT ANY WARRANTY; without even the implied
48
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
49
See the GNU General Public License for more details.
53
You should have received a copy of the GNU General Public
54
License along with this program; if not, write to the Free
55
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
60
For more details see the file COPYING in the source
61
distribution of Linux.
69
<title>Introduction</title>
71
The MCA bus functions provide a generalised interface to find MCA
72
bus cards, to claim them for a driver, and to read and manipulate POS
73
registers without being aware of the motherboard internals or
74
certain deep magic specific to onboard devices.
77
The basic interface to the MCA bus devices is the slot. Each slot
78
is numbered and virtual slot numbers are assigned to the internal
79
devices. Using a pci_dev as other busses do does not really make
80
sense in the MCA context as the MCA bus resources require card
81
specific interpretation.
84
Finally the MCA bus functions provide a parallel set of DMA
85
functions mimicing the ISA bus DMA functions as closely as possible,
86
although also supporting the additional DMA functionality on the
91
<title>Known Bugs And Assumptions</title>
97
<chapter id="pubfunctions">
98
<title>Public Functions Provided</title>
99
!Edrivers/mca/mca-legacy.c
102
<chapter id="dmafunctions">
103
<title>DMA Functions Provided</title>
104
!Iarch/x86/include/asm/mca_dma.h