Subject: looking for PCI lkm HOWTO
To: None <tech-kern@netbsd.org>
From: Chuck Tuffli <chuck_tuffli@agilent.com>
List: tech-kern
Date: 06/08/2004 00:50:44
[This is definitely a newbie question ...]

I'm trying to create the skeleton of a LKM for a PCI device and can't
seem to get the *_match() function to be called. The driver defines

struct cfattach svdrv_ca = {
	sizeof(struct svdrv_softc), svdrv_pci_match, svdrv_pci_attach
};

for PCI and

static struct cdevsw svdrv_dev = {
	svdrv_open,
	svdrv_close,
...
};

MOD_DEV("svdrv", "svdrv", NULL, -1, &svdrv_dev, -1);

for the char driver interface. Loading the driver with

modload -e svdrv_lkmentry svdrv.o

prints the message associated with the *_handle() function, but
svdrv_pci_match() doesn't ever print it's message. Is there an
additional step or definition that the driver needs to be recognized
by the PCI bus driver? Thanks for any help or pointers.

-- 
Chuck Tuffli    <chuck_tuffli <at> agilent <dot> com>
Agilent Technologies, Storage Area Networking