Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
dma_controller Struct Reference

#include <musb_dma.h>

Data Fields

int(* start )(struct dma_controller *)
 
int(* stop )(struct dma_controller *)
 
struct dma_channel *(* channel_alloc )(struct dma_controller *, struct musb_hw_ep *, u8 is_tx)
 
void(* channel_release )(struct dma_channel *)
 
int(* channel_program )(struct dma_channel *channel, u16 maxpacket, u8 mode, dma_addr_t dma_addr, u32 length)
 
int(* channel_abort )(struct dma_channel *)
 
int(* is_compatible )(struct dma_channel *channel, u16 maxpacket, void *buf, u32 length)
 

Detailed Description

struct dma_controller - A DMA Controller. : call this to start a DMA controller; return 0 on success, else negative errno : call this to stop a DMA controller return 0 on success, else negative errno : call this to allocate a DMA channel : call this to release a DMA channel : call this to abort a pending DMA transaction, returning it to FREE (but allocated) state

Controllers manage dma channels.

Definition at line 161 of file musb_dma.h.

Field Documentation

int(* channel_abort)(struct dma_channel *)

Definition at line 171 of file musb_dma.h.

struct dma_channel*(* channel_alloc)(struct dma_controller *, struct musb_hw_ep *, u8 is_tx)
read

Definition at line 164 of file musb_dma.h.

int(* channel_program)(struct dma_channel *channel, u16 maxpacket, u8 mode, dma_addr_t dma_addr, u32 length)

Definition at line 167 of file musb_dma.h.

void(* channel_release)(struct dma_channel *)

Definition at line 166 of file musb_dma.h.

int(* is_compatible)(struct dma_channel *channel, u16 maxpacket, void *buf, u32 length)

Definition at line 172 of file musb_dma.h.

int(* start)(struct dma_controller *)

Definition at line 162 of file musb_dma.h.

Definition at line 163 of file musb_dma.h.


The documentation for this struct was generated from the following file: