1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-28 11:57:28 +00:00
Commit Graph

9 Commits

Author SHA1 Message Date
Marcel Moolenaar
4af242aad1 Implement busdma_md_unload() and busdma_sync().
While here:
1.  have the Python bindings contain constants for the space
    identifiers and the sync operation.
2.  change the segment iterators to return None when done,
    not ENXIO.
2015-07-03 05:47:56 +00:00
Marcel Moolenaar
22900685fd Add busdma_md_create, busdma_md_destroy and busdma_md_load. 2015-07-03 02:06:47 +00:00
Marcel Moolenaar
d11f2a4c8d Free the segment objects properly. 2015-06-12 14:53:56 +00:00
Marcel Moolenaar
cc6064789f Add accessor functions for iterating over segments. A segment
can be in bus address space, physical memory space or virtual
memory space.
2015-06-11 03:02:40 +00:00
Marcel Moolenaar
c0027d73e2 Rename bus_space to bus (i.e. drop _space). This makes the
API match the convenience macros in <sys/bus.h>. Bus space
can now reference both bus and busdma.
2015-06-10 16:00:09 +00:00
Marcel Moolenaar
cbb052dd3e Map the allocated DMA memory into the address space. 2015-06-08 22:01:34 +00:00
Marcel Moolenaar
6f769b730c Add busdma_mem_alloc & busdma_mem_free. 2015-06-08 03:23:20 +00:00
Marcel Moolenaar
9c2cdb1a7e Add DMA tag management to the C library and Python binding. 2015-06-06 16:14:03 +00:00
Marcel Moolenaar
0c2b180a35 Add a C libary and a Python module that implements an API similar
to bus_space(9) and that uses the proto(4) driver for talking to
hardware. If the I/O resource is a memory mapped I/O resource,
then mmap(2) will be attempted to avoid read(2)/write(2) overhead.

Sponsored by:	Juniper Networks, Inc.
2014-04-28 18:06:11 +00:00