1
2
3
4
5
6
7
8
9
10
11
12 #ifndef _LINUX_METRONOMEFB_H_
13 #define _LINUX_METRONOMEFB_H_
14
15
16 struct metromem_cmd {
17 u16 opcode;
18 u16 args[((64-2)/2)];
19 u16 csum;
20 };
21
22
23 struct 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
39 struct metronome_board {
40 struct module *owner;
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;
55 };
56
57 #endif