1351f683bSMiguel Ojeda /* SPDX-License-Identifier: GPL-2.0 */ 270e84049SMiguel Ojeda Sandonis /* 370e84049SMiguel Ojeda Sandonis * Filename: cfag12864b.h 470e84049SMiguel Ojeda Sandonis * Version: 0.1.0 570e84049SMiguel Ojeda Sandonis * Description: cfag12864b LCD driver header 670e84049SMiguel Ojeda Sandonis * 7*c131bd0bSMiguel Ojeda * Author: Copyright (C) Miguel Ojeda <ojeda@kernel.org> 870e84049SMiguel Ojeda Sandonis * Date: 2006-10-12 970e84049SMiguel Ojeda Sandonis */ 1070e84049SMiguel Ojeda Sandonis 1170e84049SMiguel Ojeda Sandonis #ifndef _CFAG12864B_H_ 1270e84049SMiguel Ojeda Sandonis #define _CFAG12864B_H_ 1370e84049SMiguel Ojeda Sandonis 1470e84049SMiguel Ojeda Sandonis #define CFAG12864B_WIDTH (128) 1570e84049SMiguel Ojeda Sandonis #define CFAG12864B_HEIGHT (64) 1670e84049SMiguel Ojeda Sandonis #define CFAG12864B_CONTROLLERS (2) 1770e84049SMiguel Ojeda Sandonis #define CFAG12864B_PAGES (8) 1870e84049SMiguel Ojeda Sandonis #define CFAG12864B_ADDRESSES (64) 1970e84049SMiguel Ojeda Sandonis #define CFAG12864B_SIZE ((CFAG12864B_CONTROLLERS) * \ 2070e84049SMiguel Ojeda Sandonis (CFAG12864B_PAGES) * \ 2170e84049SMiguel Ojeda Sandonis (CFAG12864B_ADDRESSES)) 2270e84049SMiguel Ojeda Sandonis 2370e84049SMiguel Ojeda Sandonis /* 2470e84049SMiguel Ojeda Sandonis * The driver will blit this buffer to the LCD 2570e84049SMiguel Ojeda Sandonis * 2670e84049SMiguel Ojeda Sandonis * Its size is CFAG12864B_SIZE. 2770e84049SMiguel Ojeda Sandonis */ 2870e84049SMiguel Ojeda Sandonis extern unsigned char * cfag12864b_buffer; 2970e84049SMiguel Ojeda Sandonis 3070e84049SMiguel Ojeda Sandonis /* 3170e84049SMiguel Ojeda Sandonis * Get the refresh rate of the LCD 3270e84049SMiguel Ojeda Sandonis * 3325985edcSLucas De Marchi * Returns the refresh rate (hertz). 3470e84049SMiguel Ojeda Sandonis */ 3570e84049SMiguel Ojeda Sandonis extern unsigned int cfag12864b_getrate(void); 3670e84049SMiguel Ojeda Sandonis 3770e84049SMiguel Ojeda Sandonis /* 3870e84049SMiguel Ojeda Sandonis * Enable refreshing 3970e84049SMiguel Ojeda Sandonis * 4070e84049SMiguel Ojeda Sandonis * Returns 0 if successful (anyone was using it), 4170e84049SMiguel Ojeda Sandonis * or != 0 if failed (someone is using it). 4270e84049SMiguel Ojeda Sandonis */ 4370e84049SMiguel Ojeda Sandonis extern unsigned char cfag12864b_enable(void); 4470e84049SMiguel Ojeda Sandonis 4570e84049SMiguel Ojeda Sandonis /* 4670e84049SMiguel Ojeda Sandonis * Disable refreshing 4770e84049SMiguel Ojeda Sandonis * 4870e84049SMiguel Ojeda Sandonis * You should call this only when you finish using the LCD. 4970e84049SMiguel Ojeda Sandonis */ 5070e84049SMiguel Ojeda Sandonis extern void cfag12864b_disable(void); 5170e84049SMiguel Ojeda Sandonis 5270e84049SMiguel Ojeda Sandonis /* 5370e84049SMiguel Ojeda Sandonis * Is enabled refreshing? (is anyone using the module?) 5470e84049SMiguel Ojeda Sandonis * 5570e84049SMiguel Ojeda Sandonis * Returns 0 if refreshing is not enabled (anyone is using it), 5670e84049SMiguel Ojeda Sandonis * or != 0 if refreshing is enabled (someone is using it). 5770e84049SMiguel Ojeda Sandonis * 5870e84049SMiguel Ojeda Sandonis * Useful for buffer read-only modules. 5970e84049SMiguel Ojeda Sandonis */ 6070e84049SMiguel Ojeda Sandonis extern unsigned char cfag12864b_isenabled(void); 6170e84049SMiguel Ojeda Sandonis 6234173a4aSMiguel Ojeda /* 6334173a4aSMiguel Ojeda * Is the module inited? 6434173a4aSMiguel Ojeda */ 6534173a4aSMiguel Ojeda extern unsigned char cfag12864b_isinited(void); 6634173a4aSMiguel Ojeda 6770e84049SMiguel Ojeda Sandonis #endif /* _CFAG12864B_H_ */ 6870e84049SMiguel Ojeda Sandonis 69