0

I'm implementing a small PCI driver for academic purposes, and one thing I'm not clear about if we actually have to provide driver.conf? Different materials which I read (including http://blog.csdn.net/hotsolaris/article/details/1763716), say that for PCI the driver config file is optional, however in my case it seems that pci_config_setup() is successful only with driver.conf provided:

name="mydrv" parent="/pci@0,0/pci8086,2e11"

Then I do:

% add_drv -i 'pciXXXX,YY' mydrv

and it adds in the system with no warning or error messages. So I assume that some properties of a PCI device can't be derived automatically by the system, e.g. parent bus?

I would appreciate if anybody could shed some light on this. Thanks.

Mark
  • 6,052
  • 8
  • 61
  • 129

1 Answers1

1

If you look at a random selection of very small files under /kernel/drv for actual physical hardware, you'll see that they almost always only contain the line

ddi_forceattach=1;

Pseudo drivers will have a driver.conf(4) file which reflects their parentage in the system. I really recommend reading that manpage, it goes into good detail about what's required here.

James McPherson
  • 2,476
  • 1
  • 12
  • 16