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 Sandonis
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 */
28extern unsigned char * cfag12864b_buffer;
29
30/*
31 * Get the refresh rate of the LCD
32 *
33 * Returns the refresh rate (hertz).
34 */
35extern 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 */
43extern unsigned char cfag12864b_enable(void);
44
45/*
46 * Disable refreshing
47 *
48 * You should call this only when you finish using the LCD.
49 */
50extern 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 */
60extern unsigned char cfag12864b_isenabled(void);
61
62/*
63 * Is the module inited?
64 */
65extern unsigned char cfag12864b_isinited(void);
66
67#endif /* _CFAG12864B_H_ */
68
69