Other PC Buses
PCI and ISA are the most commonly used peripheral interfaces in the PC world, but they aren’t the only ones. Here’s a summary of the features of other buses found in the PC market.
MCA
''Micro Channel Architecture'' (MCA) is an IBM standard used in PS/2 computers and some laptops. The main problem with Micro Channel is the lack of documentation, which has resulted in a lack of Linux support for MCA. As of 2.1.15, however, MCA patches that had been floating around have been included in the official kernel; newer kernels can therefore run on PS/2 computers.
At the hardware level, Micro Channel has more features than ISA. It supports multimaster DMA, 32-bit address and data lines, shared interrupt lines, and geographical addressing to access per-board configuration registers. Such registers are called ``Programmable Option Select,'' or POS, but they don’t have all the features of the PCI registers. Linux support for Micro Channel includes functions that are exported to modules.
A device driver can read the integer value MCA_bus
to
see if it is running on a Micro Channel computer.
MCA_bus
is non-zero only if the kernel is running in an
MCA unit. If the symbol is a preprocessor macro, the macro
MCA_bus__is_a_macro
is defined as well. If
MCA_bus__is_a_macro
is undefined, then MCA_bus
is an
integer variable exported to modularized code. As a matter of fact,
MCA_bus
is still a macro hardwired to 0 for every platform except the PC--the Linux x86 port changed the macro to a ...
Get Linux Device Drivers now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.