Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 02 Mar 2007 09:03:31 -0700
From:      Scott Long <scottl@samsco.org>
To:        Mark Tinguely <tinguely@casselton.net>
Cc:        current@freebsd.org
Subject:   Re: multisegment bus_dmamem_alloc()
Message-ID:  <45E84AD3.7010908@samsco.org>
In-Reply-To: <200703021442.l22Eg6QT058195@casselton.net>
References:  <200703021442.l22Eg6QT058195@casselton.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Mark Tinguely wrote:
> Are there any other devices other than bktr(4) that could benefit
> from a multisegment bus_dmamem_alloc(9) routine? The old USB system
> comes to mind, but I have not studied the new USB. There may be others.
> 
> NetBSD only partially implements this (if the number page allocated > number
> of segments, they punt and do a totally contiguous allocation - IMO, they
> could fix this pretty easy though).
> 
> I know chages to contigmalloc() is a tricky subject. I was hoping
> there are enough drivers that would provide enough merits to change
> such an important part of the system. If not, please forgive this noise.
> 

Looking at bktr, it's not at all clear to me why the author felt that
FreeBSD didn't support bus_dmamem_alloc.  It's even stranger since the
author explicitly tells the NetBSD/OpenBSD code to only allocate 1
segment.  Meh.  I'm getting tired of fighting the busdma API fight with
developers who deliberately ignore standard API's that have been
around for almost 10 years.  Multi-segment bus_dmamem_alloc support
would be nice, but bringing the drivers up to API standards would be an
even nicer first step.

Scott



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?45E84AD3.7010908>