Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 05 Sep 2006 12:31:20 -0600
From:      Scott Long <scottl@samsco.org>
To:        Poul-Henning Kamp <phk@phk.freebsd.dk>
Cc:        John-Mark Gurney <gurney_j@resnet.uoregon.edu>, freebsd-current@freebsd.org, freebsd-drivers@freebsd.org, freebsd-arch@freebsd.org
Subject:   Re: bus_get_dma_tag now necessary for drivers using bus_dma
Message-ID:  <44FDC278.3050902@samsco.org>
In-Reply-To: <14026.1157478288@critter.freebsd.dk>
References:  <14026.1157478288@critter.freebsd.dk>

next in thread | previous in thread | raw e-mail | index | archive | help
Poul-Henning Kamp wrote:
> In message <20060905173334.GH9421@funkthat.com>, John-Mark Gurney writes:
> 
> 
>>This means that for each call to bus_dma_tag_create, instead of passing
>>a NULL pointer, you should call bus_get_dma_tag(yourdev) and use that
>>as the parent tag.  I committed some example code to various drivers,
>>such as ahc, ata, em, and ohci.
> 
> 
> If there are never any exeptions to this requirement, why not
> pass "yourdev" and have the magic hidden, rather than add 17
> ritual characters to the API ?
> 

Drivers can have their own multi-level tag heirarchy.  You'd have to
create a new bus_dma_tag_create() variant that expected a device_t
instead of a bus_dma_tag_t.  This might be a good idea.

Scott



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?44FDC278.3050902>