58 lines · c
1/*2 * metronomefb.h - definitions for the metronome framebuffer driver3 *4 * Copyright (C) 2008 by Jaya Kumar5 *6 * This file is subject to the terms and conditions of the GNU General Public7 * License. See the file COPYING in the main directory of this archive for8 * more details.9 *10 */11 12#ifndef _LINUX_METRONOMEFB_H_13#define _LINUX_METRONOMEFB_H_14 15/* command structure used by metronome controller */16struct metromem_cmd {17 u16 opcode;18 u16 args[((64-2)/2)];19 u16 csum;20};21 22/* struct used by metronome. board specific stuff comes from *board */23struct metronomefb_par {24 struct metromem_cmd *metromem_cmd;25 unsigned char *metromem_wfm;26 unsigned char *metromem_img;27 u16 *metromem_img_csum;28 u16 *csum_table;29 dma_addr_t metromem_dma;30 struct fb_info *info;31 struct metronome_board *board;32 wait_queue_head_t waitq;33 u8 frame_count;34 int extra_size;35 int dt;36};37 38/* board specific routines and data */39struct metronome_board {40 struct module *owner; /* the platform device */41 void (*set_rst)(struct metronomefb_par *, int);42 void (*set_stdby)(struct metronomefb_par *, int);43 void (*cleanup)(struct metronomefb_par *);44 int (*met_wait_event)(struct metronomefb_par *);45 int (*met_wait_event_intr)(struct metronomefb_par *);46 int (*setup_irq)(struct fb_info *);47 int (*setup_fb)(struct metronomefb_par *);48 int (*setup_io)(struct metronomefb_par *);49 int (*get_panel_type)(void);50 unsigned char *metromem;51 int fw;52 int fh;53 int wfm_size;54 struct fb_info *host_fbinfo; /* the host LCD controller's fbi */55};56 57#endif58