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

FreeBSD Manual Pages


home | help
PCCARD.CONF(5)		    BSD	File Formats Manual		PCCARD.CONF(5)

     pccard.conf -- pccardd(8) configuration file

     The pccard.conf file is the configuration file for	the pccardd(8) PC-CARD
     slot management daemon.  It provides information to allow card identifi-
     cation, and the matching of drivers (along	with driver resources) to the
     PC-CARD cards.

     There are four basic elements within the configuration file; An optional
     resource pool preceding the other sections, and one or more card
     identifiers, and device instances.	 The latter two	may appear in any or-
     der, and may be interspersed as desired.

     The /etc/pccard.conf file is included from	the file
     /etc/defaults/pccard.conf,	which contains the default resource pool set-
     tings and pccard identifiers database.  The user specific configuration
     can be specified in /etc/pccard.conf when the user	wishes to override
     these defaults and/or add additional entries.

     Each PC-CARD card contains	configuration tuples that provide the manufac-
     turer and card version; these are used to identify	the card specification
     in	the configuration file,	and from this find a driver that can be	used
     to	interface to the particular card.  There is a many-to-one mapping be-
     tween cards to drivers i.e	a single driver	may interface to multiple
     types of cards.  To aid this, card	parameters may be specified separately
     from the driver to	initialize the card or extract (in the case of a net-
     work card)	an Ethernet address.

     Once a driver is allocated	to a card, it stays allocated to that particu-
     lar card.	However, multiple instances of the same	type of	driver can be
     configured, so that if two	cards are plugged in that map to a similar
     type of driver, other driver instances of the same	name can be config-

     The insert	and remove commands allow a shell command line to be executed.
     The command to be executed	is the rest of the line	after the keyword.
     The line can be continued using a backslash.  A simple macro substitution
     allows the	current	kernel device name ($device) and network card Ethernet
     address ($ether) to be inserted into the command line.  pccardd(8)	uses
     the system(3) subroutine to execute the command line.

     pccardd(8)	will use syslog	to announce the	insertion and removal of
     cards.  It	uses either the	string set by the logstr command, or the manu-
     facturer and card version strings if none has been	set.

     Numeric values may	be expressed as	octal, hex or decimal.	If a decimal
     number has	k or K appended	to it, the value is multiplied by 1024.	Names
     may be quoted using double	quotes if spaces are required.	A hash charac-
     ter comments out the rest of the line.

   Resource pool
     The (optional) section specifies a	pool of	system resources such as ISA
     bus memory	address	space, Input/Output ports and interrupt	request	num-
     bers.  This resource pool is used to allocate address space and interrupt
     numbers dynamically according to the requirements specified in each
     driver description.

     The syntax	of the resources is as follows:

	   io start - end ...
	   memory address size ...
	   irq irq-number ...

     Each of the statements define I/O,	memory or IRQ blocks that can be used
     to	allocate to drivers when they are initialized.

     The syntax	of the debuglevel parameter:

	   debuglevel level

     Multiple lines of any of the above	statements may be present to allow
     separate blocks of	each resource to be defined.

   Card	Identifiers
     The syntax	for card identifiers is:

	   card	manufacturer version [add_info1	[add_info2 ]]
	   config index	driver interrupt [flags]
	   ether offset
	   reset time
	   iosize size
	   memsize size
	   insert command
	   remove command
	   logstr string

     The first line is mandatory; the latter statements	are optional and can
     appear in any order.  There may be	multiple config	lines.	The card pa-
     rameters are the Manufacturer name, card version and additional informa-
     tion add_info1, add_info2 that is used to match the values	from the
     card's CIS	memory.	 These parameter can be	described in extended regular
     expression	regex(3) if the	string is enclosed by '/' like "/.*/".	Each
     of	the expressions	is evaluated with a character '^' at top.

     The config	parameters select the particular card's	configuration index
     from the range available in the card's CIS, the driver that is to be as-
     sociated with this	configuration, and the interrupt level (if any)	to be
     assigned.	An optional set	of flags may be	assigned.  In index, specify
     either ``auto'' or	``default'' or the range available in the card's CIS.
     ``auto'' allows to	allocate resources automatically with information from
     the CIS and status	of using I/O resources.

     The optional ether	keyword	is used	when network cards have	their physical
     Ethernet address located within the attribute memory of the card.	The
     parameter of this statement indicates the offset within the attribute
     memory of the Ethernet address.  This value can be	used within insert/re-
     move commands using the $ether macro.

     The optional reset	keyword	specifies reset	duration at a card insertion
     in	time milliseconds.  Default is 100msec.

     iosize and	memsize	keywords are used with cards whose resources such as
     I/O ports and shared memory block are not specified in the	CIS tuple.

     The insert	and remove sections allow shell	commands to be specified that
     are executed when the card	is inserted or removed.	 Multiple insert and
     remove commands are allowed, and they are executed	in the order they are

     The logstr	command	allows the user	to set the string to be	logged when
     this card is inserted or removed.	If logstr isn't	specified, then	the
     manufacturer and card version strings from	the CIS	are used to synthesize
     the string	issued.

   Wildcard entries
     Following two wildcard entries of card identifiers	are available for
     generic type of the cards:

	   generic serial
	   generic fixed_disk

     The keyword serial	matches	``Functional ID: Serial	port/modem'' and
     fixed_disk	matches	``Fixed	disk card''.  The syntax is the	same of	card
     identifiers but used ``generic'' instead of ``card'' in the first line.
     These are in the last of pccard.conf because unmatched cards with the
     other card	entries	can match these	entries	secondly.  The alias ``func-
     tion'' can	be used	instead	of ``generic'' because of the historical rea-

     A typical configuration file may appear thus:

     # Sample configuration file.
     # Pool parameters.
     io	0x280 -	0x2F0 0x300 - 0x360
     irq 5 6 8 9 10 15
     memory 0xd4000 96k
     memory 0xc4000 32k
     # Card database.
     card "RPTI	LTD." "EP400"  # NE2000	clone
	    ether 0x110
	    config 0x21	"ed0" 5
	    insert ifconfig $device physical $ether
	    insert ifconfig $device bean
	    remove ifconfig $device down

     card "XYZZY" "FAX/1.0"
	    config 0x30	"sio1" 11
	    insert echo	start getty
	    remove echo	stop getty

     /etc/defaults/pccard.conf	The pccardd(8) default configuration file.
     /etc/pccard.conf		The user configuration file.


BSD			       November	2, 1994				   BSD


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

home | help