Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Enumerations | Functions
shdma-base.c File Reference
#include <linux/delay.h>
#include <linux/shdma-base.h>
#include <linux/dmaengine.h>
#include <linux/init.h>
#include <linux/interrupt.h>
#include <linux/module.h>
#include <linux/pm_runtime.h>
#include <linux/slab.h>
#include <linux/spinlock.h>
#include "../dmaengine.h"

Go to the source code of this file.

Macros

#define NR_DESCS_PER_CHANNEL   32
 
#define to_shdma_chan(c)   container_of(c, struct shdma_chan, dma_chan)
 
#define to_shdma_dev(d)   container_of(d, struct shdma_dev, dma_dev)
 

Enumerations

enum  shdma_desc_status {
  DESC_IDLE, DESC_PREPARED, DESC_SUBMITTED, DESC_COMPLETED,
  DESC_WAITING
}
 

Functions

 module_param (slave_num, uint, 0444)
 
bool shdma_chan_filter (struct dma_chan *chan, void *arg)
 
 EXPORT_SYMBOL (shdma_chan_filter)
 
bool shdma_reset (struct shdma_dev *sdev)
 
 EXPORT_SYMBOL (shdma_reset)
 
int shdma_request_irq (struct shdma_chan *schan, int irq, unsigned long flags, const char *name)
 
 EXPORT_SYMBOL (shdma_request_irq)
 
void shdma_free_irq (struct shdma_chan *schan)
 
 EXPORT_SYMBOL (shdma_free_irq)
 
void shdma_chan_probe (struct shdma_dev *sdev, struct shdma_chan *schan, int id)
 
 EXPORT_SYMBOL (shdma_chan_probe)
 
void shdma_chan_remove (struct shdma_chan *schan)
 
 EXPORT_SYMBOL (shdma_chan_remove)
 
int shdma_init (struct device *dev, struct shdma_dev *sdev, int chan_num)
 
 EXPORT_SYMBOL (shdma_init)
 
void shdma_cleanup (struct shdma_dev *sdev)
 
 EXPORT_SYMBOL (shdma_cleanup)
 
 module_init (shdma_enter)
 
 module_exit (shdma_exit)
 
 MODULE_LICENSE ("GPL v2")
 
 MODULE_DESCRIPTION ("SH-DMA driver base library")
 
 MODULE_AUTHOR ("Guennadi Liakhovetski <[email protected]>")
 

Macro Definition Documentation

#define NR_DESCS_PER_CHANNEL   32

Definition at line 37 of file shdma-base.c.

#define to_shdma_chan (   c)    container_of(c, struct shdma_chan, dma_chan)

Definition at line 39 of file shdma-base.c.

#define to_shdma_dev (   d)    container_of(d, struct shdma_dev, dma_dev)

Definition at line 40 of file shdma-base.c.

Enumeration Type Documentation

Enumerator:
DESC_IDLE 
DESC_PREPARED 
DESC_SUBMITTED 
DESC_COMPLETED 
DESC_WAITING 

Definition at line 29 of file shdma-base.c.

Function Documentation

EXPORT_SYMBOL ( shdma_chan_filter  )
EXPORT_SYMBOL ( shdma_reset  )
EXPORT_SYMBOL ( shdma_request_irq  )
EXPORT_SYMBOL ( shdma_free_irq  )
EXPORT_SYMBOL ( shdma_chan_probe  )
EXPORT_SYMBOL ( shdma_chan_remove  )
EXPORT_SYMBOL ( shdma_init  )
EXPORT_SYMBOL ( shdma_cleanup  )
MODULE_AUTHOR ( "Guennadi Liakhovetski <[email protected]>"  )
MODULE_DESCRIPTION ( "SH-DMA driver base library"  )
module_exit ( shdma_exit  )
module_init ( shdma_enter  )
MODULE_LICENSE ( "GPL v2 )
module_param ( slave_num  ,
uint  ,
0444   
)
bool shdma_chan_filter ( struct dma_chan chan,
void arg 
)

Definition at line 210 of file shdma-base.c.

void shdma_chan_probe ( struct shdma_dev sdev,
struct shdma_chan schan,
int  id 
)

Definition at line 839 of file shdma-base.c.

void shdma_chan_remove ( struct shdma_chan schan)

Definition at line 867 of file shdma-base.c.

void shdma_cleanup ( struct shdma_dev sdev)

Definition at line 919 of file shdma-base.c.

void shdma_free_irq ( struct shdma_chan schan)

Definition at line 832 of file shdma-base.c.

int shdma_init ( struct device dev,
struct shdma_dev sdev,
int  chan_num 
)

Definition at line 873 of file shdma-base.c.

int shdma_request_irq ( struct shdma_chan schan,
int  irq,
unsigned long  flags,
const char name 
)

Definition at line 820 of file shdma-base.c.

bool shdma_reset ( struct shdma_dev sdev)

Definition at line 729 of file shdma-base.c.