Date: Mon, 22 Jan 2001 04:05:31 -0600 From: "Steve Shoecraft" <sshoecraft@safepages.com> To: "'Nicolas Souchu'" <nsouch@alcove.fr>, "'John Baldwin'" <jhb@FreeBSD.org> Cc: "'Donald J . Maddox'" <dmaddox@sc.rr.com>, <freebsd-hackers@FreeBSD.org> Subject: RE: more info about: odd result of pci_read_config Message-ID: <001301c0845a$db047780$89ccdacf@max.home.org> In-Reply-To: <20010121111903.B10148@ontario.alcove-int>
index | next in thread | previous in thread | raw e-mail
> -----Original Message-----
> From: owner-freebsd-hackers@FreeBSD.ORG
> [mailto:owner-freebsd-hackers@FreeBSD.ORG]On Behalf Of Nicolas Souchu
> Sent: Sunday, January 21, 2001 4:19 AM
> To: John Baldwin
> Cc: Donald J . Maddox; freebsd-hackers@FreeBSD.org
> Subject: Re: more info about: odd result of pci_read_config
>
>
> 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?
That's exactly whats going on here. Have you turned on BUS_DEBUG (or mebbe
DEBUG_BUS) in /kern/subr_bus.c ?
Also, I have a userland app that loads and runs your kernel module - it
makes it alot easier to debug this kinda stuff. Even does device file I/O.
If you want, you can check it out.
>
> I'll try to wire it in the kernel.
>
> Nicholas
>
> --
> Nicolas.Souchu@alcove.fr
> Alcôve - Open Source Software Engineer - http://www.alcove.fr
>
>
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-hackers" in the body of the message
>
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?001301c0845a$db047780$89ccdacf>
