At the moment, I only support removal. The way it works is as follows.
Upon system start up my device driver detects all of the boards which are
present (I support up to six). For each board it allocates the necessary I/O
lists memory needed for operation. All addresses are then mapped to user
space with a mmap interface. Now, all HW is accessible from user space. For
each device, an ISR is installed. As soon as the ejector handle for a
particular device is opened, the board (which is a Motorola 68060 based
board) issues an interrupt to me. I will shut this board down and
de-allocate any of the previously reserved resources. What is not so easy is
to perform the insert. I thought about allocating memory becessary for a
maximum configuration, but I would still need to get the insertion event.
But anyway since our device (even though it has multiple boards internally)
is seen as a monolithic device from the main controlling host, the loss of a
single board causes it to be taken out of service.
phone (561) 923-6550
From: Greg KH [mailto:firstname.lastname@example.org]
Sent: Wednesday, September 18, 2002 5:31 PM
To: Bloch, Jack
Subject: Re: Linux hot swap support
On Wed, Sep 18, 2002 at 05:09:50PM -0400, Bloch, Jack wrote:
> Our HW uses an AMCC S5935 PCI controller. Right now, since we own both
> device and SW, we are using a simple interrupt mechanism to accomplish the
> hot swap.
What do you mean "simple interrupt mechanism"? How does the OS know
that a PCI card has disappeared or show up?
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to email@example.com
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Mon Sep 23 2002 - 22:00:24 EST