linux/drivers/auxdisplay/cfag12864b.c

// SPDX-License-Identifier: GPL-2.0
/*
 *    Filename: cfag12864b.c
 *     Version: 0.1.0
 * Description: cfag12864b LCD driver
 *     Depends: ks0108
 *
 *      Author: Copyright (C) Miguel Ojeda <[email protected]>
 *        Date: 2006-10-31
 */

#include <linux/init.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/fs.h>
#include <linux/slab.h>
#include <linux/cdev.h>
#include <linux/delay.h>
#include <linux/device.h>
#include <linux/jiffies.h>
#include <linux/mutex.h>
#include <linux/uaccess.h>
#include <linux/vmalloc.h>
#include <linux/workqueue.h>
#include <linux/ks0108.h>
#include <linux/cfag12864b.h>


#define CFAG12864B_NAME

/*
 * Module Parameters
 */

static unsigned int cfag12864b_rate =;
module_param(cfag12864b_rate, uint, 0444);
MODULE_PARM_DESC();

unsigned int cfag12864b_getrate(void)
{}

/*
 * cfag12864b Commands
 *
 *	E = Enable signal
 *		Every time E switch from low to high,
 *		cfag12864b/ks0108 reads the command/data.
 *
 *	CS1 = First ks0108controller.
 *		If high, the first ks0108 controller receives commands/data.
 *
 *	CS2 = Second ks0108 controller
 *		If high, the second ks0108 controller receives commands/data.
 *
 *	DI = Data/Instruction
 *		If low, cfag12864b will expect commands.
 *		If high, cfag12864b will expect data.
 *
 */

#define bit(n)

#define CFAG12864B_BIT_E
#define CFAG12864B_BIT_CS1
#define CFAG12864B_BIT_CS2
#define CFAG12864B_BIT_DI

static unsigned char cfag12864b_state;

static void cfag12864b_set(void)
{}

static void cfag12864b_setbit(unsigned char state, unsigned char n)
{}

static void cfag12864b_e(unsigned char state)
{}

static void cfag12864b_cs1(unsigned char state)
{}

static void cfag12864b_cs2(unsigned char state)
{}

static void cfag12864b_di(unsigned char state)
{}

static void cfag12864b_setcontrollers(unsigned char first,
	unsigned char second)
{}

static void cfag12864b_controller(unsigned char which)
{}

static void cfag12864b_displaystate(unsigned char state)
{}

static void cfag12864b_address(unsigned char address)
{}

static void cfag12864b_page(unsigned char page)
{}

static void cfag12864b_startline(unsigned char startline)
{}

static void cfag12864b_writebyte(unsigned char byte)
{}

static void cfag12864b_nop(void)
{}

/*
 * cfag12864b Internal Commands
 */

static void cfag12864b_on(void)
{}

static void cfag12864b_off(void)
{}

static void cfag12864b_clear(void)
{}

/*
 * Update work
 */

unsigned char *cfag12864b_buffer;
static unsigned char *cfag12864b_cache;
static DEFINE_MUTEX(cfag12864b_mutex);
static unsigned char cfag12864b_updating;
static void cfag12864b_update(struct work_struct *delayed_work);
static struct workqueue_struct *cfag12864b_workqueue;
static DECLARE_DELAYED_WORK(cfag12864b_work, cfag12864b_update);

static void cfag12864b_queue(void)
{}

unsigned char cfag12864b_enable(void)
{}

void cfag12864b_disable(void)
{}

unsigned char cfag12864b_isenabled(void)
{}

static void cfag12864b_update(struct work_struct *work)
{}

/*
 * cfag12864b Exported Symbols
 */

EXPORT_SYMBOL_GPL();
EXPORT_SYMBOL_GPL();
EXPORT_SYMBOL_GPL();
EXPORT_SYMBOL_GPL();
EXPORT_SYMBOL_GPL();

/*
 * Is the module inited?
 */

static unsigned char cfag12864b_inited;
unsigned char cfag12864b_isinited(void)
{}
EXPORT_SYMBOL_GPL();

/*
 * Module Init & Exit
 */

static int __init cfag12864b_init(void)
{}

static void __exit cfag12864b_exit(void)
{}

module_init();
module_exit(cfag12864b_exit);

MODULE_LICENSE();
MODULE_AUTHOR();
MODULE_DESCRIPTION();