hc
2023-03-21 4b55d97acc464242bcd6a8ae77b8ff37c22dec58
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
/*
 *
 * Copyright (c) 2009 Nuvoton technology corporation
 * All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 *   Author:
 *        Wang Qiang(rurality.linux@gmail.com)  2009/12/16
 */
 
#ifndef __NUC900FB_H
#define __NUC900FB_H
 
#include <mach/map.h>
#include <linux/platform_data/video-nuc900fb.h>
 
enum nuc900_lcddrv_type {
   LCDDRV_NUC910,
   LCDDRV_NUC930,
   LCDDRV_NUC932,
   LCDDRV_NUC950,
   LCDDRV_NUC960,
};
 
 
#define PALETTE_BUFFER_SIZE    256
#define PALETTE_BUFF_CLEAR     (0x80000000) /* entry is clear/invalid */
 
struct nuc900fb_info {
   struct device        *dev;
   struct clk        *clk;
 
   struct resource        *mem;
   void __iomem        *io;
   void __iomem        *irq_base;
   int             drv_type;
   struct nuc900fb_hw    regs;
   unsigned long        clk_rate;
 
#ifdef CONFIG_CPU_FREQ
   struct notifier_block    freq_transition;
#endif
 
   /* keep these registers in case we need to re-write palette */
   u32            palette_buffer[PALETTE_BUFFER_SIZE];
   u32            pseudo_pal[16];
};
 
int nuc900fb_init(void);
 
#endif /* __NUC900FB_H */