linux/drivers/video/fbdev/nuc900fb.h
<<
>>
Prefs
   1/*
   2 *
   3 * Copyright (c) 2009 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 *   Author:
  12 *        Wang Qiang(rurality.linux@gmail.com)  2009/12/16
  13 */
  14
  15#ifndef __NUC900FB_H
  16#define __NUC900FB_H
  17
  18#include <mach/map.h>
  19#include <linux/platform_data/video-nuc900fb.h>
  20
  21enum nuc900_lcddrv_type {
  22        LCDDRV_NUC910,
  23        LCDDRV_NUC930,
  24        LCDDRV_NUC932,
  25        LCDDRV_NUC950,
  26        LCDDRV_NUC960,
  27};
  28
  29
  30#define PALETTE_BUFFER_SIZE     256
  31#define PALETTE_BUFF_CLEAR      (0x80000000) /* entry is clear/invalid */
  32
  33struct nuc900fb_info {
  34        struct device           *dev;
  35        struct clk              *clk;
  36
  37        struct resource         *mem;
  38        void __iomem            *io;
  39        void __iomem            *irq_base;
  40        int                     drv_type;
  41        struct nuc900fb_hw      regs;
  42        unsigned long           clk_rate;
  43
  44#ifdef CONFIG_CPU_FREQ
  45        struct notifier_block   freq_transition;
  46#endif
  47
  48        /* keep these registers in case we need to re-write palette */
  49        u32                     palette_buffer[PALETTE_BUFFER_SIZE];
  50        u32                     pseudo_pal[16];
  51};
  52
  53int nuc900fb_init(void);
  54
  55#endif /* __NUC900FB_H */
  56