pccardd — PC-CARD (PCMCIA) management daemon
pccardd [−d] [−v] [−x] [−z] [−i IRQ] [−I] [−f configfile] [−s socket]
The pccardd utility is normally started at boot time, and manages the insertion and removal of PC-CARD cards.
When started, pccardd will read the configuration file (default name /etc/defaults/pccard.conf which includes /etc/pccard.conf as the user configuration file) and scans the available PC-CARD slots for cards. The pccardd utility then waits for card events, such as the insertion of a new card or the removal of a card.
When a card is inserted, the following actions are taken:
The kernel driver detects the card insertion and applies power to the card.
The pccardd utility reads the CIS data from the attribute memory of the card, and uses the manufacturer name and card version to match the card description in the configuration file.
Once matched, a driver is allocated.
Once a free driver and device instance is located, pccardd will (if required) allocate resources such as an ISA memory block and Input/Output ports from a common pool.
The PC-CARD slot is configured with the I/O and memory contexts allocated, and the kernel driver is attached to this card.
If the attach succeeds, then specific shell commands may be executed to configure the device, such as ifconfig(8) to set up a network interface. Separate commands may be specified for each card, driver or device, and are executed in that order.
When pccardd detects that a card has been removed, the following sequence occurs:
The shell commands associated with card removal are executed. These are intended to reset any device associated with the removed card. Separate commands may exist for card, driver and device instances.
The PC-CARD slot resources are freed.
Once a card/driver instance is configured, the resources bound to that instance are remembered, and if the card is removed and reinserted, the same driver is allocated. The reasons are mostly historical.
SIGHUP causes pccardd to reload the configuration files.
The start options understood by pccardd are:
Do not run as a daemon, but run in the foreground and display error messages.
After reading the configuration file, print out a summary of it.
Exits immediately after the cards have been probed and attached. This is primarily useful in embedded applications where it is desirable to use pccardd to start PC-CARD devices but prohibitive memory-wise to leave the pccardd process running.
Delays running as a daemon until after the cards have been probed and attached.
Don’t get a list of free IRQs from kernel.
Configures an available IRQ. It overrides the "irq" line in /etc/defaults/pccard.conf and /etc/pccard.conf.
Specifies a different configuration file to be used in placed of the default file /etc/defaults/pccard.conf. The file format is detailed in pccard.conf(5), and lists the PC-CARD cards recognized by pccardd, and the kernel drivers and devices that are used to interface to the card.
Specifies a path to a control socket. The default is /var/tmp/.pccardd.
default configuration file
user configuration file
default control socket
process id of the currently running pccardd
Developed by Andrew McRae <andrew [AT] mega.au>.
The pccardd utility can set up card parameters, but cannot guarantee that particular drivers can work with the card.
Removing cards may cause problems if system resources have been associated with the card, such as network mounted file systems.
BSD November 1, 1994 BSD