Logo Search packages:      
Sourcecode: linux-fsl-imx51 version File versions  Download package

mx27_prphw.c File Reference


Detailed Description

MX27 Video For Linux 2 capture driver.

Definition in file mx27_prphw.c.

#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/string.h>
#include <linux/clk.h>
#include <asm/io.h>
#include <linux/delay.h>
#include "mx27_prp.h"

Go to the source code of this file.

Classes

struct  _coeff_t

Defines

#define _bary(name)   static const unsigned char name[]
#define PRP_MAX_IN_HEIGHT   2044
#define PRP_MAX_IN_WIDTH   2044
#define PRP_MIN_IN_HEIGHT   32
#define PRP_MIN_IN_WIDTH   32

Typedefs

typedef struct _coeff_t coeff_t [2][2]

Functions

 _bary (c20)
 _bary (c19)
 _bary (c18)
 _bary (c17)
 _bary (c16)
 _bary (c15)
 _bary (c14)
 _bary (c13)
 _bary (c12)
 _bary (c11)
 _bary (c10)
 _bary (c9)
 _bary (c8)
 _bary (c7)
 _bary (c6)
 _bary (c5)
 _bary (c4)
 _bary (c3)
 _bary (c2)
 _bary (c1)
static int ave_scale (scale_t *t, int inv, int outv)
 Build PrP coefficient table based on average algorithm.
void csc_tbl (short csc[10])
 Build CSC table.
static int gcd (int x, int y)
 Get maximum common divisor.
int prp_scale (scale_t *pscale, int din, int dout, int inv, unsigned short *vout, unsigned short *pout, int retry)
 Build PrP coefficient table.
static int prp_scale_ave (scale_t *t, unsigned char base)
 Build PrP coefficient table based on average algorithm.
static int prp_scale_bilinear (scale_t *t, int coeff, int base, int nxt)
 Build PrP coefficient entry based on bilinear algorithm.
static void prp_set_scaler (int ch, int dir, scale_t *scale)
 Setup PrP resize coefficient registers.
int prphw_cfg (emma_prp_cfg *cfg)
 Setup PrP registers.
static int prphw_ch1_cfg (emma_prp_cfg *cfg, unsigned long *prp_cntl)
 Setup PrP registers relevant to channel 1.
int prphw_ch1ptr (emma_prp_cfg *cfg)
 Set PrP channel 1 output buffer 1 address.
int prphw_ch1ptr2 (emma_prp_cfg *cfg)
 Set PrP channel 1 output buffer 2 address.
static int prphw_ch2_cfg (emma_prp_cfg *cfg, unsigned long *prp_cntl)
 Setup PrP registers relevant to channel 2.
int prphw_ch2ptr (emma_prp_cfg *cfg)
 Set PrP channel 2 output buffer 1 address.
int prphw_ch2ptr2 (emma_prp_cfg *cfg)
 Set PrP channel 2 output buffer 2 address.
int prphw_disable (int channel)
 Disable PrP channel.
int prphw_enable (int channel)
 Enable PrP channel.
void prphw_exit (void)
 PrP module clock disable.
void prphw_init (void)
 PrP module clock enable.
int prphw_inptr (emma_prp_cfg *cfg)
 Set PrP input buffer address.
static int prphw_input_cfg (emma_prp_cfg *cfg, unsigned long *prp_cntl)
 Setup PrP registers relevant to input.
int prphw_isr (void)
 Check PrP interrupt status.
int prphw_reset (void)
 Reset PrP block.
static int ratio (int x, int y, int *den)
 Get ratio.
static int scale (scale_t *t, int inv, int outv)
 Build PrP coefficient table.
static unsigned char scale_get (scale_t *t, unsigned char *i, unsigned char *out)

Variables

static const unsigned char * ave_coeff []
static struct clk * emma_clk
static coeff_t * PRP_RSZ_COEFF = (coeff_t *) PRP_CH1_RZ_HORI_COEF1


Generated by  Doxygen 1.6.0   Back to index