1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun# 3*4882a593Smuzhiyun# For a description of the syntax of this configuration file, 4*4882a593Smuzhiyun# see Documentation/kbuild/kconfig-language.rst. 5*4882a593Smuzhiyun# 6*4882a593Smuzhiyun# Auxiliary display drivers configuration. 7*4882a593Smuzhiyun# 8*4882a593Smuzhiyun 9*4882a593Smuzhiyunmenuconfig AUXDISPLAY 10*4882a593Smuzhiyun bool "Auxiliary Display support" 11*4882a593Smuzhiyun help 12*4882a593Smuzhiyun Say Y here to get to see options for auxiliary display drivers. 13*4882a593Smuzhiyun This option alone does not add any kernel code. 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun If you say N, all options in this submenu will be skipped and disabled. 16*4882a593Smuzhiyun 17*4882a593Smuzhiyunif AUXDISPLAY 18*4882a593Smuzhiyun 19*4882a593Smuzhiyunconfig HD44780 20*4882a593Smuzhiyun tristate "HD44780 Character LCD support" 21*4882a593Smuzhiyun depends on GPIOLIB || COMPILE_TEST 22*4882a593Smuzhiyun select CHARLCD 23*4882a593Smuzhiyun help 24*4882a593Smuzhiyun Enable support for Character LCDs using a HD44780 controller. 25*4882a593Smuzhiyun The LCD is accessible through the /dev/lcd char device (10, 156). 26*4882a593Smuzhiyun This code can either be compiled as a module, or linked into the 27*4882a593Smuzhiyun kernel and started at boot. 28*4882a593Smuzhiyun If you don't understand what all this is about, say N. 29*4882a593Smuzhiyun 30*4882a593Smuzhiyunconfig KS0108 31*4882a593Smuzhiyun tristate "KS0108 LCD Controller" 32*4882a593Smuzhiyun depends on PARPORT_PC 33*4882a593Smuzhiyun default n 34*4882a593Smuzhiyun help 35*4882a593Smuzhiyun If you have a LCD controlled by one or more KS0108 36*4882a593Smuzhiyun controllers, say Y. You will need also another more specific 37*4882a593Smuzhiyun driver for your LCD. 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun Depends on Parallel Port support. If you say Y at 40*4882a593Smuzhiyun parport, you will be able to compile this as a module (M) 41*4882a593Smuzhiyun and built-in as well (Y). 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun To compile this as a module, choose M here: 44*4882a593Smuzhiyun the module will be called ks0108. 45*4882a593Smuzhiyun 46*4882a593Smuzhiyun If unsure, say N. 47*4882a593Smuzhiyun 48*4882a593Smuzhiyunconfig KS0108_PORT 49*4882a593Smuzhiyun hex "Parallel port where the LCD is connected" 50*4882a593Smuzhiyun depends on KS0108 51*4882a593Smuzhiyun default 0x378 52*4882a593Smuzhiyun help 53*4882a593Smuzhiyun The address of the parallel port where the LCD is connected. 54*4882a593Smuzhiyun 55*4882a593Smuzhiyun The first standard parallel port address is 0x378. 56*4882a593Smuzhiyun The second standard parallel port address is 0x278. 57*4882a593Smuzhiyun The third standard parallel port address is 0x3BC. 58*4882a593Smuzhiyun 59*4882a593Smuzhiyun You can specify a different address if you need. 60*4882a593Smuzhiyun 61*4882a593Smuzhiyun If you don't know what I'm talking about, load the parport module, 62*4882a593Smuzhiyun and execute "dmesg" or "cat /proc/ioports". You can see there how 63*4882a593Smuzhiyun many parallel ports are present and which address each one has. 64*4882a593Smuzhiyun 65*4882a593Smuzhiyun Usually you only need to use 0x378. 66*4882a593Smuzhiyun 67*4882a593Smuzhiyun If you compile this as a module, you can still override this 68*4882a593Smuzhiyun using the module parameters. 69*4882a593Smuzhiyun 70*4882a593Smuzhiyunconfig KS0108_DELAY 71*4882a593Smuzhiyun int "Delay between each control writing (microseconds)" 72*4882a593Smuzhiyun depends on KS0108 73*4882a593Smuzhiyun default "2" 74*4882a593Smuzhiyun help 75*4882a593Smuzhiyun Amount of time the ks0108 should wait between each control write 76*4882a593Smuzhiyun to the parallel port. 77*4882a593Smuzhiyun 78*4882a593Smuzhiyun If your LCD seems to miss random writings, increment this. 79*4882a593Smuzhiyun 80*4882a593Smuzhiyun If you don't know what I'm talking about, ignore it. 81*4882a593Smuzhiyun 82*4882a593Smuzhiyun If you compile this as a module, you can still override this 83*4882a593Smuzhiyun value using the module parameters. 84*4882a593Smuzhiyun 85*4882a593Smuzhiyunconfig CFAG12864B 86*4882a593Smuzhiyun tristate "CFAG12864B LCD" 87*4882a593Smuzhiyun depends on X86 88*4882a593Smuzhiyun depends on FB 89*4882a593Smuzhiyun depends on KS0108 90*4882a593Smuzhiyun select FB_SYS_FILLRECT 91*4882a593Smuzhiyun select FB_SYS_COPYAREA 92*4882a593Smuzhiyun select FB_SYS_IMAGEBLIT 93*4882a593Smuzhiyun select FB_SYS_FOPS 94*4882a593Smuzhiyun default n 95*4882a593Smuzhiyun help 96*4882a593Smuzhiyun If you have a Crystalfontz 128x64 2-color LCD, cfag12864b Series, 97*4882a593Smuzhiyun say Y. You also need the ks0108 LCD Controller driver. 98*4882a593Smuzhiyun 99*4882a593Smuzhiyun For help about how to wire your LCD to the parallel port, 100*4882a593Smuzhiyun check Documentation/admin-guide/auxdisplay/cfag12864b.rst 101*4882a593Smuzhiyun 102*4882a593Smuzhiyun Depends on the x86 arch and the framebuffer support. 103*4882a593Smuzhiyun 104*4882a593Smuzhiyun The LCD framebuffer driver can be attached to a console. 105*4882a593Smuzhiyun It will work fine. However, you can't attach it to the fbdev driver 106*4882a593Smuzhiyun of the xorg server. 107*4882a593Smuzhiyun 108*4882a593Smuzhiyun To compile this as a module, choose M here: 109*4882a593Smuzhiyun the modules will be called cfag12864b and cfag12864bfb. 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun If unsure, say N. 112*4882a593Smuzhiyun 113*4882a593Smuzhiyunconfig CFAG12864B_RATE 114*4882a593Smuzhiyun int "Refresh rate (hertz)" 115*4882a593Smuzhiyun depends on CFAG12864B 116*4882a593Smuzhiyun default "20" 117*4882a593Smuzhiyun help 118*4882a593Smuzhiyun Refresh rate of the LCD. 119*4882a593Smuzhiyun 120*4882a593Smuzhiyun As the LCD is not memory mapped, the driver has to make the work by 121*4882a593Smuzhiyun software. This means you should be careful setting this value higher. 122*4882a593Smuzhiyun If your CPUs are really slow or you feel the system is slowed down, 123*4882a593Smuzhiyun decrease the value. 124*4882a593Smuzhiyun 125*4882a593Smuzhiyun Be careful modifying this value to a very high value: 126*4882a593Smuzhiyun You can freeze the computer, or the LCD maybe can't draw as fast as you 127*4882a593Smuzhiyun are requesting. 128*4882a593Smuzhiyun 129*4882a593Smuzhiyun If you don't know what I'm talking about, ignore it. 130*4882a593Smuzhiyun 131*4882a593Smuzhiyun If you compile this as a module, you can still override this 132*4882a593Smuzhiyun value using the module parameters. 133*4882a593Smuzhiyun 134*4882a593Smuzhiyunconfig IMG_ASCII_LCD 135*4882a593Smuzhiyun tristate "Imagination Technologies ASCII LCD Display" 136*4882a593Smuzhiyun depends on HAS_IOMEM 137*4882a593Smuzhiyun default y if MIPS_MALTA 138*4882a593Smuzhiyun select MFD_SYSCON 139*4882a593Smuzhiyun help 140*4882a593Smuzhiyun Enable this to support the simple ASCII LCD displays found on 141*4882a593Smuzhiyun development boards such as the MIPS Boston, MIPS Malta & MIPS SEAD3 142*4882a593Smuzhiyun from Imagination Technologies. 143*4882a593Smuzhiyun 144*4882a593Smuzhiyunconfig HT16K33 145*4882a593Smuzhiyun tristate "Holtek Ht16K33 LED controller with keyscan" 146*4882a593Smuzhiyun depends on FB && OF && I2C && INPUT 147*4882a593Smuzhiyun select FB_SYS_FOPS 148*4882a593Smuzhiyun select FB_SYS_FILLRECT 149*4882a593Smuzhiyun select FB_SYS_COPYAREA 150*4882a593Smuzhiyun select FB_SYS_IMAGEBLIT 151*4882a593Smuzhiyun select INPUT_MATRIXKMAP 152*4882a593Smuzhiyun select FB_BACKLIGHT 153*4882a593Smuzhiyun help 154*4882a593Smuzhiyun Say yes here to add support for Holtek HT16K33, RAM mapping 16*8 155*4882a593Smuzhiyun LED controller driver with keyscan. 156*4882a593Smuzhiyun 157*4882a593Smuzhiyunconfig ARM_CHARLCD 158*4882a593Smuzhiyun bool "ARM Ltd. Character LCD Driver" 159*4882a593Smuzhiyun depends on PLAT_VERSATILE 160*4882a593Smuzhiyun help 161*4882a593Smuzhiyun This is a driver for the character LCD found on the ARM Ltd. 162*4882a593Smuzhiyun Versatile and RealView Platform Baseboards. It doesn't do 163*4882a593Smuzhiyun very much more than display the text "ARM Linux" on the first 164*4882a593Smuzhiyun line and the Linux version on the second line, but that's 165*4882a593Smuzhiyun still useful. 166*4882a593Smuzhiyun 167*4882a593Smuzhiyunmenuconfig PARPORT_PANEL 168*4882a593Smuzhiyun tristate "Parallel port LCD/Keypad Panel support" 169*4882a593Smuzhiyun depends on PARPORT 170*4882a593Smuzhiyun select CHARLCD 171*4882a593Smuzhiyun help 172*4882a593Smuzhiyun Say Y here if you have an HD44780 or KS-0074 LCD connected to your 173*4882a593Smuzhiyun parallel port. This driver also features 4 and 6-key keypads. The LCD 174*4882a593Smuzhiyun is accessible through the /dev/lcd char device (10, 156), and the 175*4882a593Smuzhiyun keypad through /dev/keypad (10, 185). This code can either be 176*4882a593Smuzhiyun compiled as a module, or linked into the kernel and started at boot. 177*4882a593Smuzhiyun If you don't understand what all this is about, say N. 178*4882a593Smuzhiyun 179*4882a593Smuzhiyunif PARPORT_PANEL 180*4882a593Smuzhiyun 181*4882a593Smuzhiyunconfig PANEL_PARPORT 182*4882a593Smuzhiyun int "Default parallel port number (0=LPT1)" 183*4882a593Smuzhiyun range 0 255 184*4882a593Smuzhiyun default "0" 185*4882a593Smuzhiyun help 186*4882a593Smuzhiyun This is the index of the parallel port the panel is connected to. One 187*4882a593Smuzhiyun driver instance only supports one parallel port, so if your keypad 188*4882a593Smuzhiyun and LCD are connected to two separate ports, you have to start two 189*4882a593Smuzhiyun modules with different arguments. Numbering starts with '0' for LPT1, 190*4882a593Smuzhiyun and so on. 191*4882a593Smuzhiyun 192*4882a593Smuzhiyunconfig PANEL_PROFILE 193*4882a593Smuzhiyun int "Default panel profile (0-5, 0=custom)" 194*4882a593Smuzhiyun range 0 5 195*4882a593Smuzhiyun default "5" 196*4882a593Smuzhiyun help 197*4882a593Smuzhiyun To ease configuration, the driver supports different configuration 198*4882a593Smuzhiyun profiles for past and recent wirings. These profiles can also be 199*4882a593Smuzhiyun used to define an approximative configuration, completed by a few 200*4882a593Smuzhiyun other options. Here are the profiles : 201*4882a593Smuzhiyun 202*4882a593Smuzhiyun 0 = custom (see further) 203*4882a593Smuzhiyun 1 = 2x16 parallel LCD, old keypad 204*4882a593Smuzhiyun 2 = 2x16 serial LCD (KS-0074), new keypad 205*4882a593Smuzhiyun 3 = 2x16 parallel LCD (Hantronix), no keypad 206*4882a593Smuzhiyun 4 = 2x16 parallel LCD (Nexcom NSA1045) with Nexcom's keypad 207*4882a593Smuzhiyun 5 = 2x40 parallel LCD (old one), with old keypad 208*4882a593Smuzhiyun 209*4882a593Smuzhiyun Custom configurations allow you to define how your display is 210*4882a593Smuzhiyun wired to the parallel port, and how it works. This is only intended 211*4882a593Smuzhiyun for experts. 212*4882a593Smuzhiyun 213*4882a593Smuzhiyunconfig PANEL_KEYPAD 214*4882a593Smuzhiyun depends on PANEL_PROFILE="0" 215*4882a593Smuzhiyun int "Keypad type (0=none, 1=old 6 keys, 2=new 6 keys, 3=Nexcom 4 keys)" 216*4882a593Smuzhiyun range 0 3 217*4882a593Smuzhiyun default 0 218*4882a593Smuzhiyun help 219*4882a593Smuzhiyun This enables and configures a keypad connected to the parallel port. 220*4882a593Smuzhiyun The keys will be read from character device 10,185. Valid values are : 221*4882a593Smuzhiyun 222*4882a593Smuzhiyun 0 : do not enable this driver 223*4882a593Smuzhiyun 1 : old 6 keys keypad 224*4882a593Smuzhiyun 2 : new 6 keys keypad, as used on the server at www.ant-computing.com 225*4882a593Smuzhiyun 3 : Nexcom NSA1045's 4 keys keypad 226*4882a593Smuzhiyun 227*4882a593Smuzhiyun New profiles can be described in the driver source. The driver also 228*4882a593Smuzhiyun supports simultaneous keys pressed when the keypad supports them. 229*4882a593Smuzhiyun 230*4882a593Smuzhiyunconfig PANEL_LCD 231*4882a593Smuzhiyun depends on PANEL_PROFILE="0" 232*4882a593Smuzhiyun int "LCD type (0=none, 1=custom, 2=old //, 3=ks0074, 4=hantronix, 5=Nexcom)" 233*4882a593Smuzhiyun range 0 5 234*4882a593Smuzhiyun default 0 235*4882a593Smuzhiyun help 236*4882a593Smuzhiyun This enables and configures an LCD connected to the parallel port. 237*4882a593Smuzhiyun The driver includes an interpreter for escape codes starting with 238*4882a593Smuzhiyun '\e[L' which are specific to the LCD, and a few ANSI codes. The 239*4882a593Smuzhiyun driver will be registered as character device 10,156, usually 240*4882a593Smuzhiyun under the name '/dev/lcd'. There are a total of 6 supported types : 241*4882a593Smuzhiyun 242*4882a593Smuzhiyun 0 : do not enable the driver 243*4882a593Smuzhiyun 1 : custom configuration and wiring (see further) 244*4882a593Smuzhiyun 2 : 2x16 & 2x40 parallel LCD (old wiring) 245*4882a593Smuzhiyun 3 : 2x16 serial LCD (KS-0074 based) 246*4882a593Smuzhiyun 4 : 2x16 parallel LCD (Hantronix wiring) 247*4882a593Smuzhiyun 5 : 2x16 parallel LCD (Nexcom wiring) 248*4882a593Smuzhiyun 249*4882a593Smuzhiyun When type '1' is specified, other options will appear to configure 250*4882a593Smuzhiyun more precise aspects (wiring, dimensions, protocol, ...). Please note 251*4882a593Smuzhiyun that those values changed from the 2.4 driver for better consistency. 252*4882a593Smuzhiyun 253*4882a593Smuzhiyunconfig PANEL_LCD_HEIGHT 254*4882a593Smuzhiyun depends on PANEL_PROFILE="0" && PANEL_LCD="1" 255*4882a593Smuzhiyun int "Number of lines on the LCD (1-2)" 256*4882a593Smuzhiyun range 1 2 257*4882a593Smuzhiyun default 2 258*4882a593Smuzhiyun help 259*4882a593Smuzhiyun This is the number of visible character lines on the LCD in custom profile. 260*4882a593Smuzhiyun It can either be 1 or 2. 261*4882a593Smuzhiyun 262*4882a593Smuzhiyunconfig PANEL_LCD_WIDTH 263*4882a593Smuzhiyun depends on PANEL_PROFILE="0" && PANEL_LCD="1" 264*4882a593Smuzhiyun int "Number of characters per line on the LCD (1-40)" 265*4882a593Smuzhiyun range 1 40 266*4882a593Smuzhiyun default 40 267*4882a593Smuzhiyun help 268*4882a593Smuzhiyun This is the number of characters per line on the LCD in custom profile. 269*4882a593Smuzhiyun Common values are 16,20,24,40. 270*4882a593Smuzhiyun 271*4882a593Smuzhiyunconfig PANEL_LCD_BWIDTH 272*4882a593Smuzhiyun depends on PANEL_PROFILE="0" && PANEL_LCD="1" 273*4882a593Smuzhiyun int "Internal LCD line width (1-40, 40 by default)" 274*4882a593Smuzhiyun range 1 40 275*4882a593Smuzhiyun default 40 276*4882a593Smuzhiyun help 277*4882a593Smuzhiyun Most LCDs use a standard controller which supports hardware lines of 40 278*4882a593Smuzhiyun characters, although sometimes only 16, 20 or 24 of them are really wired 279*4882a593Smuzhiyun to the terminal. This results in some non-visible but addressable characters, 280*4882a593Smuzhiyun and is the case for most parallel LCDs. Other LCDs, and some serial ones, 281*4882a593Smuzhiyun however, use the same line width internally as what is visible. The KS0074 282*4882a593Smuzhiyun for example, uses 16 characters per line for 16 visible characters per line. 283*4882a593Smuzhiyun 284*4882a593Smuzhiyun This option lets you configure the value used by your LCD in 'custom' profile. 285*4882a593Smuzhiyun If you don't know, put '40' here. 286*4882a593Smuzhiyun 287*4882a593Smuzhiyunconfig PANEL_LCD_HWIDTH 288*4882a593Smuzhiyun depends on PANEL_PROFILE="0" && PANEL_LCD="1" 289*4882a593Smuzhiyun int "Hardware LCD line width (1-64, 64 by default)" 290*4882a593Smuzhiyun range 1 64 291*4882a593Smuzhiyun default 64 292*4882a593Smuzhiyun help 293*4882a593Smuzhiyun Most LCDs use a single address bit to differentiate line 0 and line 1. Since 294*4882a593Smuzhiyun some of them need to be able to address 40 chars with the lower bits, they 295*4882a593Smuzhiyun often use the immediately superior power of 2, which is 64, to address the 296*4882a593Smuzhiyun next line. 297*4882a593Smuzhiyun 298*4882a593Smuzhiyun If you don't know what your LCD uses, in doubt let 16 here for a 2x16, and 299*4882a593Smuzhiyun 64 here for a 2x40. 300*4882a593Smuzhiyun 301*4882a593Smuzhiyunconfig PANEL_LCD_CHARSET 302*4882a593Smuzhiyun depends on PANEL_PROFILE="0" && PANEL_LCD="1" 303*4882a593Smuzhiyun int "LCD character set (0=normal, 1=KS0074)" 304*4882a593Smuzhiyun range 0 1 305*4882a593Smuzhiyun default 0 306*4882a593Smuzhiyun help 307*4882a593Smuzhiyun Some controllers such as the KS0074 use a somewhat strange character set 308*4882a593Smuzhiyun where many symbols are at unusual places. The driver knows how to map 309*4882a593Smuzhiyun 'standard' ASCII characters to the character sets used by these controllers. 310*4882a593Smuzhiyun Valid values are : 311*4882a593Smuzhiyun 312*4882a593Smuzhiyun 0 : normal (untranslated) character set 313*4882a593Smuzhiyun 1 : KS0074 character set 314*4882a593Smuzhiyun 315*4882a593Smuzhiyun If you don't know, use the normal one (0). 316*4882a593Smuzhiyun 317*4882a593Smuzhiyunconfig PANEL_LCD_PROTO 318*4882a593Smuzhiyun depends on PANEL_PROFILE="0" && PANEL_LCD="1" 319*4882a593Smuzhiyun int "LCD communication mode (0=parallel 8 bits, 1=serial)" 320*4882a593Smuzhiyun range 0 1 321*4882a593Smuzhiyun default 0 322*4882a593Smuzhiyun help 323*4882a593Smuzhiyun This driver now supports any serial or parallel LCD wired to a parallel 324*4882a593Smuzhiyun port. But before assigning signals, the driver needs to know if it will 325*4882a593Smuzhiyun be driving a serial LCD or a parallel one. Serial LCDs only use 2 wires 326*4882a593Smuzhiyun (SDA/SCL), while parallel ones use 2 or 3 wires for the control signals 327*4882a593Smuzhiyun (E, RS, sometimes RW), and 4 or 8 for the data. Use 0 here for a 8 bits 328*4882a593Smuzhiyun parallel LCD, and 1 for a serial LCD. 329*4882a593Smuzhiyun 330*4882a593Smuzhiyunconfig PANEL_LCD_PIN_E 331*4882a593Smuzhiyun depends on PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO="0" 332*4882a593Smuzhiyun int "Parallel port pin number & polarity connected to the LCD E signal (-17...17) " 333*4882a593Smuzhiyun range -17 17 334*4882a593Smuzhiyun default 14 335*4882a593Smuzhiyun help 336*4882a593Smuzhiyun This describes the number of the parallel port pin to which the LCD 'E' 337*4882a593Smuzhiyun signal has been connected. It can be : 338*4882a593Smuzhiyun 339*4882a593Smuzhiyun 0 : no connection (eg: connected to ground) 340*4882a593Smuzhiyun 1..17 : directly connected to any of these pins on the DB25 plug 341*4882a593Smuzhiyun -1..-17 : connected to the same pin through an inverter (eg: transistor). 342*4882a593Smuzhiyun 343*4882a593Smuzhiyun Default for the 'E' pin in custom profile is '14' (AUTOFEED). 344*4882a593Smuzhiyun 345*4882a593Smuzhiyunconfig PANEL_LCD_PIN_RS 346*4882a593Smuzhiyun depends on PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO="0" 347*4882a593Smuzhiyun int "Parallel port pin number & polarity connected to the LCD RS signal (-17...17) " 348*4882a593Smuzhiyun range -17 17 349*4882a593Smuzhiyun default 17 350*4882a593Smuzhiyun help 351*4882a593Smuzhiyun This describes the number of the parallel port pin to which the LCD 'RS' 352*4882a593Smuzhiyun signal has been connected. It can be : 353*4882a593Smuzhiyun 354*4882a593Smuzhiyun 0 : no connection (eg: connected to ground) 355*4882a593Smuzhiyun 1..17 : directly connected to any of these pins on the DB25 plug 356*4882a593Smuzhiyun -1..-17 : connected to the same pin through an inverter (eg: transistor). 357*4882a593Smuzhiyun 358*4882a593Smuzhiyun Default for the 'RS' pin in custom profile is '17' (SELECT IN). 359*4882a593Smuzhiyun 360*4882a593Smuzhiyunconfig PANEL_LCD_PIN_RW 361*4882a593Smuzhiyun depends on PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO="0" 362*4882a593Smuzhiyun int "Parallel port pin number & polarity connected to the LCD RW signal (-17...17) " 363*4882a593Smuzhiyun range -17 17 364*4882a593Smuzhiyun default 16 365*4882a593Smuzhiyun help 366*4882a593Smuzhiyun This describes the number of the parallel port pin to which the LCD 'RW' 367*4882a593Smuzhiyun signal has been connected. It can be : 368*4882a593Smuzhiyun 369*4882a593Smuzhiyun 0 : no connection (eg: connected to ground) 370*4882a593Smuzhiyun 1..17 : directly connected to any of these pins on the DB25 plug 371*4882a593Smuzhiyun -1..-17 : connected to the same pin through an inverter (eg: transistor). 372*4882a593Smuzhiyun 373*4882a593Smuzhiyun Default for the 'RW' pin in custom profile is '16' (INIT). 374*4882a593Smuzhiyun 375*4882a593Smuzhiyunconfig PANEL_LCD_PIN_SCL 376*4882a593Smuzhiyun depends on PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO!="0" 377*4882a593Smuzhiyun int "Parallel port pin number & polarity connected to the LCD SCL signal (-17...17) " 378*4882a593Smuzhiyun range -17 17 379*4882a593Smuzhiyun default 1 380*4882a593Smuzhiyun help 381*4882a593Smuzhiyun This describes the number of the parallel port pin to which the serial 382*4882a593Smuzhiyun LCD 'SCL' signal has been connected. It can be : 383*4882a593Smuzhiyun 384*4882a593Smuzhiyun 0 : no connection (eg: connected to ground) 385*4882a593Smuzhiyun 1..17 : directly connected to any of these pins on the DB25 plug 386*4882a593Smuzhiyun -1..-17 : connected to the same pin through an inverter (eg: transistor). 387*4882a593Smuzhiyun 388*4882a593Smuzhiyun Default for the 'SCL' pin in custom profile is '1' (STROBE). 389*4882a593Smuzhiyun 390*4882a593Smuzhiyunconfig PANEL_LCD_PIN_SDA 391*4882a593Smuzhiyun depends on PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO!="0" 392*4882a593Smuzhiyun int "Parallel port pin number & polarity connected to the LCD SDA signal (-17...17) " 393*4882a593Smuzhiyun range -17 17 394*4882a593Smuzhiyun default 2 395*4882a593Smuzhiyun help 396*4882a593Smuzhiyun This describes the number of the parallel port pin to which the serial 397*4882a593Smuzhiyun LCD 'SDA' signal has been connected. It can be : 398*4882a593Smuzhiyun 399*4882a593Smuzhiyun 0 : no connection (eg: connected to ground) 400*4882a593Smuzhiyun 1..17 : directly connected to any of these pins on the DB25 plug 401*4882a593Smuzhiyun -1..-17 : connected to the same pin through an inverter (eg: transistor). 402*4882a593Smuzhiyun 403*4882a593Smuzhiyun Default for the 'SDA' pin in custom profile is '2' (D0). 404*4882a593Smuzhiyun 405*4882a593Smuzhiyunconfig PANEL_LCD_PIN_BL 406*4882a593Smuzhiyun depends on PANEL_PROFILE="0" && PANEL_LCD="1" 407*4882a593Smuzhiyun int "Parallel port pin number & polarity connected to the LCD backlight signal (-17...17) " 408*4882a593Smuzhiyun range -17 17 409*4882a593Smuzhiyun default 0 410*4882a593Smuzhiyun help 411*4882a593Smuzhiyun This describes the number of the parallel port pin to which the LCD 'BL' signal 412*4882a593Smuzhiyun has been connected. It can be : 413*4882a593Smuzhiyun 414*4882a593Smuzhiyun 0 : no connection (eg: connected to ground) 415*4882a593Smuzhiyun 1..17 : directly connected to any of these pins on the DB25 plug 416*4882a593Smuzhiyun -1..-17 : connected to the same pin through an inverter (eg: transistor). 417*4882a593Smuzhiyun 418*4882a593Smuzhiyun Default for the 'BL' pin in custom profile is '0' (uncontrolled). 419*4882a593Smuzhiyun 420*4882a593Smuzhiyunendif # PARPORT_PANEL 421*4882a593Smuzhiyun 422*4882a593Smuzhiyunconfig PANEL_CHANGE_MESSAGE 423*4882a593Smuzhiyun bool "Change LCD initialization message ?" 424*4882a593Smuzhiyun depends on CHARLCD 425*4882a593Smuzhiyun default "n" 426*4882a593Smuzhiyun help 427*4882a593Smuzhiyun This allows you to replace the boot message indicating the kernel version 428*4882a593Smuzhiyun and the driver version with a custom message. This is useful on appliances 429*4882a593Smuzhiyun where a simple 'Starting system' message can be enough to stop a customer 430*4882a593Smuzhiyun from worrying. 431*4882a593Smuzhiyun 432*4882a593Smuzhiyun If you say 'Y' here, you'll be able to choose a message yourself. Otherwise, 433*4882a593Smuzhiyun say 'N' and keep the default message with the version. 434*4882a593Smuzhiyun 435*4882a593Smuzhiyunconfig PANEL_BOOT_MESSAGE 436*4882a593Smuzhiyun depends on PANEL_CHANGE_MESSAGE="y" 437*4882a593Smuzhiyun string "New initialization message" 438*4882a593Smuzhiyun default "" 439*4882a593Smuzhiyun help 440*4882a593Smuzhiyun This allows you to replace the boot message indicating the kernel version 441*4882a593Smuzhiyun and the driver version with a custom message. This is useful on appliances 442*4882a593Smuzhiyun where a simple 'Starting system' message can be enough to stop a customer 443*4882a593Smuzhiyun from worrying. 444*4882a593Smuzhiyun 445*4882a593Smuzhiyun An empty message will only clear the display at driver init time. Any other 446*4882a593Smuzhiyun printf()-formatted message is valid with newline and escape codes. 447*4882a593Smuzhiyun 448*4882a593Smuzhiyunchoice 449*4882a593Smuzhiyun prompt "Backlight initial state" 450*4882a593Smuzhiyun default CHARLCD_BL_FLASH 451*4882a593Smuzhiyun help 452*4882a593Smuzhiyun Select the initial backlight state on boot or module load. 453*4882a593Smuzhiyun 454*4882a593Smuzhiyun Previously, there was no option for this: the backlight flashed 455*4882a593Smuzhiyun briefly on init. Now you can also turn it off/on. 456*4882a593Smuzhiyun 457*4882a593Smuzhiyun config CHARLCD_BL_OFF 458*4882a593Smuzhiyun bool "Off" 459*4882a593Smuzhiyun help 460*4882a593Smuzhiyun Backlight is initially turned off 461*4882a593Smuzhiyun 462*4882a593Smuzhiyun config CHARLCD_BL_ON 463*4882a593Smuzhiyun bool "On" 464*4882a593Smuzhiyun help 465*4882a593Smuzhiyun Backlight is initially turned on 466*4882a593Smuzhiyun 467*4882a593Smuzhiyun config CHARLCD_BL_FLASH 468*4882a593Smuzhiyun bool "Flash" 469*4882a593Smuzhiyun help 470*4882a593Smuzhiyun Backlight is flashed briefly on init 471*4882a593Smuzhiyun 472*4882a593Smuzhiyunendchoice 473*4882a593Smuzhiyun 474*4882a593Smuzhiyunendif # AUXDISPLAY 475*4882a593Smuzhiyun 476*4882a593Smuzhiyunconfig PANEL 477*4882a593Smuzhiyun tristate "Parallel port LCD/Keypad Panel support (OLD OPTION)" 478*4882a593Smuzhiyun depends on PARPORT 479*4882a593Smuzhiyun select AUXDISPLAY 480*4882a593Smuzhiyun select PARPORT_PANEL 481*4882a593Smuzhiyun 482*4882a593Smuzhiyunconfig CHARLCD 483*4882a593Smuzhiyun tristate "Character LCD core support" if COMPILE_TEST 484