On Friday, March 02, 2012 4:45:52 pm Marius Strobl wrote:
> On Fri, Mar 02, 2012 at 08:38:05PM +0000, John Baldwin wrote:
> > Author: jhb
> > Date: Fri Mar  2 20:38:04 2012
> > New Revision: 232403
> > URL: http://svn.freebsd.org/changeset/base/232403
> > 
> > Log:
> >   - Add a bus_dma tag to each PCI bus that is a child of a Host-PCI bridge.
> >     The tag enforces a single restriction that all DMA transactions must not
> >     cross a 4GB boundary.  Note that while this restriction technically only
> >     applies to PCI-express, this change applies it to all PCI devices as it
> >     is simpler to implement that way and errs on the side of caution.
> 
> Hrm, wouldn't it have been more appropriate to implement this in the
> Host-PCI bridges instead? Probably for anything but x86 this would
> allow to easily distinguish at least between PCI and PCI-Express capable
> bus hierarchies and would move the PAE workaround to the MD bits to
> where it belongs.

The PAE workaround is dying as I've already fixed HEAD to make boundary 
arguments
use a bus_addr_t.  However, I committed it in this fashion so it can be MFC'd
since I can't merge the boundary KBI change.

The reason I did not do this in the Host-PCI bridge drivers is that we would 
have
to do this in umpteen different drivers, and all for a change that is mandated 
by
the PCI spec and not specific to the various specs the Host-PCI bridge drivers
all cater to (OFW, ACPI, MPTable, various and sundry embedded platforms, etc.).

-- 
John Baldwin
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to