RFC bus_dma_tag_parent

Chuck Tuffli chuck_tuffli at agilent.com
Wed Nov 10 14:22:19 PST 2004

This has come up a couple times recently*, so here's a proposal as to
one way of fixing the problem in the bus_dma API


  bus_dma, ..., bus_dma_tag_parent

  #include <machine/bus.h>
. ..
  bus_dma_tag_parent(device_t dev);

. ..

. ..

  Returns the DMA tag of the bus dev connects to. Drivers can use the
  DMA tag for the parent parameter in subsequent calls to
  bus_dma_tag_create(9). All devices on a bus share this tag as their
  parent and should not destroy it.

  Returns NULL if tag does not exist or a bus_dma_tag_t on success.

If this is the type of fix you were thinking of, I'll go ahead and
code something up for PCI devices.

* http://leaf.dragonflybsd.org/mailarchive/bugs/2004-10/msg00050.html
Chuck Tuffli
Agilent Technologies

More information about the Kernel mailing list