1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  *    Filename: cfag12864b.h
4  *     Version: 0.1.0
5  * Description: cfag12864b LCD driver header
6  *
7  *      Author: Copyright (C) Miguel Ojeda <ojeda@kernel.org>
8  *        Date: 2006-10-12
9  */
10 
11 #ifndef _CFAG12864B_H_
12 #define _CFAG12864B_H_
13 
14 #define CFAG12864B_WIDTH	(128)
15 #define CFAG12864B_HEIGHT	(64)
16 #define CFAG12864B_CONTROLLERS	(2)
17 #define CFAG12864B_PAGES	(8)
18 #define CFAG12864B_ADDRESSES	(64)
19 #define CFAG12864B_SIZE		((CFAG12864B_CONTROLLERS) * \
20 				(CFAG12864B_PAGES) * \
21 				(CFAG12864B_ADDRESSES))
22 
23 /*
24  * The driver will blit this buffer to the LCD
25  *
26  * Its size is CFAG12864B_SIZE.
27  */
28 extern unsigned char * cfag12864b_buffer;
29 
30 /*
31  * Get the refresh rate of the LCD
32  *
33  * Returns the refresh rate (hertz).
34  */
35 extern unsigned int cfag12864b_getrate(void);
36 
37 /*
38  * Enable refreshing
39  *
40  * Returns 0 if successful (anyone was using it),
41  * or != 0 if failed (someone is using it).
42  */
43 extern unsigned char cfag12864b_enable(void);
44 
45 /*
46  * Disable refreshing
47  *
48  * You should call this only when you finish using the LCD.
49  */
50 extern void cfag12864b_disable(void);
51 
52 /*
53  * Is enabled refreshing? (is anyone using the module?)
54  *
55  * Returns 0 if refreshing is not enabled (anyone is using it),
56  * or != 0 if refreshing is enabled (someone is using it).
57  *
58  * Useful for buffer read-only modules.
59  */
60 extern unsigned char cfag12864b_isenabled(void);
61 
62 /*
63  * Is the module inited?
64  */
65 extern unsigned char cfag12864b_isinited(void);
66 
67 #endif /* _CFAG12864B_H_ */
68 
69