| /**************************************************************************** | 
 |  **************************************************************************** | 
 |  *** | 
 |  ***   This header was automatically generated from a Linux kernel header | 
 |  ***   of the same name, to make information necessary for userspace to | 
 |  ***   call into the kernel available to libc.  It contains only constants, | 
 |  ***   structures, and macros generated from the original header, and thus, | 
 |  ***   contains no copyrightable information. | 
 |  *** | 
 |  **************************************************************************** | 
 |  ****************************************************************************/ | 
 | #ifndef __ASM_SH_MOBILE_LCDC_H__ | 
 | #define __ASM_SH_MOBILE_LCDC_H__ | 
 |  | 
 | #include <linux/fb.h> | 
 |  | 
 | enum { RGB8, | 
 |  RGB9, | 
 |  RGB12A, | 
 |  RGB12B, | 
 |  RGB16, | 
 |  RGB18, | 
 |  RGB24, | 
 |  SYS8A, | 
 |  SYS8B, | 
 |  SYS8C, | 
 |  SYS8D, | 
 |  SYS9, | 
 |  SYS12, | 
 |  SYS16A, | 
 |  SYS16B, | 
 |  SYS16C, | 
 |  SYS18, | 
 |  SYS24 }; | 
 |  | 
 | enum { LCDC_CHAN_DISABLED = 0, | 
 |  LCDC_CHAN_MAINLCD, | 
 |  LCDC_CHAN_SUBLCD }; | 
 |  | 
 | enum { LCDC_CLK_BUS, LCDC_CLK_PERIPHERAL, LCDC_CLK_EXTERNAL }; | 
 |  | 
 | struct sh_mobile_lcdc_sys_bus_cfg { | 
 |  unsigned long ldmt2r; | 
 |  unsigned long ldmt3r; | 
 | }; | 
 |  | 
 | struct sh_mobile_lcdc_sys_bus_ops { | 
 |  void (*write_index)(void *handle, unsigned long data); | 
 |  void (*write_data)(void *handle, unsigned long data); | 
 |  unsigned long (*read_data)(void *handle); | 
 | }; | 
 |  | 
 | struct sh_mobile_lcdc_board_cfg { | 
 |  void *board_data; | 
 |  int (*setup_sys)(void *board_data, void *sys_ops_handle, | 
 |  struct sh_mobile_lcdc_sys_bus_ops *sys_ops); | 
 |  void (*display_on)(void *board_data); | 
 |  void (*display_off)(void *board_data); | 
 | }; | 
 |  | 
 | struct sh_mobile_lcdc_lcd_size_cfg { | 
 |  unsigned long width; | 
 |  unsigned long height; | 
 | }; | 
 |  | 
 | struct sh_mobile_lcdc_chan_cfg { | 
 |  int chan; | 
 |  int bpp; | 
 |  int interface_type; | 
 |  int clock_divider; | 
 |  struct fb_videomode lcd_cfg; | 
 |  struct sh_mobile_lcdc_lcd_size_cfg lcd_size_cfg; | 
 |  struct sh_mobile_lcdc_board_cfg board_cfg; | 
 |  struct sh_mobile_lcdc_sys_bus_cfg sys_bus_cfg; | 
 | }; | 
 |  | 
 | struct sh_mobile_lcdc_info { | 
 |  unsigned long lddckr; | 
 |  int clock_source; | 
 |  struct sh_mobile_lcdc_chan_cfg ch[2]; | 
 | }; | 
 |  | 
 | #endif |