summaryrefslogtreecommitdiffstats
path: root/sys/powerpc/include/bus.h
Commit message (Collapse)AuthorAgeFilesLines
* - Introduce a new busdma flag BUS_DMA_ZERO to request for zero'edmux2003-07-271-0/+1
| | | | | | | memory in bus_dmamem_alloc(). This is possible now that contigmalloc() supports the M_ZERO flag. - Remove the locking of Giant around calls to contigmalloc() since contigmalloc() now grabs Giant itself.
* Mega busdma API commit.scottl2003-07-011-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | Add two new arguments to bus_dma_tag_create(): lockfunc and lockfuncarg. Lockfunc allows a driver to provide a function for managing its locking semantics while using busdma. At the moment, this is used for the asynchronous busdma_swi and callback mechanism. Two lockfunc implementations are provided: busdma_lock_mutex() performs standard mutex operations on the mutex that is specified from lockfuncarg. dftl_lock() is a panic implementation and is defaulted to when NULL, NULL are passed to bus_dma_tag_create(). The only time that NULL, NULL should ever be used is when the driver ensures that bus_dmamap_load() will not be deferred. Drivers that do not provide their own locking can pass busdma_lock_mutex,&Giant args in order to preserve the former behaviour. sparc64 and powerpc do not provide real busdma_swi functions, so this is largely a noop on those platforms. The busdma_swi on is64 is not properly locked yet, so warnings will be emitted on this platform when busdma callback deferrals happen. If anyone gets panics or warnings from dflt_lock() being called, please let me know right away. Reviewed by: tmm, gibbs
* Bring back bus_dmasync_op_t. It is now a typedef to an int, though thescottl2003-05-271-1/+2
| | | | | | | | BUS_DMASYNC_ definitions remain as before. The does not change the ABI, and reverts the API to be a bit more compatible and flexible. This has survived a full 'make universe'. Approved by: re (bmah)
* - Convert NetBSD-derived macros to inline functions for bettergrehan2003-04-181-65/+176
| | | | | | type-checking and future debug code. - Remove sparse addressing hack, since the only consumer, the macio ATA driver, doesn't require it anymore.
* I deserve a big pointy hat for having missed all those referencesmux2003-04-101-9/+5
| | | | to bus_dmasync_op_t in my last commit.
* Correctly set BUS_SPACE_MAXSIZE in all the busdma backends.mux2003-02-261-1/+1
| | | | | It was bogusly set to 64 * 1024 or 128 * 1024 because it was bogusly reused in the BUS_DMAMAP_NSEGS definition.
* Rework of how memory resources are discovered and dealt with in macio.benno2003-01-301-3/+3
| | | | | | | | | - Store the OpenFirmware "reg" property in the macio ivars. - Use a struct to define the structure of a "reg" property entry. - Discover all memory ranges, not just the first. - In ata_macio, manage our own range and hand out our own allocations using bus_space_subregion. - Fix bus_space_subregion to handle subregions of sparse maps.
* - define HAS_STREAM_METHODS correctlygrehan2003-01-081-2/+25
| | | | | | - dmamap_load_mbuf/load_uio prototypes Submitted partly by: Hiten Pandya <hiten@unixdaemons.com>
* Added sparse address support, required by the macio ATA devicegrehan2002-09-191-4/+9
| | | | Approved by: benno
* 1) Add busdma machdep code.benno2002-07-091-211/+176
| | | | | | 2) Add bus_pio.h and bus_memio.h (which do nothing). Submitted by: Peter Grehan <peterg@ptree32.com.au> (1)
* Remove __P.alfred2002-03-201-65/+61
| | | | Reveiwed by: benno
* Bring in NetBSD code used in the PowerPC port.benno2001-06-101-0/+802
Reviewed by: obrien, dfr Obtained from: NetBSD
OpenPOWER on IntegriCloud