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>

index | next in thread | previous in thread | raw e-mail

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


help

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