On Mon, Jun 10, 2013 at 12:13:11PM -0700, Mr. Clif wrote: > Hi John and Pyun, > > Ok got the new kernel installed and tested. Yes it works! :-) Maybe that
Thanks, probably John can fix PCI-PCI bridge code. > will also fix a simular problem with the sun cards (cas[03]), except I > don't see a define like that in if_cas.c. Suggestions? Cassini does not support I/O port BARs so I guess you're seeing different issue. Would you start a new thread that explains cas(4) issues you're suffering from? > > Thanks, > Clif > > > John Baldwin wrote: > >On Thursday, May 30, 2013 1:12:14 am YongHyeon PYUN wrote: > >>On Wed, May 29, 2013 at 08:58:10PM -0700, Mr. Clif wrote: > >>>Sorry for the confusion Pyun, > >>> > >>>I started looking at it in the context of pfsense, but they rejected my > >>>bug report which was understandable because it's an upstream issue. They > >>>suggested I resubmit it to you guys if I could reproduce it. So I booted > >>>FreeBSD and lo and behold the same two ports failed in exactly the same > >>Ok, I'd like to fix that. > >Hmmm, the dc(4) driver is using the I/O port BARs rather than the > >memory BARs for its registers and this bug seems to be that the dc(4) > >device can't properly access its registers on dc0 and dc1 on the > >Atom box. The one thing I see is that the BIOS on the Atom box assigns > >addresses in the 0x1100-0x11ff range for dc0 and dc1. Those addresses > >conflict with ISA I/O aliases for the 0x100-0x1ff range. The Dell BIOS > >is more careful to avoid these ranges. > > > >I think the fix is that I need to fix the PCI-PCI bridge to reject these > >resource ranges if the ISA enable bit is set in the bridge's control > >register. However, for the time being you can change dc(4) to use the > >memory BAR instead of the I/O port BAR as a workaround: > > > >Index: if_dc.c > >=================================================================== > >--- if_dc.c (revision 251132) > >+++ if_dc.c (working copy) > >@@ -128,7 +128,7 @@ __FBSDID("$FreeBSD$"); > > #include<dev/pci/pcireg.h> > > #include<dev/pci/pcivar.h> > > > >-#define DC_USEIOSPACE > >+//#define DC_USEIOSPACE > > > > #include<dev/dc/if_dcreg.h> > > > > > >If this fixes it then I can take this PR as a test case for handling the > >ISA > >enable bit in the PCI-PCI bridge code. > > > _______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"