1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
|
hotswap - Supports hotswapping peripherals in portable computers.
Copyright (C) 2001 Tim Stadelmann
hotswap is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
hotswap allows you to register and unregister hotswappable IDE
devices, for example notebook computers modules, with the Linux
kernel.
It has been developed on and for a Dell Latitude C600, but does not
use any hardware programming information specific to that machine.
The program assumes by default that the module bay interfaces with the
secondary IDE bus (ide1 to the kernel), i.e, a CDROM device would show
up as /dev/hdc. A different IDE controller can be selected with a
command line option to accommodate different designs.
Please note that hotswapping support for IDE devices in the Linux
kernel is a bit of a kludge. Hotswapping does not work properly if
another device is present on the same IDE bus. It also does not allow
reconfiguration of the IDE controller itself, which will prevent DMA
from working properly if no device was present during boot. The
details depend on your combination of BIOS, kernel, and controller.
some kernel versions (early 2.4 series) will panic when trying to
insert an IDE device unless booted with. On other combinations of
kernel and controller hardware it is not safe to try and configure a
device that is not actually connected: the kernel will hang on the
next attempt to configure a device.
Hopefully some of these problems, which are due to the design of the
IDE subsystem, will be addressed in newer kernel releases.
There is generally no need to manage floppy disk devices. The FDC is
always present and configured. Actually, there is no standard way to
find out whether any devices are connected to it at all, and the
original PC controllers couldn't tell themselves---that's why we used to
store this information in the non-volatile clock RAM. Linux does not
care until you try to access the disk drive. If it's not there,
you'll just have to wait for the driver to time out. This is even
true for devices that are explicitly configured to be absent. Just
try to access /dev/fd1...
To see how to use the utility, please refer to the output of
hotswap --help.
There are also GUI frontends for KDE and Motif. By default, building
of all frontends is enabled. If you don't want one of them, or don't
have the required libraries installed, you can switch off by giving
the appropriate option to the top-level configure script.
Distribution maintainers are encouraged to package the individual
frontends separately to avoid unnecessary dependencies on the main
packages. This should be very easy, as they are implemented as
sub-packages and can be configured and build indepentently.
The backend is by default installed setuid root, as you obviously need
administrator privileges to mess with the IDE configuration. The
backend is small enough for you to audit if that concerns you. Of
course you can also delete the relevant part from the makefile and
require the user to become root explicitly to use it.
Unfortunately, the translations for the frontends are not up to date.
Although I've so far maintained the German translation myself, I'd be
more than willing to accept contributions from the outside. I'm not
involved in the translation team mailing list and presonally tend to
use English on my desktop exclusively.
As always, comments are welcome!
28th July 2003
- Tim Stadelmann <t.stadelmann1@physics.ox.ac.uk>
|