On Sat, Jan 20, 2001 at 04:35:11PM -0800, John Baldwin wrote:
> Look in /sys/compile/<foo> after compiling a kernel, it should be in pci_if.*
> It's a function that ues kobj to lookup the pci_read_config method in the
> parent bus. Look in the PCI code to find the real pci_read_config...
>
> >From sys/dev/pci/pci.c:
>
> DEVMETHOD(pci_read_config, pci_read_config_method),
>
> static u_int32_t
> pci_read_config_method(device_t dev, device_t child, int reg, int width)
> {
> struct pci_devinfo *dinfo = device_get_ivars(child);
> pcicfgregs *cfg = &dinfo->cfg;
>
> return PCIB_READ_CONFIG(device_get_parent(dev),
> cfg->bus, cfg->slot, cfg->func,
> reg, width);
> }
On -stable, it calls directly pci_cfgread() with the cfg.
My viapm driver is a kmodule. Could it be that PCI_READ_CONFIG is not
correctly resolved and returns ENXIO which is 0x6?
I'll try to wire it in the kernel.
Nicholas
--
[EMAIL PROTECTED]
Alcôve - Open Source Software Engineer - http://www.alcove.fr
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message