Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
mcam-core.c File Reference
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/fs.h>
#include <linux/mm.h>
#include <linux/i2c.h>
#include <linux/interrupt.h>
#include <linux/spinlock.h>
#include <linux/slab.h>
#include <linux/device.h>
#include <linux/wait.h>
#include <linux/list.h>
#include <linux/dma-mapping.h>
#include <linux/delay.h>
#include <linux/vmalloc.h>
#include <linux/io.h>
#include <linux/videodev2.h>
#include <media/v4l2-device.h>
#include <media/v4l2-ioctl.h>
#include <media/v4l2-chip-ident.h>
#include <media/ov7670.h>
#include <media/videobuf2-vmalloc.h>
#include <media/videobuf2-dma-contig.h>
#include <media/videobuf2-dma-sg.h>
#include "mcam-core.h"

Go to the source code of this file.

Data Structures

struct  mcam_format_struct
 
struct  mcam_dma_desc
 
struct  mcam_vb_buffer
 

Macros

#define CF_BUF0_VALID   0 /* Buffers valid - first three */
 
#define CF_BUF1_VALID   1
 
#define CF_BUF2_VALID   2
 
#define CF_DMA_ACTIVE   3 /* A frame is incoming */
 
#define CF_CONFIG_NEEDED   4 /* Must configure hardware */
 
#define CF_SINGLE_BUFFER   5 /* Running with a single buffer */
 
#define CF_SG_RESTART   6 /* SG restart needed */
 
#define sensor_call(cam, o, f, args...)   v4l2_subdev_call(cam->sensor, o, f, ##args)
 
#define N_MCAM_FMTS   ARRAY_SIZE(mcam_formats)
 
#define cam_err(cam, fmt, arg...)   dev_err((cam)->dev, fmt, ##arg);
 
#define cam_warn(cam, fmt, arg...)   dev_warn((cam)->dev, fmt, ##arg);
 
#define cam_dbg(cam, fmt, arg...)   dev_dbg((cam)->dev, fmt, ##arg);
 

Functions

 module_param (flip, bool, 0444)
 
 MODULE_PARM_DESC (flip,"If set, the sensor will be instructed to flip the image ""vertically.")
 
 module_param (buffer_mode, int, 0444)
 
 MODULE_PARM_DESC (buffer_mode,"Set the buffer mode to be used; default is to go with what ""the platform driver asks for. Set to 0 for vmalloc, 1 for ""DMA contiguous.")
 
int mccic_irq (struct mcam_camera *cam, unsigned int irqs)
 
int mccic_register (struct mcam_camera *cam)
 
void mccic_shutdown (struct mcam_camera *cam)
 

Macro Definition Documentation

#define cam_dbg (   cam,
  fmt,
  arg... 
)    dev_dbg((cam)->dev, fmt, ##arg);

Definition at line 217 of file mcam-core.c.

#define cam_err (   cam,
  fmt,
  arg... 
)    dev_err((cam)->dev, fmt, ##arg);

Definition at line 213 of file mcam-core.c.

#define cam_warn (   cam,
  fmt,
  arg... 
)    dev_warn((cam)->dev, fmt, ##arg);

Definition at line 215 of file mcam-core.c.

#define CF_BUF0_VALID   0 /* Buffers valid - first three */

Definition at line 96 of file mcam-core.c.

#define CF_BUF1_VALID   1

Definition at line 97 of file mcam-core.c.

#define CF_BUF2_VALID   2

Definition at line 98 of file mcam-core.c.

#define CF_CONFIG_NEEDED   4 /* Must configure hardware */

Definition at line 100 of file mcam-core.c.

#define CF_DMA_ACTIVE   3 /* A frame is incoming */

Definition at line 99 of file mcam-core.c.

#define CF_SG_RESTART   6 /* SG restart needed */

Definition at line 102 of file mcam-core.c.

#define CF_SINGLE_BUFFER   5 /* Running with a single buffer */

Definition at line 101 of file mcam-core.c.

#define N_MCAM_FMTS   ARRAY_SIZE(mcam_formats)

Definition at line 138 of file mcam-core.c.

#define sensor_call (   cam,
  o,
  f,
  args... 
)    v4l2_subdev_call(cam->sensor, o, f, ##args)

Definition at line 104 of file mcam-core.c.

Function Documentation

int mccic_irq ( struct mcam_camera cam,
unsigned int  irqs 
)

Definition at line 1680 of file mcam-core.c.

int mccic_register ( struct mcam_camera cam)

Definition at line 1730 of file mcam-core.c.

void mccic_shutdown ( struct mcam_camera cam)

Definition at line 1816 of file mcam-core.c.

module_param ( flip  ,
bool  ,
0444   
)
module_param ( buffer_mode  ,
int  ,
0444   
)
MODULE_PARM_DESC ( flip  ,
"If  set,
the sensor will be instructed to flip the image""vertically."   
)
MODULE_PARM_DESC ( buffer_mode  ,
"Set the buffer mode to be used; default is to go with what ""the platform driver asks for. Set to 0 for  vmalloc,
1 for""DMA contiguous."   
)