1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 270e84049SMiguel Ojeda Sandonis# 370e84049SMiguel Ojeda Sandonis# For a description of the syntax of this configuration file, 4cd238effSMauro Carvalho Chehab# see Documentation/kbuild/kconfig-language.rst. 570e84049SMiguel Ojeda Sandonis# 670e84049SMiguel Ojeda Sandonis# Auxiliary display drivers configuration. 770e84049SMiguel Ojeda Sandonis# 870e84049SMiguel Ojeda Sandonis 9f5920969SJan Engelhardtmenuconfig AUXDISPLAY 10f5920969SJan Engelhardt bool "Auxiliary Display support" 11a7f7f624SMasahiro Yamada help 1206bfb7ebSJan Engelhardt Say Y here to get to see options for auxiliary display drivers. 1306bfb7ebSJan Engelhardt This option alone does not add any kernel code. 1406bfb7ebSJan Engelhardt 1506bfb7ebSJan Engelhardt If you say N, all options in this submenu will be skipped and disabled. 16f5920969SJan Engelhardt 17c0aa24baSH Hartley Sweetenif AUXDISPLAY 1870e84049SMiguel Ojeda Sandonis 1916934de4SAndy Shevchenko# 2016934de4SAndy Shevchenko# Character LCD section 2116934de4SAndy Shevchenko# 22718e05edSLars Poeschelconfig CHARLCD 23718e05edSLars Poeschel tristate "Character LCD core support" if COMPILE_TEST 24718e05edSLars Poeschel help 25718e05edSLars Poeschel This is the base system for character-based LCD displays. 26718e05edSLars Poeschel It makes no sense to have this alone, you select your display driver 27718e05edSLars Poeschel and if it needs the charlcd core, it will select it automatically. 28718e05edSLars Poeschel This is some character LCD core interface that multiple drivers can 29718e05edSLars Poeschel use. 30718e05edSLars Poeschel 31718e05edSLars Poeschelconfig HD44780_COMMON 32718e05edSLars Poeschel tristate "Common functions for HD44780 (and compatibles) LCD displays" if COMPILE_TEST 33ffdf726dSLars Poeschel select CHARLCD 34718e05edSLars Poeschel help 35718e05edSLars Poeschel This is a module with the common symbols for HD44780 (and compatibles) 36718e05edSLars Poeschel displays. This is the code that multiple other modules use. It is not 37718e05edSLars Poeschel useful alone. If you have some sort of HD44780 compatible display, 38718e05edSLars Poeschel you very likely use this. It is selected automatically by selecting 39718e05edSLars Poeschel your concrete display. 40718e05edSLars Poeschel 41d47d8836SGeert Uytterhoevenconfig HD44780 42d47d8836SGeert Uytterhoeven tristate "HD44780 Character LCD support" 43d47d8836SGeert Uytterhoeven depends on GPIOLIB || COMPILE_TEST 44718e05edSLars Poeschel select HD44780_COMMON 45a7f7f624SMasahiro Yamada help 46d47d8836SGeert Uytterhoeven Enable support for Character LCDs using a HD44780 controller. 47d47d8836SGeert Uytterhoeven The LCD is accessible through the /dev/lcd char device (10, 156). 48d47d8836SGeert Uytterhoeven This code can either be compiled as a module, or linked into the 49d47d8836SGeert Uytterhoeven kernel and started at boot. 50d47d8836SGeert Uytterhoeven If you don't understand what all this is about, say N. 51d47d8836SGeert Uytterhoeven 528c9108d0SLars Poeschelconfig LCD2S 538c9108d0SLars Poeschel tristate "lcd2s 20x4 character display over I2C console" 548c9108d0SLars Poeschel depends on I2C 558c9108d0SLars Poeschel select CHARLCD 568c9108d0SLars Poeschel help 578c9108d0SLars Poeschel This is a driver that lets you use the lcd2s 20x4 character display 588c9108d0SLars Poeschel from Modtronix engineering as a console output device. The display 598c9108d0SLars Poeschel is a simple single color character display. You have to connect it 608c9108d0SLars Poeschel to an I2C bus. 618c9108d0SLars Poeschel 6224c764abSMans Rullgardmenuconfig PARPORT_PANEL 6351c1e9b5SAndy Shevchenko tristate "Parallel port LCD/Keypad Panel support" 6451c1e9b5SAndy Shevchenko depends on PARPORT 65718e05edSLars Poeschel select HD44780_COMMON 66a7f7f624SMasahiro Yamada help 6751c1e9b5SAndy Shevchenko Say Y here if you have an HD44780 or KS-0074 LCD connected to your 6851c1e9b5SAndy Shevchenko parallel port. This driver also features 4 and 6-key keypads. The LCD 6951c1e9b5SAndy Shevchenko is accessible through the /dev/lcd char device (10, 156), and the 7051c1e9b5SAndy Shevchenko keypad through /dev/keypad (10, 185). This code can either be 7151c1e9b5SAndy Shevchenko compiled as a module, or linked into the kernel and started at boot. 7251c1e9b5SAndy Shevchenko If you don't understand what all this is about, say N. 7351c1e9b5SAndy Shevchenko 7424c764abSMans Rullgardif PARPORT_PANEL 7551c1e9b5SAndy Shevchenko 7651c1e9b5SAndy Shevchenkoconfig PANEL_PARPORT 7751c1e9b5SAndy Shevchenko int "Default parallel port number (0=LPT1)" 7851c1e9b5SAndy Shevchenko range 0 255 7951c1e9b5SAndy Shevchenko default "0" 80a7f7f624SMasahiro Yamada help 8151c1e9b5SAndy Shevchenko This is the index of the parallel port the panel is connected to. One 8251c1e9b5SAndy Shevchenko driver instance only supports one parallel port, so if your keypad 8351c1e9b5SAndy Shevchenko and LCD are connected to two separate ports, you have to start two 8451c1e9b5SAndy Shevchenko modules with different arguments. Numbering starts with '0' for LPT1, 8551c1e9b5SAndy Shevchenko and so on. 8651c1e9b5SAndy Shevchenko 8751c1e9b5SAndy Shevchenkoconfig PANEL_PROFILE 8851c1e9b5SAndy Shevchenko int "Default panel profile (0-5, 0=custom)" 8951c1e9b5SAndy Shevchenko range 0 5 9051c1e9b5SAndy Shevchenko default "5" 91a7f7f624SMasahiro Yamada help 9251c1e9b5SAndy Shevchenko To ease configuration, the driver supports different configuration 9351c1e9b5SAndy Shevchenko profiles for past and recent wirings. These profiles can also be 9451c1e9b5SAndy Shevchenko used to define an approximative configuration, completed by a few 9551c1e9b5SAndy Shevchenko other options. Here are the profiles : 9651c1e9b5SAndy Shevchenko 9751c1e9b5SAndy Shevchenko 0 = custom (see further) 9851c1e9b5SAndy Shevchenko 1 = 2x16 parallel LCD, old keypad 9951c1e9b5SAndy Shevchenko 2 = 2x16 serial LCD (KS-0074), new keypad 10051c1e9b5SAndy Shevchenko 3 = 2x16 parallel LCD (Hantronix), no keypad 10151c1e9b5SAndy Shevchenko 4 = 2x16 parallel LCD (Nexcom NSA1045) with Nexcom's keypad 10251c1e9b5SAndy Shevchenko 5 = 2x40 parallel LCD (old one), with old keypad 10351c1e9b5SAndy Shevchenko 10451c1e9b5SAndy Shevchenko Custom configurations allow you to define how your display is 10551c1e9b5SAndy Shevchenko wired to the parallel port, and how it works. This is only intended 10651c1e9b5SAndy Shevchenko for experts. 10751c1e9b5SAndy Shevchenko 10851c1e9b5SAndy Shevchenkoconfig PANEL_KEYPAD 10951c1e9b5SAndy Shevchenko depends on PANEL_PROFILE="0" 11051c1e9b5SAndy Shevchenko int "Keypad type (0=none, 1=old 6 keys, 2=new 6 keys, 3=Nexcom 4 keys)" 11151c1e9b5SAndy Shevchenko range 0 3 11251c1e9b5SAndy Shevchenko default 0 113a7f7f624SMasahiro Yamada help 11451c1e9b5SAndy Shevchenko This enables and configures a keypad connected to the parallel port. 11551c1e9b5SAndy Shevchenko The keys will be read from character device 10,185. Valid values are : 11651c1e9b5SAndy Shevchenko 11751c1e9b5SAndy Shevchenko 0 : do not enable this driver 11851c1e9b5SAndy Shevchenko 1 : old 6 keys keypad 11951c1e9b5SAndy Shevchenko 2 : new 6 keys keypad, as used on the server at www.ant-computing.com 12051c1e9b5SAndy Shevchenko 3 : Nexcom NSA1045's 4 keys keypad 12151c1e9b5SAndy Shevchenko 12251c1e9b5SAndy Shevchenko New profiles can be described in the driver source. The driver also 12351c1e9b5SAndy Shevchenko supports simultaneous keys pressed when the keypad supports them. 12451c1e9b5SAndy Shevchenko 12551c1e9b5SAndy Shevchenkoconfig PANEL_LCD 12651c1e9b5SAndy Shevchenko depends on PANEL_PROFILE="0" 12751c1e9b5SAndy Shevchenko int "LCD type (0=none, 1=custom, 2=old //, 3=ks0074, 4=hantronix, 5=Nexcom)" 12851c1e9b5SAndy Shevchenko range 0 5 12951c1e9b5SAndy Shevchenko default 0 130a7f7f624SMasahiro Yamada help 13151c1e9b5SAndy Shevchenko This enables and configures an LCD connected to the parallel port. 13251c1e9b5SAndy Shevchenko The driver includes an interpreter for escape codes starting with 13351c1e9b5SAndy Shevchenko '\e[L' which are specific to the LCD, and a few ANSI codes. The 13451c1e9b5SAndy Shevchenko driver will be registered as character device 10,156, usually 13551c1e9b5SAndy Shevchenko under the name '/dev/lcd'. There are a total of 6 supported types : 13651c1e9b5SAndy Shevchenko 13751c1e9b5SAndy Shevchenko 0 : do not enable the driver 13851c1e9b5SAndy Shevchenko 1 : custom configuration and wiring (see further) 13951c1e9b5SAndy Shevchenko 2 : 2x16 & 2x40 parallel LCD (old wiring) 14051c1e9b5SAndy Shevchenko 3 : 2x16 serial LCD (KS-0074 based) 14151c1e9b5SAndy Shevchenko 4 : 2x16 parallel LCD (Hantronix wiring) 14251c1e9b5SAndy Shevchenko 5 : 2x16 parallel LCD (Nexcom wiring) 14351c1e9b5SAndy Shevchenko 14451c1e9b5SAndy Shevchenko When type '1' is specified, other options will appear to configure 14551c1e9b5SAndy Shevchenko more precise aspects (wiring, dimensions, protocol, ...). Please note 14651c1e9b5SAndy Shevchenko that those values changed from the 2.4 driver for better consistency. 14751c1e9b5SAndy Shevchenko 14851c1e9b5SAndy Shevchenkoconfig PANEL_LCD_HEIGHT 14951c1e9b5SAndy Shevchenko depends on PANEL_PROFILE="0" && PANEL_LCD="1" 15051c1e9b5SAndy Shevchenko int "Number of lines on the LCD (1-2)" 15151c1e9b5SAndy Shevchenko range 1 2 15251c1e9b5SAndy Shevchenko default 2 153a7f7f624SMasahiro Yamada help 15451c1e9b5SAndy Shevchenko This is the number of visible character lines on the LCD in custom profile. 15551c1e9b5SAndy Shevchenko It can either be 1 or 2. 15651c1e9b5SAndy Shevchenko 15751c1e9b5SAndy Shevchenkoconfig PANEL_LCD_WIDTH 15851c1e9b5SAndy Shevchenko depends on PANEL_PROFILE="0" && PANEL_LCD="1" 15951c1e9b5SAndy Shevchenko int "Number of characters per line on the LCD (1-40)" 16051c1e9b5SAndy Shevchenko range 1 40 16151c1e9b5SAndy Shevchenko default 40 162a7f7f624SMasahiro Yamada help 16351c1e9b5SAndy Shevchenko This is the number of characters per line on the LCD in custom profile. 16451c1e9b5SAndy Shevchenko Common values are 16,20,24,40. 16551c1e9b5SAndy Shevchenko 16651c1e9b5SAndy Shevchenkoconfig PANEL_LCD_BWIDTH 16751c1e9b5SAndy Shevchenko depends on PANEL_PROFILE="0" && PANEL_LCD="1" 16851c1e9b5SAndy Shevchenko int "Internal LCD line width (1-40, 40 by default)" 16951c1e9b5SAndy Shevchenko range 1 40 17051c1e9b5SAndy Shevchenko default 40 171a7f7f624SMasahiro Yamada help 17251c1e9b5SAndy Shevchenko Most LCDs use a standard controller which supports hardware lines of 40 17351c1e9b5SAndy Shevchenko characters, although sometimes only 16, 20 or 24 of them are really wired 17451c1e9b5SAndy Shevchenko to the terminal. This results in some non-visible but addressable characters, 17551c1e9b5SAndy Shevchenko and is the case for most parallel LCDs. Other LCDs, and some serial ones, 17651c1e9b5SAndy Shevchenko however, use the same line width internally as what is visible. The KS0074 17751c1e9b5SAndy Shevchenko for example, uses 16 characters per line for 16 visible characters per line. 17851c1e9b5SAndy Shevchenko 17951c1e9b5SAndy Shevchenko This option lets you configure the value used by your LCD in 'custom' profile. 18051c1e9b5SAndy Shevchenko If you don't know, put '40' here. 18151c1e9b5SAndy Shevchenko 18251c1e9b5SAndy Shevchenkoconfig PANEL_LCD_HWIDTH 18351c1e9b5SAndy Shevchenko depends on PANEL_PROFILE="0" && PANEL_LCD="1" 18451c1e9b5SAndy Shevchenko int "Hardware LCD line width (1-64, 64 by default)" 18551c1e9b5SAndy Shevchenko range 1 64 18651c1e9b5SAndy Shevchenko default 64 187a7f7f624SMasahiro Yamada help 18851c1e9b5SAndy Shevchenko Most LCDs use a single address bit to differentiate line 0 and line 1. Since 18951c1e9b5SAndy Shevchenko some of them need to be able to address 40 chars with the lower bits, they 19051c1e9b5SAndy Shevchenko often use the immediately superior power of 2, which is 64, to address the 19151c1e9b5SAndy Shevchenko next line. 19251c1e9b5SAndy Shevchenko 19351c1e9b5SAndy Shevchenko If you don't know what your LCD uses, in doubt let 16 here for a 2x16, and 19451c1e9b5SAndy Shevchenko 64 here for a 2x40. 19551c1e9b5SAndy Shevchenko 19651c1e9b5SAndy Shevchenkoconfig PANEL_LCD_CHARSET 19751c1e9b5SAndy Shevchenko depends on PANEL_PROFILE="0" && PANEL_LCD="1" 19851c1e9b5SAndy Shevchenko int "LCD character set (0=normal, 1=KS0074)" 19951c1e9b5SAndy Shevchenko range 0 1 20051c1e9b5SAndy Shevchenko default 0 201a7f7f624SMasahiro Yamada help 20251c1e9b5SAndy Shevchenko Some controllers such as the KS0074 use a somewhat strange character set 20351c1e9b5SAndy Shevchenko where many symbols are at unusual places. The driver knows how to map 20451c1e9b5SAndy Shevchenko 'standard' ASCII characters to the character sets used by these controllers. 20551c1e9b5SAndy Shevchenko Valid values are : 20651c1e9b5SAndy Shevchenko 20751c1e9b5SAndy Shevchenko 0 : normal (untranslated) character set 20851c1e9b5SAndy Shevchenko 1 : KS0074 character set 20951c1e9b5SAndy Shevchenko 21051c1e9b5SAndy Shevchenko If you don't know, use the normal one (0). 21151c1e9b5SAndy Shevchenko 21251c1e9b5SAndy Shevchenkoconfig PANEL_LCD_PROTO 21351c1e9b5SAndy Shevchenko depends on PANEL_PROFILE="0" && PANEL_LCD="1" 21451c1e9b5SAndy Shevchenko int "LCD communication mode (0=parallel 8 bits, 1=serial)" 21551c1e9b5SAndy Shevchenko range 0 1 21651c1e9b5SAndy Shevchenko default 0 217a7f7f624SMasahiro Yamada help 21851c1e9b5SAndy Shevchenko This driver now supports any serial or parallel LCD wired to a parallel 21951c1e9b5SAndy Shevchenko port. But before assigning signals, the driver needs to know if it will 22051c1e9b5SAndy Shevchenko be driving a serial LCD or a parallel one. Serial LCDs only use 2 wires 22151c1e9b5SAndy Shevchenko (SDA/SCL), while parallel ones use 2 or 3 wires for the control signals 22251c1e9b5SAndy Shevchenko (E, RS, sometimes RW), and 4 or 8 for the data. Use 0 here for a 8 bits 22351c1e9b5SAndy Shevchenko parallel LCD, and 1 for a serial LCD. 22451c1e9b5SAndy Shevchenko 22551c1e9b5SAndy Shevchenkoconfig PANEL_LCD_PIN_E 22651c1e9b5SAndy Shevchenko depends on PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO="0" 22751c1e9b5SAndy Shevchenko int "Parallel port pin number & polarity connected to the LCD E signal (-17...17) " 22851c1e9b5SAndy Shevchenko range -17 17 22951c1e9b5SAndy Shevchenko default 14 230a7f7f624SMasahiro Yamada help 23151c1e9b5SAndy Shevchenko This describes the number of the parallel port pin to which the LCD 'E' 23251c1e9b5SAndy Shevchenko signal has been connected. It can be : 23351c1e9b5SAndy Shevchenko 23451c1e9b5SAndy Shevchenko 0 : no connection (eg: connected to ground) 23551c1e9b5SAndy Shevchenko 1..17 : directly connected to any of these pins on the DB25 plug 23651c1e9b5SAndy Shevchenko -1..-17 : connected to the same pin through an inverter (eg: transistor). 23751c1e9b5SAndy Shevchenko 23851c1e9b5SAndy Shevchenko Default for the 'E' pin in custom profile is '14' (AUTOFEED). 23951c1e9b5SAndy Shevchenko 24051c1e9b5SAndy Shevchenkoconfig PANEL_LCD_PIN_RS 24151c1e9b5SAndy Shevchenko depends on PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO="0" 24251c1e9b5SAndy Shevchenko int "Parallel port pin number & polarity connected to the LCD RS signal (-17...17) " 24351c1e9b5SAndy Shevchenko range -17 17 24451c1e9b5SAndy Shevchenko default 17 245a7f7f624SMasahiro Yamada help 24651c1e9b5SAndy Shevchenko This describes the number of the parallel port pin to which the LCD 'RS' 24751c1e9b5SAndy Shevchenko signal has been connected. It can be : 24851c1e9b5SAndy Shevchenko 24951c1e9b5SAndy Shevchenko 0 : no connection (eg: connected to ground) 25051c1e9b5SAndy Shevchenko 1..17 : directly connected to any of these pins on the DB25 plug 25151c1e9b5SAndy Shevchenko -1..-17 : connected to the same pin through an inverter (eg: transistor). 25251c1e9b5SAndy Shevchenko 25351c1e9b5SAndy Shevchenko Default for the 'RS' pin in custom profile is '17' (SELECT IN). 25451c1e9b5SAndy Shevchenko 25551c1e9b5SAndy Shevchenkoconfig PANEL_LCD_PIN_RW 25651c1e9b5SAndy Shevchenko depends on PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO="0" 25751c1e9b5SAndy Shevchenko int "Parallel port pin number & polarity connected to the LCD RW signal (-17...17) " 25851c1e9b5SAndy Shevchenko range -17 17 25951c1e9b5SAndy Shevchenko default 16 260a7f7f624SMasahiro Yamada help 26151c1e9b5SAndy Shevchenko This describes the number of the parallel port pin to which the LCD 'RW' 26251c1e9b5SAndy Shevchenko signal has been connected. It can be : 26351c1e9b5SAndy Shevchenko 26451c1e9b5SAndy Shevchenko 0 : no connection (eg: connected to ground) 26551c1e9b5SAndy Shevchenko 1..17 : directly connected to any of these pins on the DB25 plug 26651c1e9b5SAndy Shevchenko -1..-17 : connected to the same pin through an inverter (eg: transistor). 26751c1e9b5SAndy Shevchenko 26851c1e9b5SAndy Shevchenko Default for the 'RW' pin in custom profile is '16' (INIT). 26951c1e9b5SAndy Shevchenko 27051c1e9b5SAndy Shevchenkoconfig PANEL_LCD_PIN_SCL 27151c1e9b5SAndy Shevchenko depends on PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO!="0" 27251c1e9b5SAndy Shevchenko int "Parallel port pin number & polarity connected to the LCD SCL signal (-17...17) " 27351c1e9b5SAndy Shevchenko range -17 17 27451c1e9b5SAndy Shevchenko default 1 275a7f7f624SMasahiro Yamada help 27651c1e9b5SAndy Shevchenko This describes the number of the parallel port pin to which the serial 27751c1e9b5SAndy Shevchenko LCD 'SCL' signal has been connected. It can be : 27851c1e9b5SAndy Shevchenko 27951c1e9b5SAndy Shevchenko 0 : no connection (eg: connected to ground) 28051c1e9b5SAndy Shevchenko 1..17 : directly connected to any of these pins on the DB25 plug 28151c1e9b5SAndy Shevchenko -1..-17 : connected to the same pin through an inverter (eg: transistor). 28251c1e9b5SAndy Shevchenko 28351c1e9b5SAndy Shevchenko Default for the 'SCL' pin in custom profile is '1' (STROBE). 28451c1e9b5SAndy Shevchenko 28551c1e9b5SAndy Shevchenkoconfig PANEL_LCD_PIN_SDA 28651c1e9b5SAndy Shevchenko depends on PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO!="0" 28751c1e9b5SAndy Shevchenko int "Parallel port pin number & polarity connected to the LCD SDA signal (-17...17) " 28851c1e9b5SAndy Shevchenko range -17 17 28951c1e9b5SAndy Shevchenko default 2 290a7f7f624SMasahiro Yamada help 29151c1e9b5SAndy Shevchenko This describes the number of the parallel port pin to which the serial 29251c1e9b5SAndy Shevchenko LCD 'SDA' signal has been connected. It can be : 29351c1e9b5SAndy Shevchenko 29451c1e9b5SAndy Shevchenko 0 : no connection (eg: connected to ground) 29551c1e9b5SAndy Shevchenko 1..17 : directly connected to any of these pins on the DB25 plug 29651c1e9b5SAndy Shevchenko -1..-17 : connected to the same pin through an inverter (eg: transistor). 29751c1e9b5SAndy Shevchenko 29851c1e9b5SAndy Shevchenko Default for the 'SDA' pin in custom profile is '2' (D0). 29951c1e9b5SAndy Shevchenko 30051c1e9b5SAndy Shevchenkoconfig PANEL_LCD_PIN_BL 30151c1e9b5SAndy Shevchenko depends on PANEL_PROFILE="0" && PANEL_LCD="1" 30251c1e9b5SAndy Shevchenko int "Parallel port pin number & polarity connected to the LCD backlight signal (-17...17) " 30351c1e9b5SAndy Shevchenko range -17 17 30451c1e9b5SAndy Shevchenko default 0 305a7f7f624SMasahiro Yamada help 30651c1e9b5SAndy Shevchenko This describes the number of the parallel port pin to which the LCD 'BL' signal 30751c1e9b5SAndy Shevchenko has been connected. It can be : 30851c1e9b5SAndy Shevchenko 30951c1e9b5SAndy Shevchenko 0 : no connection (eg: connected to ground) 31051c1e9b5SAndy Shevchenko 1..17 : directly connected to any of these pins on the DB25 plug 31151c1e9b5SAndy Shevchenko -1..-17 : connected to the same pin through an inverter (eg: transistor). 31251c1e9b5SAndy Shevchenko 31351c1e9b5SAndy Shevchenko Default for the 'BL' pin in custom profile is '0' (uncontrolled). 31451c1e9b5SAndy Shevchenko 31524c764abSMans Rullgardendif # PARPORT_PANEL 31624c764abSMans Rullgard 31751c1e9b5SAndy Shevchenkoconfig PANEL_CHANGE_MESSAGE 31851c1e9b5SAndy Shevchenko bool "Change LCD initialization message ?" 319c8ffef98SChris Packham depends on CHARLCD || LINEDISP 320a7f7f624SMasahiro Yamada help 32151c1e9b5SAndy Shevchenko This allows you to replace the boot message indicating the kernel version 32251c1e9b5SAndy Shevchenko and the driver version with a custom message. This is useful on appliances 32351c1e9b5SAndy Shevchenko where a simple 'Starting system' message can be enough to stop a customer 32451c1e9b5SAndy Shevchenko from worrying. 32551c1e9b5SAndy Shevchenko 32651c1e9b5SAndy Shevchenko If you say 'Y' here, you'll be able to choose a message yourself. Otherwise, 32751c1e9b5SAndy Shevchenko say 'N' and keep the default message with the version. 32851c1e9b5SAndy Shevchenko 32951c1e9b5SAndy Shevchenkoconfig PANEL_BOOT_MESSAGE 33051c1e9b5SAndy Shevchenko depends on PANEL_CHANGE_MESSAGE="y" 33151c1e9b5SAndy Shevchenko string "New initialization message" 33251c1e9b5SAndy Shevchenko default "" 333a7f7f624SMasahiro Yamada help 33451c1e9b5SAndy Shevchenko This allows you to replace the boot message indicating the kernel version 33551c1e9b5SAndy Shevchenko and the driver version with a custom message. This is useful on appliances 33651c1e9b5SAndy Shevchenko where a simple 'Starting system' message can be enough to stop a customer 33751c1e9b5SAndy Shevchenko from worrying. 33851c1e9b5SAndy Shevchenko 33951c1e9b5SAndy Shevchenko An empty message will only clear the display at driver init time. Any other 34051c1e9b5SAndy Shevchenko printf()-formatted message is valid with newline and escape codes. 34151c1e9b5SAndy Shevchenko 342cc5d04d8SMans Rullgardchoice 343cc5d04d8SMans Rullgard prompt "Backlight initial state" 344cc5d04d8SMans Rullgard default CHARLCD_BL_FLASH 345a7f7f624SMasahiro Yamada help 346ba2c1340SMans Rullgard Select the initial backlight state on boot or module load. 347ba2c1340SMans Rullgard 348ba2c1340SMans Rullgard Previously, there was no option for this: the backlight flashed 349ba2c1340SMans Rullgard briefly on init. Now you can also turn it off/on. 350cc5d04d8SMans Rullgard 351cc5d04d8SMans Rullgard config CHARLCD_BL_OFF 352cc5d04d8SMans Rullgard bool "Off" 353cc5d04d8SMans Rullgard help 354cc5d04d8SMans Rullgard Backlight is initially turned off 355cc5d04d8SMans Rullgard 356cc5d04d8SMans Rullgard config CHARLCD_BL_ON 357cc5d04d8SMans Rullgard bool "On" 358cc5d04d8SMans Rullgard help 359cc5d04d8SMans Rullgard Backlight is initially turned on 360cc5d04d8SMans Rullgard 361cc5d04d8SMans Rullgard config CHARLCD_BL_FLASH 362cc5d04d8SMans Rullgard bool "Flash" 363cc5d04d8SMans Rullgard help 364cc5d04d8SMans Rullgard Backlight is flashed briefly on init 365cc5d04d8SMans Rullgard 366cc5d04d8SMans Rullgardendchoice 367cc5d04d8SMans Rullgard 36816934de4SAndy Shevchenko# 36916934de4SAndy Shevchenko# Samsung KS0108 LCD controller section 37016934de4SAndy Shevchenko# 37116934de4SAndy Shevchenkoconfig KS0108 37216934de4SAndy Shevchenko tristate "KS0108 LCD Controller" 37316934de4SAndy Shevchenko depends on PARPORT_PC 37416934de4SAndy Shevchenko help 37516934de4SAndy Shevchenko If you have a LCD controlled by one or more KS0108 37616934de4SAndy Shevchenko controllers, say Y. You will need also another more specific 37716934de4SAndy Shevchenko driver for your LCD. 37816934de4SAndy Shevchenko 37916934de4SAndy Shevchenko Depends on Parallel Port support. If you say Y at 38016934de4SAndy Shevchenko parport, you will be able to compile this as a module (M) 38116934de4SAndy Shevchenko and built-in as well (Y). 38216934de4SAndy Shevchenko 38316934de4SAndy Shevchenko To compile this as a module, choose M here: 38416934de4SAndy Shevchenko the module will be called ks0108. 38516934de4SAndy Shevchenko 38616934de4SAndy Shevchenko If unsure, say N. 38716934de4SAndy Shevchenko 38816934de4SAndy Shevchenkoconfig KS0108_PORT 38916934de4SAndy Shevchenko hex "Parallel port where the LCD is connected" 39016934de4SAndy Shevchenko depends on KS0108 39116934de4SAndy Shevchenko default 0x378 39216934de4SAndy Shevchenko help 39316934de4SAndy Shevchenko The address of the parallel port where the LCD is connected. 39416934de4SAndy Shevchenko 39516934de4SAndy Shevchenko The first standard parallel port address is 0x378. 39616934de4SAndy Shevchenko The second standard parallel port address is 0x278. 39716934de4SAndy Shevchenko The third standard parallel port address is 0x3BC. 39816934de4SAndy Shevchenko 39916934de4SAndy Shevchenko You can specify a different address if you need. 40016934de4SAndy Shevchenko 40116934de4SAndy Shevchenko If you don't know what I'm talking about, load the parport module, 40216934de4SAndy Shevchenko and execute "dmesg" or "cat /proc/ioports". You can see there how 40316934de4SAndy Shevchenko many parallel ports are present and which address each one has. 40416934de4SAndy Shevchenko 40516934de4SAndy Shevchenko Usually you only need to use 0x378. 40616934de4SAndy Shevchenko 40716934de4SAndy Shevchenko If you compile this as a module, you can still override this 40816934de4SAndy Shevchenko using the module parameters. 40916934de4SAndy Shevchenko 41016934de4SAndy Shevchenkoconfig KS0108_DELAY 41116934de4SAndy Shevchenko int "Delay between each control writing (microseconds)" 41216934de4SAndy Shevchenko depends on KS0108 41316934de4SAndy Shevchenko default "2" 41416934de4SAndy Shevchenko help 41516934de4SAndy Shevchenko Amount of time the ks0108 should wait between each control write 41616934de4SAndy Shevchenko to the parallel port. 41716934de4SAndy Shevchenko 41816934de4SAndy Shevchenko If your LCD seems to miss random writings, increment this. 41916934de4SAndy Shevchenko 42016934de4SAndy Shevchenko If you don't know what I'm talking about, ignore it. 42116934de4SAndy Shevchenko 42216934de4SAndy Shevchenko If you compile this as a module, you can still override this 42316934de4SAndy Shevchenko value using the module parameters. 42416934de4SAndy Shevchenko 42516934de4SAndy Shevchenkoconfig CFAG12864B 42616934de4SAndy Shevchenko tristate "CFAG12864B LCD" 42716934de4SAndy Shevchenko depends on X86 42816934de4SAndy Shevchenko depends on FB 42916934de4SAndy Shevchenko depends on KS0108 43016934de4SAndy Shevchenko select FB_SYSMEM_HELPERS 43116934de4SAndy Shevchenko help 43216934de4SAndy Shevchenko If you have a Crystalfontz 128x64 2-color LCD, cfag12864b Series, 43316934de4SAndy Shevchenko say Y. You also need the ks0108 LCD Controller driver. 43416934de4SAndy Shevchenko 43516934de4SAndy Shevchenko For help about how to wire your LCD to the parallel port, 43616934de4SAndy Shevchenko check Documentation/admin-guide/auxdisplay/cfag12864b.rst 43716934de4SAndy Shevchenko 43816934de4SAndy Shevchenko Depends on the x86 arch and the framebuffer support. 43916934de4SAndy Shevchenko 44016934de4SAndy Shevchenko The LCD framebuffer driver can be attached to a console. 44116934de4SAndy Shevchenko It will work fine. However, you can't attach it to the fbdev driver 44216934de4SAndy Shevchenko of the xorg server. 44316934de4SAndy Shevchenko 44416934de4SAndy Shevchenko To compile this as a module, choose M here: 44516934de4SAndy Shevchenko the modules will be called cfag12864b and cfag12864bfb. 44616934de4SAndy Shevchenko 44716934de4SAndy Shevchenko If unsure, say N. 44816934de4SAndy Shevchenko 44916934de4SAndy Shevchenkoconfig CFAG12864B_RATE 45016934de4SAndy Shevchenko int "Refresh rate (hertz)" 45116934de4SAndy Shevchenko depends on CFAG12864B 45216934de4SAndy Shevchenko default "20" 45316934de4SAndy Shevchenko help 45416934de4SAndy Shevchenko Refresh rate of the LCD. 45516934de4SAndy Shevchenko 45616934de4SAndy Shevchenko As the LCD is not memory mapped, the driver has to make the work by 45716934de4SAndy Shevchenko software. This means you should be careful setting this value higher. 45816934de4SAndy Shevchenko If your CPUs are really slow or you feel the system is slowed down, 45916934de4SAndy Shevchenko decrease the value. 46016934de4SAndy Shevchenko 46116934de4SAndy Shevchenko Be careful modifying this value to a very high value: 46216934de4SAndy Shevchenko You can freeze the computer, or the LCD maybe can't draw as fast as you 46316934de4SAndy Shevchenko are requesting. 46416934de4SAndy Shevchenko 46516934de4SAndy Shevchenko If you don't know what I'm talking about, ignore it. 46616934de4SAndy Shevchenko 46716934de4SAndy Shevchenko If you compile this as a module, you can still override this 46816934de4SAndy Shevchenko value using the module parameters. 46916934de4SAndy Shevchenko 47016934de4SAndy Shevchenko# 47116934de4SAndy Shevchenko# Single character line display section 47216934de4SAndy Shevchenko# 47316934de4SAndy Shevchenkoconfig LINEDISP 47416934de4SAndy Shevchenko tristate "Character line display core support" if COMPILE_TEST 47516934de4SAndy Shevchenko help 47616934de4SAndy Shevchenko This is the core support for single-line character displays, to be 47716934de4SAndy Shevchenko selected by drivers that use it. 47816934de4SAndy Shevchenko 47916934de4SAndy Shevchenkoconfig IMG_ASCII_LCD 48016934de4SAndy Shevchenko tristate "Imagination Technologies ASCII LCD Display" 48116934de4SAndy Shevchenko depends on HAS_IOMEM 48216934de4SAndy Shevchenko default y if MIPS_MALTA 48316934de4SAndy Shevchenko select MFD_SYSCON 48416934de4SAndy Shevchenko select LINEDISP 48516934de4SAndy Shevchenko help 48616934de4SAndy Shevchenko Enable this to support the simple ASCII LCD displays found on 48716934de4SAndy Shevchenko development boards such as the MIPS Boston, MIPS Malta & MIPS SEAD3 48816934de4SAndy Shevchenko from Imagination Technologies. 48916934de4SAndy Shevchenko 49016934de4SAndy Shevchenkoconfig HT16K33 49116934de4SAndy Shevchenko tristate "Holtek Ht16K33 LED controller with keyscan" 4928fc38062SThomas Zimmermann depends on FB && I2C && INPUT && BACKLIGHT_CLASS_DEVICE 49316934de4SAndy Shevchenko select FB_SYSMEM_HELPERS 49416934de4SAndy Shevchenko select INPUT_MATRIXKMAP 49516934de4SAndy Shevchenko select FB_BACKLIGHT 49616934de4SAndy Shevchenko select NEW_LEDS 49716934de4SAndy Shevchenko select LEDS_CLASS 49816934de4SAndy Shevchenko select LINEDISP 49916934de4SAndy Shevchenko help 50016934de4SAndy Shevchenko Say yes here to add support for Holtek HT16K33, RAM mapping 16*8 50116934de4SAndy Shevchenko LED controller driver with keyscan. 50216934de4SAndy Shevchenko 50316934de4SAndy Shevchenkoconfig MAX6959 50416934de4SAndy Shevchenko tristate "Maxim MAX6958/6959 7-segment LED controller" 50516934de4SAndy Shevchenko depends on I2C 506*fce85f3dSGeert Uytterhoeven select BITREVERSE 50716934de4SAndy Shevchenko select REGMAP_I2C 50816934de4SAndy Shevchenko select LINEDISP 50916934de4SAndy Shevchenko help 51016934de4SAndy Shevchenko If you say yes here you get support for the following Maxim chips 51116934de4SAndy Shevchenko (I2C 7-segment LED display controller): 51216934de4SAndy Shevchenko - MAX6958 51316934de4SAndy Shevchenko - MAX6959 (input support) 51416934de4SAndy Shevchenko 51516934de4SAndy Shevchenko This driver can also be built as a module. If so, the module 51616934de4SAndy Shevchenko will be called max6959. 51716934de4SAndy Shevchenko 51816934de4SAndy Shevchenkoconfig SEG_LED_GPIO 51916934de4SAndy Shevchenko tristate "Generic 7-segment LED display" 52016934de4SAndy Shevchenko depends on GPIOLIB || COMPILE_TEST 52116934de4SAndy Shevchenko select LINEDISP 52216934de4SAndy Shevchenko help 52316934de4SAndy Shevchenko This driver supports a generic 7-segment LED display made up 52416934de4SAndy Shevchenko of GPIO pins connected to the individual segments. 52516934de4SAndy Shevchenko 52616934de4SAndy Shevchenko This driver can also be built as a module. If so, the module 52716934de4SAndy Shevchenko will be called seg-led-gpio. 52816934de4SAndy Shevchenko 52916934de4SAndy Shevchenko# 53016934de4SAndy Shevchenko# Character LCD with non-conforming interface section 53116934de4SAndy Shevchenko# 53216934de4SAndy Shevchenkoconfig ARM_CHARLCD 53316934de4SAndy Shevchenko bool "ARM Ltd. Character LCD Driver" 53416934de4SAndy Shevchenko depends on PLAT_VERSATILE 53516934de4SAndy Shevchenko help 53616934de4SAndy Shevchenko This is a driver for the character LCD found on the ARM Ltd. 53716934de4SAndy Shevchenko Versatile and RealView Platform Baseboards. It doesn't do 53816934de4SAndy Shevchenko very much more than display the text "ARM Linux" on the first 53916934de4SAndy Shevchenko line and the Linux version on the second line, but that's 54016934de4SAndy Shevchenko still useful. 54116934de4SAndy Shevchenko 54224c764abSMans Rullgardendif # AUXDISPLAY 54324c764abSMans Rullgard 54416934de4SAndy Shevchenko# 54516934de4SAndy Shevchenko# Deprecated options 54616934de4SAndy Shevchenko# 54724c764abSMans Rullgardconfig PANEL 54824c764abSMans Rullgard tristate "Parallel port LCD/Keypad Panel support (OLD OPTION)" 54924c764abSMans Rullgard depends on PARPORT 55024c764abSMans Rullgard select AUXDISPLAY 55124c764abSMans Rullgard select PARPORT_PANEL 552