Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
PCCARDD(8)		  BSD System Manager's Manual		    PCCARDD(8)

     pccardd --	PC-CARD	(PCMCIA) management daemon

     pccardd [-d] [-v] [-z] [-i	IRQ] [-I] [-f configfile]

     Pccardd 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.
     Pccardd 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:

     1.	  The kernel driver detects the	card insertion and applies power to
	  the card.

     2.	  Pccardd 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.

     3.	  Once matched,	a driver is allocated.

     4.	  Once a free driver and device	instance is located, pccardd will (if
	  required) allocate resources such as an ISA memory block and In-
	  put/Output ports from	a common pool.

     5.	  The PC-CARD slot is configured with the I/O and memory contexts al-
	  located, and the kernel driver is attached to	this card.

     6.	  If the attach	succeeds, then specific	shell commands may be executed
	  to configure the device, such	as ifconfig(8) to set up a network in-
	  terface.  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

     1.	  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.

     2.	  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 primary reason is that once	a driver is
     associated	with a card, the driver's probe() routine has been called, and
     this usually causes driver	specific data areas to be initialized with the
     I/O ports or memory resources allocated to	the card.  Most	drivers	are
     not designed to be	disassociated from the hardware	and then reassociated
     with different parameters.	 This will change significantly	when loadable
     kernel modules are	supported.

     SIGHUP causes pccardd to reload the configuration files.

     The start options understood by pccardd are:

     -d	     Do	not run	as a daemon, but run in	the foreground and display er-
	     ror messages.

     -v	     After reading the configuration file, print out a summary of it.

     -z	     Delays running as a daemon	until after the	cards have been	probed
	     and attached.

     -I	     Don't get a list of free IRQs from	kernel.

     -i	IRQ  Configures	an available IRQ.  It overrides	the "irq" line in
	     /etc/defaults/pccard.conf and /etc/pccard.conf.

     -f	configfile
	     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 recog-
	     nized by pccardd, and the kernel drivers and devices that are
	     used to interface to the card.

     /etc/defaults/pccard.conf	default	configuration file
     /etc/pccard.conf		user configuration file
     /var/run/	process	id of the currently running pccardd

     pccard.conf(5), ifconfig(8)

     Developed by Andrew McRae <>.

     Pccardd 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 associ-
     ated with the card, such as network mounted filesystems.

BSD			       November	1, 1994				   BSD


Want to link to this manual page? Use this URL:

home | help