5  * linux/drivers/video/pxafb.h
 
   6  *    -- Intel PXA250/210 LCD Controller Frame Buffer Device
 
   8  *  Copyright (C) 1999 Eric A. Thomas.
 
   9  *  Copyright (C) 2004 Jean-Frederic Clere.
 
  10  *  Copyright (C) 2004 Ian Campbell.
 
  11  *  Copyright (C) 2004 Jeff Lackey.
 
  12  *   Based on sa1100fb.c Copyright (C) 1999 Eric A. Thomas
 
  14  *   Based on acornfb.c Copyright (C) Russell King.
 
  16  *  2001-08-03: Cliff Brake <cbrake@acclent.com>
 
  17  *       - ported SA1100 code to PXA
 
  19  * This file is subject to the terms and conditions of the GNU General Public
 
  20  * License.  See the file COPYING in the main directory of this archive
 
  24 /* Shadows for LCD controller registers */
 
  25 struct pxafb_lcd_reg {
 
  32 /* PXA LCD DMA descriptor */
 
  33 struct pxafb_dma_descriptor {
 
  49          * These are the addresses we mapped
 
  50          * the framebuffer memory region to.
 
  52         /* raw memory addresses */
 
  53         dma_addr_t              map_dma;        /* physical */
 
  54         u_char *                map_cpu;        /* virtual */
 
  57         /* addresses of pieces placed in raw buffer */
 
  58         u_char *                screen_cpu;     /* virtual address of frame buffer */
 
  59         dma_addr_t              screen_dma;     /* physical address of frame buffer */
 
  60         u16 *                   palette_cpu;    /* virtual address of palette memory */
 
  61         dma_addr_t              palette_dma;    /* physical address of palette memory */
 
  65         struct pxafb_dma_descriptor *   dmadesc_fblow_cpu;
 
  66         dma_addr_t              dmadesc_fblow_dma;
 
  67         struct pxafb_dma_descriptor *   dmadesc_fbhigh_cpu;
 
  68         dma_addr_t              dmadesc_fbhigh_dma;
 
  69         struct pxafb_dma_descriptor *   dmadesc_palette_cpu;
 
  70         dma_addr_t              dmadesc_palette_dma;
 
  86         unsigned long   hsync_time;
 
  88         volatile u_char         state;
 
  89         volatile u_char         task_state;
 
  90         struct semaphore        ctrlr_sem;
 
  91         wait_queue_head_t       ctrlr_wait;
 
  92         struct work_struct      task;
 
  94 #ifdef CONFIG_CPU_FREQ
 
  95         struct notifier_block   freq_transition;
 
  96         struct notifier_block   freq_policy;
 
 100 #define TO_INF(ptr,member) container_of(ptr,struct pxafb_info,member)
 
 103  * These are the actions for set_ctrlr_state
 
 105 #define C_DISABLE               (0)
 
 107 #define C_DISABLE_CLKCHANGE     (2)
 
 108 #define C_ENABLE_CLKCHANGE      (3)
 
 109 #define C_REENABLE              (4)
 
 110 #define C_DISABLE_PM            (5)
 
 111 #define C_ENABLE_PM             (6)
 
 112 #define C_STARTUP               (7)
 
 114 #define PXA_NAME        "PXA"
 
 117  * Minimum X and Y resolutions
 
 122 #endif /* __PXAFB_H__ */