Copyright (c) 1998-2001 by David S. Lawyer
Please freely copy and distribute (sell or give away) this document in any format. Send any corrections and comments to the document maintainer. You may create a derivative work and distribute it provided that you:
If you're considering making a derived work other than a translation, it's requested that you discuss your plans with the current maintainer.
While I haven't intentionally tried to mislead you, there are likely a number of errors in this document. Please let me know about them. Since this is free documentation, it should be obvious that I cannot be held legally responsible for any errors.
Any brand names (starts with a capital letter) should be assumed to be a trademark). Such trademarks belong to their respective owners.
Please let me know of any errors in facts, opinions, logic, spelling, grammar, clarity, links, etc. But first, if the date is over a month old, check to see that you have the latest version. Please send me any info that you think belongs in this document.
I haven't studied the code used by various Linux drivers to implement Plug-and-Play. Nor do I fully understand how PnP is configured by the BIOS (it depends on which BIOS) nor how Windows9x updates the ESCD. Thus this HOWTO is still incomplete and may be inaccurate (let me know where I'm wrong). In this HOWTO I've sometimes used ?? to indicate that I don't really know the answer.
New versions of the Plug-and-Play-HOWTO should appear every couple of months or so and will be available to browse and/or download at LDP mirror sites. For a list of mirror sites see: http://www.linuxdoc.org/mirrors.html. Various formats are available. If you only want to quickly check the date of the latest version look at: http://www.linuxdoc.org/HOWTO/Plug-and-Play-HOWTO.html. The version you are now reading is: v1.03, August 2001 .
v1.03 August 2001: error messages, boot-prompt parameters v1.02 July 2001: PCI config regs. v1.01 April 2001: less shortage today of bus-resources, clarity in sect. 2, Windows 2000 OK (even if "not a PnP OS" in CMOS) v1.01 April 2001: less shortage today of bus-resources, clarity in sect. 2, Windows 2000 OK (even if "not a PnP OS" in CMOS)
The version 1.0 (Nov. 2000) was long overdue and recognized that the kernel is doing more in helping device drivers set up PnP. Kernel 2.4 is significantly improved in this respect. There's still a lot of improvements needed in both this HOWTO and the way that Linux does PnP.
Plug-and-play (PnP) is a system which automatically detects PC devices such as disks, sound cards, ethernet cards, modems, etc. It also does some low-level configuring of them. To be detected by PnP, the device must be designed for PnP. Non-PnP devices (or PnP devices which have been correctly PnP-configured), can often be detected by non-PnP methods.
While the Linux kernel has no centralized plug-and-play system, it does provide programs which various device drivers can use to do their own plug-and-play. Many drivers take advantage of this and find your PnP devices OK. The BIOS hardware of your PC likely may also do some plug-and-play work. Thus if everything works OK PnP-wise, you can use your computer without needing to know anything about plug-and-play. But if some devices which are supported by Linux don't work (because they not discovered or configured correctly by PnP) then you may need to read some of this HOWTO. You'll learn not only about PnP but also something about how communication takes place inside the computer.
In this document I mention so many things that can go wrong that one who believes in Murphy's Law (If something can go wrong it will) may become quite alarmed. But for PnP for most people: If something can go wrong it usually doesn't. Remember that sometimes problems which seem to be PnP related are actually due to defective hardware or to hardware that doesn't conform to PnP specs.