blob: 699ac41093660e1b35d002865ea42fa0dd0b8c38 [file] [log] [blame]
Sachin Kamat6abe6e52013-12-30 11:52:10 +05301#ifndef __VIDEO_EP93XX_H
2#define __VIDEO_EP93XX_H
Ryan Mallonc6012182009-09-22 16:47:09 -07003
4struct platform_device;
Ryan Mallonc6012182009-09-22 16:47:09 -07005struct fb_info;
6
Ryan Mallonc6012182009-09-22 16:47:09 -07007/* VideoAttributes flags */
8#define EP93XXFB_STATE_MACHINE_ENABLE (1 << 0)
9#define EP93XXFB_PIXEL_CLOCK_ENABLE (1 << 1)
10#define EP93XXFB_VSYNC_ENABLE (1 << 2)
11#define EP93XXFB_PIXEL_DATA_ENABLE (1 << 3)
12#define EP93XXFB_COMPOSITE_SYNC (1 << 4)
13#define EP93XXFB_SYNC_VERT_HIGH (1 << 5)
14#define EP93XXFB_SYNC_HORIZ_HIGH (1 << 6)
15#define EP93XXFB_SYNC_BLANK_HIGH (1 << 7)
16#define EP93XXFB_PCLK_FALLING (1 << 8)
17#define EP93XXFB_ENABLE_AC (1 << 9)
18#define EP93XXFB_ENABLE_LCD (1 << 10)
19#define EP93XXFB_ENABLE_CCIR (1 << 12)
20#define EP93XXFB_USE_PARALLEL_INTERFACE (1 << 13)
21#define EP93XXFB_ENABLE_INTERRUPT (1 << 14)
22#define EP93XXFB_USB_INTERLACE (1 << 16)
23#define EP93XXFB_USE_EQUALIZATION (1 << 17)
24#define EP93XXFB_USE_DOUBLE_HORZ (1 << 18)
25#define EP93XXFB_USE_DOUBLE_VERT (1 << 19)
26#define EP93XXFB_USE_BLANK_PIXEL (1 << 20)
27#define EP93XXFB_USE_SDCSN0 (0 << 21)
28#define EP93XXFB_USE_SDCSN1 (1 << 21)
29#define EP93XXFB_USE_SDCSN2 (2 << 21)
30#define EP93XXFB_USE_SDCSN3 (3 << 21)
31
32#define EP93XXFB_ENABLE (EP93XXFB_STATE_MACHINE_ENABLE | \
33 EP93XXFB_PIXEL_CLOCK_ENABLE | \
34 EP93XXFB_VSYNC_ENABLE | \
35 EP93XXFB_PIXEL_DATA_ENABLE)
36
37struct ep93xxfb_mach_info {
Ryan Mallonc6012182009-09-22 16:47:09 -070038 unsigned int flags;
Ryan Mallonc6012182009-09-22 16:47:09 -070039 int (*setup)(struct platform_device *pdev);
40 void (*teardown)(struct platform_device *pdev);
41 void (*blank)(int blank_mode, struct fb_info *info);
42};
43
Sachin Kamat6abe6e52013-12-30 11:52:10 +053044#endif /* __VIDEO_EP93XX_H */