Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
ipu-dmfc.c File Reference
#include <linux/export.h>
#include <linux/types.h>
#include <linux/errno.h>
#include <linux/io.h>
#include "imx-ipu-v3.h"
#include "ipu-prv.h"

Go to the source code of this file.

Data Structures

struct  dmfc_channel_data
 
struct  dmfc_channel
 
struct  ipu_dmfc_priv
 

Macros

#define DMFC_RD_CHAN   0x0000
 
#define DMFC_WR_CHAN   0x0004
 
#define DMFC_WR_CHAN_DEF   0x0008
 
#define DMFC_DP_CHAN   0x000c
 
#define DMFC_DP_CHAN_DEF   0x0010
 
#define DMFC_GENERAL1   0x0014
 
#define DMFC_GENERAL2   0x0018
 
#define DMFC_IC_CTRL   0x001c
 
#define DMFC_STAT   0x0020
 
#define DMFC_WR_CHAN_1_28   0
 
#define DMFC_WR_CHAN_2_41   8
 
#define DMFC_WR_CHAN_1C_42   16
 
#define DMFC_WR_CHAN_2C_43   24
 
#define DMFC_DP_CHAN_5B_23   0
 
#define DMFC_DP_CHAN_5F_27   8
 
#define DMFC_DP_CHAN_6B_24   16
 
#define DMFC_DP_CHAN_6F_29   24
 
#define DMFC_FIFO_SIZE_64   (3 << 3)
 
#define DMFC_FIFO_SIZE_128   (2 << 3)
 
#define DMFC_FIFO_SIZE_256   (1 << 3)
 
#define DMFC_FIFO_SIZE_512   (0 << 3)
 
#define DMFC_SEGMENT(x)   ((x & 0x7) << 0)
 
#define DMFC_BURSTSIZE_128   (0 << 6)
 
#define DMFC_BURSTSIZE_64   (1 << 6)
 
#define DMFC_BURSTSIZE_32   (2 << 6)
 
#define DMFC_BURSTSIZE_16   (3 << 6)
 
#define DMFC_NUM_CHANNELS   ARRAY_SIZE(dmfcdata)
 

Functions

int ipu_dmfc_enable_channel (struct dmfc_channel *dmfc)
 
 EXPORT_SYMBOL_GPL (ipu_dmfc_enable_channel)
 
void ipu_dmfc_disable_channel (struct dmfc_channel *dmfc)
 
 EXPORT_SYMBOL_GPL (ipu_dmfc_disable_channel)
 
void ipu_dmfc_free_bandwidth (struct dmfc_channel *dmfc)
 
 EXPORT_SYMBOL_GPL (ipu_dmfc_free_bandwidth)
 
int ipu_dmfc_alloc_bandwidth (struct dmfc_channel *dmfc, unsigned long bandwidth_pixel_per_second, int burstsize)
 
 EXPORT_SYMBOL_GPL (ipu_dmfc_alloc_bandwidth)
 
int ipu_dmfc_init_channel (struct dmfc_channel *dmfc, int width)
 
 EXPORT_SYMBOL_GPL (ipu_dmfc_init_channel)
 
struct dmfc_channelipu_dmfc_get (struct ipu_soc *ipu, int ipu_channel)
 
 EXPORT_SYMBOL_GPL (ipu_dmfc_get)
 
void ipu_dmfc_put (struct dmfc_channel *dmfc)
 
 EXPORT_SYMBOL_GPL (ipu_dmfc_put)
 
int ipu_dmfc_init (struct ipu_soc *ipu, struct device *dev, unsigned long base, struct clk *ipu_clk)
 
void ipu_dmfc_exit (struct ipu_soc *ipu)
 

Macro Definition Documentation

#define DMFC_BURSTSIZE_128   (0 << 6)

Definition at line 49 of file ipu-dmfc.c.

#define DMFC_BURSTSIZE_16   (3 << 6)

Definition at line 52 of file ipu-dmfc.c.

#define DMFC_BURSTSIZE_32   (2 << 6)

Definition at line 51 of file ipu-dmfc.c.

#define DMFC_BURSTSIZE_64   (1 << 6)

Definition at line 50 of file ipu-dmfc.c.

#define DMFC_DP_CHAN   0x000c

Definition at line 26 of file ipu-dmfc.c.

#define DMFC_DP_CHAN_5B_23   0

Definition at line 38 of file ipu-dmfc.c.

#define DMFC_DP_CHAN_5F_27   8

Definition at line 39 of file ipu-dmfc.c.

#define DMFC_DP_CHAN_6B_24   16

Definition at line 40 of file ipu-dmfc.c.

#define DMFC_DP_CHAN_6F_29   24

Definition at line 41 of file ipu-dmfc.c.

#define DMFC_DP_CHAN_DEF   0x0010

Definition at line 27 of file ipu-dmfc.c.

#define DMFC_FIFO_SIZE_128   (2 << 3)

Definition at line 44 of file ipu-dmfc.c.

#define DMFC_FIFO_SIZE_256   (1 << 3)

Definition at line 45 of file ipu-dmfc.c.

#define DMFC_FIFO_SIZE_512   (0 << 3)

Definition at line 46 of file ipu-dmfc.c.

#define DMFC_FIFO_SIZE_64   (3 << 3)

Definition at line 43 of file ipu-dmfc.c.

#define DMFC_GENERAL1   0x0014

Definition at line 28 of file ipu-dmfc.c.

#define DMFC_GENERAL2   0x0018

Definition at line 29 of file ipu-dmfc.c.

#define DMFC_IC_CTRL   0x001c

Definition at line 30 of file ipu-dmfc.c.

#define DMFC_NUM_CHANNELS   ARRAY_SIZE(dmfcdata)

Definition at line 96 of file ipu-dmfc.c.

#define DMFC_RD_CHAN   0x0000

Definition at line 23 of file ipu-dmfc.c.

#define DMFC_SEGMENT (   x)    ((x & 0x7) << 0)

Definition at line 48 of file ipu-dmfc.c.

#define DMFC_STAT   0x0020

Definition at line 31 of file ipu-dmfc.c.

#define DMFC_WR_CHAN   0x0004

Definition at line 24 of file ipu-dmfc.c.

#define DMFC_WR_CHAN_1_28   0

Definition at line 33 of file ipu-dmfc.c.

#define DMFC_WR_CHAN_1C_42   16

Definition at line 35 of file ipu-dmfc.c.

#define DMFC_WR_CHAN_2_41   8

Definition at line 34 of file ipu-dmfc.c.

#define DMFC_WR_CHAN_2C_43   24

Definition at line 36 of file ipu-dmfc.c.

#define DMFC_WR_CHAN_DEF   0x0008

Definition at line 25 of file ipu-dmfc.c.

Function Documentation

EXPORT_SYMBOL_GPL ( ipu_dmfc_enable_channel  )
EXPORT_SYMBOL_GPL ( ipu_dmfc_disable_channel  )
EXPORT_SYMBOL_GPL ( ipu_dmfc_free_bandwidth  )
EXPORT_SYMBOL_GPL ( ipu_dmfc_alloc_bandwidth  )
EXPORT_SYMBOL_GPL ( ipu_dmfc_init_channel  )
EXPORT_SYMBOL_GPL ( ipu_dmfc_get  )
EXPORT_SYMBOL_GPL ( ipu_dmfc_put  )
int ipu_dmfc_alloc_bandwidth ( struct dmfc_channel dmfc,
unsigned long  bandwidth_pixel_per_second,
int  burstsize 
)

Definition at line 290 of file ipu-dmfc.c.

void ipu_dmfc_disable_channel ( struct dmfc_channel dmfc)

Definition at line 136 of file ipu-dmfc.c.

int ipu_dmfc_enable_channel ( struct dmfc_channel dmfc)

Definition at line 120 of file ipu-dmfc.c.

void ipu_dmfc_exit ( struct ipu_soc ipu)

Definition at line 406 of file ipu-dmfc.c.

void ipu_dmfc_free_bandwidth ( struct dmfc_channel dmfc)

Definition at line 248 of file ipu-dmfc.c.

struct dmfc_channel* ipu_dmfc_get ( struct ipu_soc ipu,
int  ipu_channel 
)
read

Definition at line 343 of file ipu-dmfc.c.

int ipu_dmfc_init ( struct ipu_soc ipu,
struct device dev,
unsigned long  base,
struct clk ipu_clk 
)

Definition at line 361 of file ipu-dmfc.c.

int ipu_dmfc_init_channel ( struct dmfc_channel dmfc,
int  width 
)

Definition at line 325 of file ipu-dmfc.c.

void ipu_dmfc_put ( struct dmfc_channel dmfc)

Definition at line 355 of file ipu-dmfc.c.