In message: <[EMAIL PROTECTED]>
Bernd Walter <[EMAIL PROTECTED]> writes:
: On Tue, Jun 10, 2003 at 01:56:15PM +0200, Bernd Walter wrote:
: > On Mon, Jun 09, 2003 at 10:46:21PM -0600, M. Warner Losh wrote:
: > > I'm thinking that the loop should be more like:
: > >
: > > pcifunchigh = 0;
: > > f = 0;
: > > hdrtype = REG(PCIR_HEADERTYPE, 1);
: > > if (hdrtype & 0x7f > 2)
: > > continue;
: > > if (hdrtype & 0x80)
: > s/0x80/PCIM_MFDEV/
: > Maybe we should add a PCIM_REGLAYOUT as well.
: >
: > > pcifunchigh = PCI_FUNCMAX;
: > > for (f = 0; f <= pcifunchigh; f++) {
: > > dinfo = pci_read_device(pcib, busno, s, f, dinfo_size);
: > > if (dinfo != NULL)
: > > pci_add_child(dev, dinfo);
: > > }
: > >
: > > might be better code (REG likely needs to be correctly defined for
: > > this context).
: >
: > This needs to be tested on that given hardware.
: > I don't know if REG will work as expected because it asks function 0,
: > which is disabled.
:
: I've reread John-Mark's last mail about the readable registers.
: So - yes it should work.
That's what inspired me. Also, I'd expected that we'd need some kind
of tweaking to make it actually compile and be neat.
Warner
_______________________________________________
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "[EMAIL PROTECTED]"