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

Data Fields

struct dma_device dma_dev
 
bool m2m
 
int(* hw_setup )(struct ep93xx_dma_chan *)
 
void(* hw_shutdown )(struct ep93xx_dma_chan *)
 
void(* hw_submit )(struct ep93xx_dma_chan *)
 
int(* hw_interrupt )(struct ep93xx_dma_chan *)
 
size_t num_channels
 
struct ep93xx_dma_chan channels []
 

Detailed Description

struct ep93xx_dma_engine - the EP93xx DMA engine instance : holds the dmaengine device : is this an M2M or M2P device : method which sets the channel up for operation : shuts the channel down and flushes whatever is left : pushes active descriptor(s) to the hardware : handle the interrupt : number of channels for this instance : array of channels

There is one instance of this struct for the M2P channels and one for the M2M channels. hw_xxx() methods are used to perform operations which are different on M2M and M2P channels. These methods are called with channel lock held and interrupts disabled so they cannot sleep.

Definition at line 200 of file ep93xx_dma.c.

Field Documentation

struct ep93xx_dma_chan channels[]

Definition at line 212 of file ep93xx_dma.c.

struct dma_device dma_dev

Definition at line 201 of file ep93xx_dma.c.

int(* hw_interrupt)(struct ep93xx_dma_chan *)

Definition at line 206 of file ep93xx_dma.c.

int(* hw_setup)(struct ep93xx_dma_chan *)

Definition at line 203 of file ep93xx_dma.c.

void(* hw_shutdown)(struct ep93xx_dma_chan *)

Definition at line 204 of file ep93xx_dma.c.

void(* hw_submit)(struct ep93xx_dma_chan *)

Definition at line 205 of file ep93xx_dma.c.

bool m2m

Definition at line 202 of file ep93xx_dma.c.

size_t num_channels

Definition at line 211 of file ep93xx_dma.c.


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