⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fb.h

📁 基于s3c2410的摄像头驱动
💻 H
📖 第 1 页 / 共 2 页
字号:
   /*    *    This is the interface between the low-level console driver and the    *    low-level frame buffer device    */struct display {    /* Filled in by the frame buffer device */    struct fb_var_screeninfo var;   /* variable infos. yoffset and vmode */				    /* are updated by fbcon.c */    struct fb_cmap cmap;            /* colormap */    char *screen_base;              /* pointer to top of virtual screen */    				    /* (virtual address) */    int visual;    int type;                       /* see FB_TYPE_* */    int type_aux;                   /* Interleave for interleaved Planes */    u_short ypanstep;               /* zero if no hardware ypan */    u_short ywrapstep;              /* zero if no hardware ywrap */    u_long line_length;             /* length of a line in bytes */    u_short can_soft_blank;         /* zero if no hardware blanking */    u_short inverse;                /* != 0 text black on white as default */    struct display_switch *dispsw;  /* low level operations */    void *dispsw_data;		    /* optional dispsw helper data */#if 0    struct fb_fix_cursorinfo fcrsr;    struct fb_var_cursorinfo *vcrsr;    struct fb_cursorstate crsrstate;#endif    /* Filled in by the low-level console driver */    struct vc_data *conp;           /* pointer to console data */    struct fb_info *fb_info;        /* frame buffer for this console */    int vrows;                      /* number of virtual rows */    unsigned short cursor_x;	    /* current cursor position */    unsigned short cursor_y;    int fgcol;                      /* text colors */    int bgcol;    u_long next_line;               /* offset to one line below */    u_long next_plane;              /* offset to next plane */    u_char *fontdata;               /* Font associated to this display */    unsigned short _fontheightlog;    unsigned short _fontwidthlog;    unsigned short _fontheight;    unsigned short _fontwidth;    int userfont;                   /* != 0 if fontdata kmalloc()ed */    u_short scrollmode;             /* Scroll Method */    short yscroll;                  /* Hardware scrolling */    unsigned char fgshift, bgshift;    unsigned short charmask;	    /* 0xff or 0x1ff */};struct fb_info {   char modename[40];			/* default video mode */   kdev_t node;   int flags;#define FBINFO_FLAG_MODULE	1	/* Low-level driver is a module */   struct fb_ops *fbops;   struct fb_monspecs monspecs;   struct display *disp;		/* initial display variable */   struct vc_data *display_fg;		/* Console visible on this display */   char fontname[40];			/* default font name */   int (*changevar)(int);		/* tell console var has changed */   int (*switch_con)(int, struct fb_info*);					/* tell fb to switch consoles */   int (*updatevar)(int, struct fb_info*);					/* tell fb to update the vars */   void (*blank)(int, struct fb_info*);	/* tell fb to (un)blank the screen */					/* arg = 0: unblank */					/* arg > 0: VESA level (arg-1) */   /* From here on everything is device dependent */};#ifdef MODULE#define FBINFO_FLAG_DEFAULT	FBINFO_FLAG_MODULE#else#define FBINFO_FLAG_DEFAULT	0#endif    /*     *  This structure abstracts from the underlying hardware. It is not     *  mandatory but used by the `generic' frame buffer operations.     *  Read drivers/video/skeletonfb.c for more information.     */struct fbgen_hwswitch {    void (*detect)(void);    int (*encode_fix)(struct fb_fix_screeninfo *fix, const void *par,		      struct fb_info_gen *info);    int (*decode_var)(const struct fb_var_screeninfo *var, void *par,		      struct fb_info_gen *info);    int (*encode_var)(struct fb_var_screeninfo *var, const void *par,		      struct fb_info_gen *info);    void (*get_par)(void *par, struct fb_info_gen *info);    void (*set_par)(const void *par, struct fb_info_gen *info);    int (*getcolreg)(unsigned regno, unsigned *red, unsigned *green,		     unsigned *blue, unsigned *transp, struct fb_info *info);    int (*setcolreg)(unsigned regno, unsigned red, unsigned green,		     unsigned blue, unsigned transp, struct fb_info *info);    int (*pan_display)(const struct fb_var_screeninfo *var,		       struct fb_info_gen *info);    int (*blank)(int blank_mode, struct fb_info_gen *info);    void (*set_disp)(const void *par, struct display *disp,		     struct fb_info_gen *info);};struct fb_info_gen {    struct fb_info info;    /* Entries for a generic frame buffer device */    /* Yes, this starts looking like C++ */    u_int parsize;    struct fbgen_hwswitch *fbhw;   /* From here on everything is device dependent */};    /*     *  `Generic' versions of the frame buffer device operations     */extern int fbgen_get_fix(struct fb_fix_screeninfo *fix, int con,			 struct fb_info *info);extern int fbgen_get_var(struct fb_var_screeninfo *var, int con,			 struct fb_info *info);extern int fbgen_set_var(struct fb_var_screeninfo *var, int con,			 struct fb_info *info);extern int fbgen_get_cmap(struct fb_cmap *cmap, int kspc, int con,			  struct fb_info *info);extern int fbgen_set_cmap(struct fb_cmap *cmap, int kspc, int con,			  struct fb_info *info);extern int fbgen_pan_display(struct fb_var_screeninfo *var, int con,			     struct fb_info *info);extern int fbgen_ioctl(struct inode *inode, struct file *file,		       unsigned int cmd, unsigned long arg, int con,		       struct fb_info *info);    /*     *  Helper functions     */extern int fbgen_do_set_var(struct fb_var_screeninfo *var, int isactive,			    struct fb_info_gen *info);extern void fbgen_set_disp(int con, struct fb_info_gen *info);extern void fbgen_install_cmap(int con, struct fb_info_gen *info);extern int fbgen_update_var(int con, struct fb_info *info);extern int fbgen_switch(int con, struct fb_info *info);extern void fbgen_blank(int blank, struct fb_info *info);struct fb_videomode {    const char *name;    struct fb_var_screeninfo var;};/* drivers/char/fbmem.c */extern int register_framebuffer(struct fb_info *fb_info);extern int unregister_framebuffer(const struct fb_info *fb_info);extern int fbmon_valid_timings(u_int pixclock, u_int htotal, u_int vtotal,			       const struct fb_info *fb_info);extern int fbmon_dpms(const struct fb_info *fb_info);extern int num_registered_fb;extern struct fb_info *registered_fb[FB_MAX];extern char con2fb_map[MAX_NR_CONSOLES];/* drivers/video/fbcon.c */extern struct display fb_display[MAX_NR_CONSOLES];/* drivers/video/fbcmap.c */extern int fb_alloc_cmap(struct fb_cmap *cmap, int len, int transp);extern void fb_copy_cmap(struct fb_cmap *from, struct fb_cmap *to,			 int fsfromto);extern int fb_get_cmap(struct fb_cmap *cmap, int kspc,		       int (*getcolreg)(u_int, u_int *, u_int *, u_int *,					u_int *, struct fb_info *),		       struct fb_info *fb_info);extern int fb_set_cmap(struct fb_cmap *cmap, int kspc,		       int (*setcolreg)(u_int, u_int, u_int, u_int, u_int,					struct fb_info *),		       struct fb_info *fb_info);extern struct fb_cmap *fb_default_cmap(int len);extern void fb_invert_cmaps(void);/* VESA Blanking Levels */#define VESA_NO_BLANKING	0#define VESA_VSYNC_SUSPEND	1#define VESA_HSYNC_SUSPEND	2#define VESA_POWERDOWN		3#endif /* __KERNEL__ */#if 1#define FBCMD_GET_CURRENTPAR	0xDEAD0005#define FBCMD_SET_CURRENTPAR	0xDEAD8005#endif#if 1 /* Preliminary */   /*    *    Hardware Cursor    */#define FBIOGET_FCURSORINFO     0x4607#define FBIOGET_VCURSORINFO     0x4608#define FBIOPUT_VCURSORINFO     0x4609#define FBIOGET_CURSORSTATE     0x460A#define FBIOPUT_CURSORSTATE     0x460Bstruct fb_fix_cursorinfo {	__u16 crsr_width;		/* width and height of the cursor in */	__u16 crsr_height;		/* pixels (zero if no cursor)	*/	__u16 crsr_xsize;		/* cursor size in display pixels */	__u16 crsr_ysize;	__u16 crsr_color1;		/* colormap entry for cursor color1 */	__u16 crsr_color2;		/* colormap entry for cursor color2 */};struct fb_var_cursorinfo {	__u16 width;	__u16 height;	__u16 xspot;	__u16 yspot;	__u8 data[1];			/* field with [height][width]        */};struct fb_cursorstate {	__s16 xoffset;	__s16 yoffset;	__u16 mode;};#define FB_CURSOR_OFF		0#define FB_CURSOR_ON		1#define FB_CURSOR_FLASH		2#endif /* Preliminary */#endif /* _LINUX_FB_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -