1 /* arch/arm/plat-samsung/include/plat/fb-s3c2410.h 2 * 3 * Copyright (c) 2004 Arnaud Patard <arnaud.patard@rtp-net.org> 4 * 5 * Inspired by pxafb.h 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License version 2 as 9 * published by the Free Software Foundation. 10 */ 11 12 #ifndef __ASM_PLAT_FB_S3C2410_H 13 #define __ASM_PLAT_FB_S3C2410_H __FILE__ 14 15 struct s3c2410fb_hw { 16 unsigned long lcdcon1; 17 unsigned long lcdcon2; 18 unsigned long lcdcon3; 19 unsigned long lcdcon4; 20 unsigned long lcdcon5; 21 }; 22 23 /* LCD description */ 24 struct s3c2410fb_display { 25 /* LCD type */ 26 unsigned type; 27 28 /* Screen size */ 29 unsigned short width; 30 unsigned short height; 31 32 /* Screen info */ 33 unsigned short xres; 34 unsigned short yres; 35 unsigned short bpp; 36 37 unsigned pixclock; /* pixclock in picoseconds */ 38 unsigned short left_margin; /* value in pixels (TFT) or HCLKs (STN) */ 39 unsigned short right_margin; /* value in pixels (TFT) or HCLKs (STN) */ 40 unsigned short hsync_len; /* value in pixels (TFT) or HCLKs (STN) */ 41 unsigned short upper_margin; /* value in lines (TFT) or 0 (STN) */ 42 unsigned short lower_margin; /* value in lines (TFT) or 0 (STN) */ 43 unsigned short vsync_len; /* value in lines (TFT) or 0 (STN) */ 44 45 /* lcd configuration registers */ 46 unsigned long lcdcon5; 47 }; 48 49 struct s3c2410fb_mach_info { 50 51 struct s3c2410fb_display *displays; /* attached diplays info */ 52 unsigned num_displays; /* number of defined displays */ 53 unsigned default_display; 54 55 /* GPIOs */ 56 57 unsigned long gpcup; 58 unsigned long gpcup_mask; 59 unsigned long gpccon; 60 unsigned long gpccon_mask; 61 unsigned long gpdup; 62 unsigned long gpdup_mask; 63 unsigned long gpdcon; 64 unsigned long gpdcon_mask; 65 66 /* lpc3600 control register */ 67 unsigned long lpcsel; 68 }; 69 70 extern void __init s3c24xx_fb_set_platdata(struct s3c2410fb_mach_info *); 71 72 #endif /* __ASM_PLAT_FB_S3C2410_H */ 73