linux/include/linux/platform_data/video-nuc900fb.h
<<
>>
Prefs
   1/* linux/include/asm/arch-nuc900/fb.h
   2 *
   3 * Copyright (c) 2008 Nuvoton technology corporation
   4 * All rights reserved.
   5 *
   6 * This program is free software; you can redistribute it and/or modify
   7 * it under the terms of the GNU General Public License as published by
   8 * the Free Software Foundation; either version 2 of the License, or
   9 * (at your option) any later version.
  10 *
  11 * Changelog:
  12 *
  13 *   2008/08/26     vincen.zswan modify this file for LCD.
  14 */
  15
  16#ifndef __ASM_ARM_FB_H
  17#define __ASM_ARM_FB_H
  18
  19
  20
  21/* LCD Controller Hardware Desc */
  22struct nuc900fb_hw {
  23        unsigned int lcd_dccs;
  24        unsigned int lcd_device_ctrl;
  25        unsigned int lcd_mpulcd_cmd;
  26        unsigned int lcd_int_cs;
  27        unsigned int lcd_crtc_size;
  28        unsigned int lcd_crtc_dend;
  29        unsigned int lcd_crtc_hr;
  30        unsigned int lcd_crtc_hsync;
  31        unsigned int lcd_crtc_vr;
  32        unsigned int lcd_va_baddr0;
  33        unsigned int lcd_va_baddr1;
  34        unsigned int lcd_va_fbctrl;
  35        unsigned int lcd_va_scale;
  36        unsigned int lcd_va_test;
  37        unsigned int lcd_va_win;
  38        unsigned int lcd_va_stuff;
  39};
  40
  41/* LCD Display Description */
  42struct nuc900fb_display {
  43        /* LCD Image type */
  44        unsigned type;
  45
  46        /* LCD Screen Size */
  47        unsigned short width;
  48        unsigned short height;
  49
  50        /* LCD Screen Info */
  51        unsigned short xres;
  52        unsigned short yres;
  53        unsigned short bpp;
  54
  55        unsigned long pixclock;
  56        unsigned short left_margin;
  57        unsigned short right_margin;
  58        unsigned short hsync_len;
  59        unsigned short upper_margin;
  60        unsigned short lower_margin;
  61        unsigned short vsync_len;
  62
  63        /* hardware special register value */
  64        unsigned int dccs;
  65        unsigned int devctl;
  66        unsigned int fbctrl;
  67        unsigned int scale;
  68};
  69
  70struct nuc900fb_mach_info {
  71        struct nuc900fb_display *displays;
  72        unsigned num_displays;
  73        unsigned default_display;
  74        /* GPIO Setting  Info */
  75        unsigned gpio_dir;
  76        unsigned gpio_dir_mask;
  77        unsigned gpio_data;
  78        unsigned gpio_data_mask;
  79};
  80
  81extern void __init nuc900_fb_set_platdata(struct nuc900fb_mach_info *);
  82
  83#endif /* __ASM_ARM_FB_H */
  84