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