Commit 7005b584 authored by Willy Tarreau's avatar Willy Tarreau Committed by Greg Kroah-Hartman

Staging: add lcd-panel driver

This adds the lcd-panel parallel port driver to the staging tree.

See the file, drivers/staging/panel/TODO for what needs to be fixed up
in order for this to be properly merged into the rest of the kernel
tree.

Cc: Willy Tarreau <w@1wt.eu>
Cc: Frank Menne <frank.menne@hsm.de>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 18223a99
...@@ -77,5 +77,7 @@ source "drivers/staging/comedi/Kconfig" ...@@ -77,5 +77,7 @@ source "drivers/staging/comedi/Kconfig"
source "drivers/staging/asus_oled/Kconfig" source "drivers/staging/asus_oled/Kconfig"
source "drivers/staging/panel/Kconfig"
endif # !STAGING_EXCLUDE_BUILD endif # !STAGING_EXCLUDE_BUILD
endif # STAGING endif # STAGING
...@@ -21,3 +21,4 @@ obj-$(CONFIG_RT2860) += rt2860/ ...@@ -21,3 +21,4 @@ obj-$(CONFIG_RT2860) += rt2860/
obj-$(CONFIG_BENET) += benet/ obj-$(CONFIG_BENET) += benet/
obj-$(CONFIG_COMEDI) += comedi/ obj-$(CONFIG_COMEDI) += comedi/
obj-$(CONFIG_ASUS_OLED) += asus_oled/ obj-$(CONFIG_ASUS_OLED) += asus_oled/
obj-$(CONFIG_PANEL) += panel/
This diff is collapsed.
obj-$(CONFIG_PANEL) += panel.o
TODO:
- checkpatch.pl cleanups
- Lindent
- review major/minor usages
- review userspace api
- see if all of this could be easier done in userspace instead.
Please send patches to Greg Kroah-Hartman <greg@kroah.com> and
Willy Tarreau <willy@meta-x.org>
Some LCDs allow you to define up to 8 characters, mapped to ASCII
characters 0 to 7. The escape code to define a new character is
'\e[LG' followed by one digit from 0 to 7, representing the character
number, and up to 8 couples of hex digits terminated by a semi-colon
(';'). Each couple of digits represents a line, with 1-bits for each
illuminated pixel with LSB on the right. Lines are numberred from the
top of the character to the bottom. On a 5x7 matrix, only the 5 lower
bits of the 7 first bytes are used for each character. If the string
is incomplete, only complete lines will be redefined. Here are some
examples :
printf "\e[LG0010101050D1F0C04;" => 0 = [enter]
printf "\e[LG1040E1F0000000000;" => 1 = [up]
printf "\e[LG2000000001F0E0400;" => 2 = [down]
printf "\e[LG3040E1F001F0E0400;" => 3 = [up-down]
printf "\e[LG40002060E1E0E0602;" => 4 = [left]
printf "\e[LG500080C0E0F0E0C08;" => 5 = [right]
printf "\e[LG60016051516141400;" => 6 = "IP"
printf "\e[LG00103071F1F070301;" => big speaker
printf "\e[LG00002061E1E060200;" => small speaker
Willy
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment