Deleted Added
full compact
bus_dma.9 (139592) bus_dma.9 (140317)
1.\" Copyright (c) 2002, 2003 Hiten M. Pandya.
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\" notice, this list of conditions, and the following disclaimer,

--- 43 unchanged lines hidden (view full) ---

52.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
53.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
54.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
55.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
56.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
57.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
58.\" POSSIBILITY OF SUCH DAMAGE.
59.\"
1.\" Copyright (c) 2002, 2003 Hiten M. Pandya.
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\" notice, this list of conditions, and the following disclaimer,

--- 43 unchanged lines hidden (view full) ---

52.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
53.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
54.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
55.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
56.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
57.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
58.\" POSSIBILITY OF SUCH DAMAGE.
59.\"
60.\" $FreeBSD: head/share/man/man9/bus_dma.9 139592 2005-01-02 18:20:29Z krion $
60.\" $FreeBSD: head/share/man/man9/bus_dma.9 140317 2005-01-15 20:50:52Z scottl $
61.\" $NetBSD: bus_dma.9,v 1.25 2002/10/14 13:43:16 wiz Exp $
62.\"
63.Dd May 28, 2003
64.Dt BUS_DMA 9
65.Os
66.Sh NAME
67.Nm bus_dma ,
68.Nm bus_dma_tag_create ,
69.Nm bus_dma_tag_destroy ,
70.Nm bus_dmamap_create ,
71.Nm bus_dmamap_destroy ,
72.Nm bus_dmamap_load ,
73.Nm bus_dmamap_load_mbuf ,
61.\" $NetBSD: bus_dma.9,v 1.25 2002/10/14 13:43:16 wiz Exp $
62.\"
63.Dd May 28, 2003
64.Dt BUS_DMA 9
65.Os
66.Sh NAME
67.Nm bus_dma ,
68.Nm bus_dma_tag_create ,
69.Nm bus_dma_tag_destroy ,
70.Nm bus_dmamap_create ,
71.Nm bus_dmamap_destroy ,
72.Nm bus_dmamap_load ,
73.Nm bus_dmamap_load_mbuf ,
74.Nm bus_dmamap_load_mbuf_sg ,
74.Nm bus_dmamap_load_uio ,
75.Nm bus_dmamap_unload ,
76.Nm bus_dmamap_sync ,
77.Nm bus_dmamem_alloc ,
78.Nm bus_dmamem_free
79.Nd Bus and Machine Independent DMA Mapping Interface
80.Sh SYNOPSIS
81.In machine/bus.h

--- 13 unchanged lines hidden (view full) ---

95.Fn bus_dmamap_load "bus_dma_tag_t dmat" "bus_dmamap_t map" "void *buf" \
96"bus_size_t buflen" "bus_dmamap_callback_t *callback" "void *callback_arg" \
97"int flags"
98.Ft int
99.Fn bus_dmamap_load_mbuf "bus_dma_tag_t dmat" "bus_dmamap_t map" \
100"struct mbuf *mbuf" "bus_dmamap_callback2_t *callback" "void *callback_arg" \
101"int flags"
102.Ft int
75.Nm bus_dmamap_load_uio ,
76.Nm bus_dmamap_unload ,
77.Nm bus_dmamap_sync ,
78.Nm bus_dmamem_alloc ,
79.Nm bus_dmamem_free
80.Nd Bus and Machine Independent DMA Mapping Interface
81.Sh SYNOPSIS
82.In machine/bus.h

--- 13 unchanged lines hidden (view full) ---

96.Fn bus_dmamap_load "bus_dma_tag_t dmat" "bus_dmamap_t map" "void *buf" \
97"bus_size_t buflen" "bus_dmamap_callback_t *callback" "void *callback_arg" \
98"int flags"
99.Ft int
100.Fn bus_dmamap_load_mbuf "bus_dma_tag_t dmat" "bus_dmamap_t map" \
101"struct mbuf *mbuf" "bus_dmamap_callback2_t *callback" "void *callback_arg" \
102"int flags"
103.Ft int
104.Fn bus_dmamap_load_mbuf_sg "bus_dma_tag_t dmat" "bus_dmamap_t map" \
105"struct mbuf *mbuf" "bus_dma_segment_t *segs" "int *nsegs" "int flags"
106.Ft int
103.Fn bus_dmamap_load_uio "bus_dma_tag_t dmat" "bus_dmamap_t map" \
104"struct uio *uio" "bus_dmamap_callback2_t *callback" "void *callback_arg" \
105"int flags"
106.Ft void
107.Fn bus_dmamap_unload "bus_dma_tag_t dmat" "bus_dmamap_t map"
108.Ft void
109.Fn bus_dmamap_sync "bus_dma_tag_t dmat" "bus_dmamap_t map" \
110"op"

--- 440 unchanged lines hidden (view full) ---

551contains the mbuf chain's packet header length.
552.Pp
553Mbuf chains are assumed to be in kernel virtual address space.
554.Pp
555Returns
556.Er EINVAL
557if the size of the mbuf chain exceeds the maximum limit of the
558DMA tag.
107.Fn bus_dmamap_load_uio "bus_dma_tag_t dmat" "bus_dmamap_t map" \
108"struct uio *uio" "bus_dmamap_callback2_t *callback" "void *callback_arg" \
109"int flags"
110.Ft void
111.Fn bus_dmamap_unload "bus_dma_tag_t dmat" "bus_dmamap_t map"
112.Ft void
113.Fn bus_dmamap_sync "bus_dma_tag_t dmat" "bus_dmamap_t map" \
114"op"

--- 440 unchanged lines hidden (view full) ---

555contains the mbuf chain's packet header length.
556.Pp
557Mbuf chains are assumed to be in kernel virtual address space.
558.Pp
559Returns
560.Er EINVAL
561if the size of the mbuf chain exceeds the maximum limit of the
562DMA tag.
563.It Fn bus_dmamap_load_mbuf_sg "dmat" "map" "mbuf" "segs" "nsegs" "flags"
564This is just like
565.Fn bus_dmamap_load_mbuf
566except that it returns immediately without calling a callback function. It is
567provided for efficiency.
568The scatter/gather segment array
569.Va segs
570is provided by the caller and filled in directly by the function.
571The
572.Va nsegs
573argument is returned with the number of segments filled in.
574Returns the same errors as
575.Fn bus_dmamap_load_mbuf .
559.It Fn bus_dmamap_load_uio "dmat" "map" "uio" "callback2" "callback_arg" "flags"
560This is a variation of
561.Fn bus_dmamap_load
562which maps buffers pointed to by
563.Fa uio
564for DMA transfers.
565A
566.Vt bus_size_t

--- 233 unchanged lines hidden ---
576.It Fn bus_dmamap_load_uio "dmat" "map" "uio" "callback2" "callback_arg" "flags"
577This is a variation of
578.Fn bus_dmamap_load
579which maps buffers pointed to by
580.Fa uio
581for DMA transfers.
582A
583.Vt bus_size_t

--- 233 unchanged lines hidden ---