diff options
-rw-r--r-- | drv_LCDLinux.c | 10 | ||||
-rw-r--r-- | drv_LCDLinux.h | 56 |
2 files changed, 44 insertions, 22 deletions
diff --git a/drv_LCDLinux.c b/drv_LCDLinux.c index 50688b0..526c82d 100644 --- a/drv_LCDLinux.c +++ b/drv_LCDLinux.c @@ -1,4 +1,4 @@ -/* $Id: drv_LCDLinux.c,v 1.8 2005/05/08 04:32:44 reinelt Exp $ +/* $Id: drv_LCDLinux.c,v 1.9 2005/06/15 05:24:35 reinelt Exp $ * * driver for the LCD-Linux HD44780 kernel driver * http://lcd-linux.sourceforge.net @@ -24,6 +24,9 @@ * * * $Log: drv_LCDLinux.c,v $ + * Revision 1.9 2005/06/15 05:24:35 reinelt + * updated LCD-Linux driver to version 0.8.9 + * * Revision 1.8 2005/05/08 04:32:44 reinelt * CodingStyle added and applied * @@ -81,6 +84,7 @@ #include "drv.h" #include "drv_generic_text.h" +#define HD44780_MAIN #include "drv_LCDLinux.h" @@ -190,8 +194,12 @@ static int drv_LL_start(const char *section, const int quiet) } info("%s: %dx%d display at 0x%x, %d controllers, flags=0x%02x:", Name, buf.disp_cols, buf.cntr_rows, buf.io, buf.num_cntr, buf.flags); + +#if 0 + /* these two flags vanished with release 0.8.9 */ info("%s: /proc support %sabled", Name, buf.flags & LCD_PROC_ON ? "en" : "dis"); info("%s: tty support %sabled", Name, buf.flags & LCD_ETTY_ON ? "en" : "dis"); +#endif info("%s: console support %sabled", Name, buf.flags & LCD_CONSOLE ? "en" : "dis"); info("%s: bus width %d bits", Name, buf.flags & LCD_4BITS_BUS ? 4 : 8); info("%s: font size %s", Name, buf.flags & LCD_5X10_FONT ? "5x10" : "5x8"); diff --git a/drv_LCDLinux.h b/drv_LCDLinux.h index af638c4..1a36454 100644 --- a/drv_LCDLinux.h +++ b/drv_LCDLinux.h @@ -1,6 +1,6 @@ /* lcd.h * - * $Id: drv_LCDLinux.h,v 1.4 2005/05/08 04:32:44 reinelt Exp $ + * $Id: drv_LCDLinux.h,v 1.5 2005/06/15 05:24:35 reinelt Exp $ * * LCD driver for HD44780 compatible displays connected to the parallel port. * @@ -24,8 +24,19 @@ * */ -#ifndef LCD_H -#define LCD_H +#ifndef LCD_LINUX_H +#define LCD_LINUX_H + +#ifndef HD44780_MAIN +#warning +#warning LCD-Linux is still in development stage and +#warning aims at speed and optimization. For these +#warning reasons there is no guarantee of backward +#warning compatibility between different LCD-Linux +#warning versions. Be sure to use the lcd-linux.h +#warning file of the same version as the module. +#warning +#endif #define LCD_LINUX_VERSION "0.8.9-CVS" /* Version number */ @@ -36,34 +47,37 @@ #include <linux/types.h> struct lcd_driver { - /* Hardware */ - unsigned short io; /* Parport base address */ - unsigned short flags; /* Flags (see Documentation) */ + /* Hardware */ + unsigned short io; /* Parport base address */ + unsigned short flags; /* Flags (see Documentation) */ - /* Display geometry */ - unsigned short num_cntr; /* Number of available controllers */ - unsigned short cntr_rows; /* Rows per controller */ - unsigned short disp_cols; /* Columns */ - unsigned short frames; /* Framebuffer frames */ + /* Display geometry */ + unsigned short num_cntr; /* Number of available controllers */ + unsigned short cntr_rows; /* Rows per controller */ + unsigned short disp_cols; /* Columns */ + unsigned short frames; /* Framebuffer frames */ - unsigned short tabstop; /* Length of tab character */ + unsigned short tabstop; /* Length of tab character */ }; /* IOCTLs */ #include <asm/ioctl.h> #define IOCTL_SET_PARAM _IOW(LCD_MAJOR, 0, struct lcd_driver *) #define IOCTL_GET_PARAM _IOR(LCD_MAJOR, 1, struct lcd_driver *) +#define IOCTL_RAW_CMD _IOW(LCD_MAJOR, 2, unsigned char *) +#define IOCTL_RESET_CHARMAP _IOW(LCD_MAJOR, 3, void *) +#define IOCTL_SAVE_CHARMAP _IOW(LCD_MAJOR, 4, void *) +#define IOCTL_RESTORE_CHARMAP _IOW(LCD_MAJOR, 5, void *) +#define IOCTL_SWAP_CHARMAP _IOW(LCD_MAJOR, 6, void *) -#define LCD_PROC_ON 0x0001 /* Enable the /proc filesystem support */ -#define LCD_ETTY_ON 0x0002 /* Enable the tty support */ -#define LCD_CONSOLE 0x0004 /* Enable the console support */ -#define LCD_4BITS_BUS 0x0008 /* Set the bus length to 4 bits */ -#define LCD_5X10_FONT 0x0010 /* Use 5x10 dots fonts */ -#define LCD_CHECK_BF 0x0020 /* Do busy flag checking */ +#define LCD_CHECK_BF 0x0001 /* Do busy flag checking */ +#define LCD_CONSOLE 0x0002 /* Enable the console support */ +#define LCD_4BITS_BUS 0x0004 /* Set the bus length to 4 bits */ +#define LCD_5X10_FONT 0x0008 /* Use 5x10 dots fonts */ -#ifdef __KERNEL__ /* The rest is for kernel only */ +#ifdef __KERNEL__ /* The rest is for kernel only */ #include <linux/version.h> @@ -87,6 +101,6 @@ int lcd_write(const char *, int, unsigned int); int lcd_read(char *, int, unsigned int); #endif -#endif /* __KERNEL__ */ +#endif /* __KERNEL__ */ -#endif /* External interface included */ +#endif /* External interface included */ |