summaryrefslogtreecommitdiffstats
path: root/drivers/misc/Kconfig
diff options
context:
space:
mode:
authorKsenija Stanojevic <ksenija.stanojevic@gmail.com>2016-02-03 06:31:49 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-02-03 17:14:22 -0500
commit305b37bd01c220a7a6285911d43c9884270257be (patch)
tree9fa3c74fb619acd4a4f2cbc6fba23426a39cb90c /drivers/misc/Kconfig
parentfec2f3335c637ca95166a9eb753fe2b49aee4e71 (diff)
misc: Move panel driver out of staging
Move panel driver from drivers/staging/panel to drivers/misc. Signed-off-by: Ksenija Stanojevic <ksenija.stanojevic@gmail.com> Acked-by: Willy Tarreau <w@1wt.eu> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/misc/Kconfig')
-rw-r--r--drivers/misc/Kconfig278
1 files changed, 278 insertions, 0 deletions
diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig
index 054fc10cb3b6..f0ba78289504 100644
--- a/drivers/misc/Kconfig
+++ b/drivers/misc/Kconfig
@@ -525,6 +525,284 @@ config VEXPRESS_SYSCFG
525 ARM Ltd. Versatile Express uses specialised platform configuration 525 ARM Ltd. Versatile Express uses specialised platform configuration
526 bus. System Configuration interface is one of the possible means 526 bus. System Configuration interface is one of the possible means
527 of generating transactions on this bus. 527 of generating transactions on this bus.
528config PANEL
529 tristate "Parallel port LCD/Keypad Panel support"
530 depends on PARPORT
531 ---help---
532 Say Y here if you have an HD44780 or KS-0074 LCD connected to your
533 parallel port. This driver also features 4 and 6-key keypads. The LCD
534 is accessible through the /dev/lcd char device (10, 156), and the
535 keypad through /dev/keypad (10, 185). Both require misc device to be
536 enabled. This code can either be compiled as a module, or linked into
537 the kernel and started at boot. If you don't understand what all this
538 is about, say N.
539
540config PANEL_PARPORT
541 int "Default parallel port number (0=LPT1)"
542 depends on PANEL
543 range 0 255
544 default "0"
545 ---help---
546 This is the index of the parallel port the panel is connected to. One
547 driver instance only supports one parallel port, so if your keypad
548 and LCD are connected to two separate ports, you have to start two
549 modules with different arguments. Numbering starts with '0' for LPT1,
550 and so on.
551
552config PANEL_PROFILE
553 int "Default panel profile (0-5, 0=custom)"
554 depends on PANEL
555 range 0 5
556 default "5"
557 ---help---
558 To ease configuration, the driver supports different configuration
559 profiles for past and recent wirings. These profiles can also be
560 used to define an approximative configuration, completed by a few
561 other options. Here are the profiles :
562
563 0 = custom (see further)
564 1 = 2x16 parallel LCD, old keypad
565 2 = 2x16 serial LCD (KS-0074), new keypad
566 3 = 2x16 parallel LCD (Hantronix), no keypad
567 4 = 2x16 parallel LCD (Nexcom NSA1045) with Nexcom's keypad
568 5 = 2x40 parallel LCD (old one), with old keypad
569
570 Custom configurations allow you to define how your display is
571 wired to the parallel port, and how it works. This is only intended
572 for experts.
573
574config PANEL_KEYPAD
575 depends on PANEL && PANEL_PROFILE="0"
576 int "Keypad type (0=none, 1=old 6 keys, 2=new 6 keys, 3=Nexcom 4 keys)"
577 range 0 3
578 default 0
579 ---help---
580 This enables and configures a keypad connected to the parallel port.
581 The keys will be read from character device 10,185. Valid values are :
582
583 0 : do not enable this driver
584 1 : old 6 keys keypad
585 2 : new 6 keys keypad, as used on the server at www.ant-computing.com
586 3 : Nexcom NSA1045's 4 keys keypad
587
588 New profiles can be described in the driver source. The driver also
589 supports simultaneous keys pressed when the keypad supports them.
590
591config PANEL_LCD
592 depends on PANEL && PANEL_PROFILE="0"
593 int "LCD type (0=none, 1=custom, 2=old //, 3=ks0074, 4=hantronix, 5=Nexcom)"
594 range 0 5
595 default 0
596 ---help---
597 This enables and configures an LCD connected to the parallel port.
598 The driver includes an interpreter for escape codes starting with
599 '\e[L' which are specific to the LCD, and a few ANSI codes. The
600 driver will be registered as character device 10,156, usually
601 under the name '/dev/lcd'. There are a total of 6 supported types :
602
603 0 : do not enable the driver
604 1 : custom configuration and wiring (see further)
605 2 : 2x16 & 2x40 parallel LCD (old wiring)
606 3 : 2x16 serial LCD (KS-0074 based)
607 4 : 2x16 parallel LCD (Hantronix wiring)
608 5 : 2x16 parallel LCD (Nexcom wiring)
609
610 When type '1' is specified, other options will appear to configure
611 more precise aspects (wiring, dimensions, protocol, ...). Please note
612 that those values changed from the 2.4 driver for better consistency.
613
614config PANEL_LCD_HEIGHT
615 depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1"
616 int "Number of lines on the LCD (1-2)"
617 range 1 2
618 default 2
619 ---help---
620 This is the number of visible character lines on the LCD in custom profile.
621 It can either be 1 or 2.
622
623config PANEL_LCD_WIDTH
624 depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1"
625 int "Number of characters per line on the LCD (1-40)"
626 range 1 40
627 default 40
628 ---help---
629 This is the number of characters per line on the LCD in custom profile.
630 Common values are 16,20,24,40.
631
632config PANEL_LCD_BWIDTH
633 depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1"
634 int "Internal LCD line width (1-40, 40 by default)"
635 range 1 40
636 default 40
637 ---help---
638 Most LCDs use a standard controller which supports hardware lines of 40
639 characters, although sometimes only 16, 20 or 24 of them are really wired
640 to the terminal. This results in some non-visible but addressable characters,
641 and is the case for most parallel LCDs. Other LCDs, and some serial ones,
642 however, use the same line width internally as what is visible. The KS0074
643 for example, uses 16 characters per line for 16 visible characters per line.
644
645 This option lets you configure the value used by your LCD in 'custom' profile.
646 If you don't know, put '40' here.
647
648config PANEL_LCD_HWIDTH
649 depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1"
650 int "Hardware LCD line width (1-64, 64 by default)"
651 range 1 64
652 default 64
653 ---help---
654 Most LCDs use a single address bit to differentiate line 0 and line 1. Since
655 some of them need to be able to address 40 chars with the lower bits, they
656 often use the immediately superior power of 2, which is 64, to address the
657 next line.
658
659 If you don't know what your LCD uses, in doubt let 16 here for a 2x16, and
660 64 here for a 2x40.
661
662config PANEL_LCD_CHARSET
663 depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1"
664 int "LCD character set (0=normal, 1=KS0074)"
665 range 0 1
666 default 0
667 ---help---
668 Some controllers such as the KS0074 use a somewhat strange character set
669 where many symbols are at unusual places. The driver knows how to map
670 'standard' ASCII characters to the character sets used by these controllers.
671 Valid values are :
672
673 0 : normal (untranslated) character set
674 1 : KS0074 character set
675
676 If you don't know, use the normal one (0).
677
678config PANEL_LCD_PROTO
679 depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1"
680 int "LCD communication mode (0=parallel 8 bits, 1=serial)"
681 range 0 1
682 default 0
683 ---help---
684 This driver now supports any serial or parallel LCD wired to a parallel
685 port. But before assigning signals, the driver needs to know if it will
686 be driving a serial LCD or a parallel one. Serial LCDs only use 2 wires
687 (SDA/SCL), while parallel ones use 2 or 3 wires for the control signals
688 (E, RS, sometimes RW), and 4 or 8 for the data. Use 0 here for a 8 bits
689 parallel LCD, and 1 for a serial LCD.
690
691config PANEL_LCD_PIN_E
692 depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO="0"
693 int "Parallel port pin number & polarity connected to the LCD E signal (-17...17) "
694 range -17 17
695 default 14
696 ---help---
697 This describes the number of the parallel port pin to which the LCD 'E'
698 signal has been connected. It can be :
699
700 0 : no connection (eg: connected to ground)
701 1..17 : directly connected to any of these pins on the DB25 plug
702 -1..-17 : connected to the same pin through an inverter (eg: transistor).
703
704 Default for the 'E' pin in custom profile is '14' (AUTOFEED).
705
706config PANEL_LCD_PIN_RS
707 depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO="0"
708 int "Parallel port pin number & polarity connected to the LCD RS signal (-17...17) "
709 range -17 17
710 default 17
711 ---help---
712 This describes the number of the parallel port pin to which the LCD 'RS'
713 signal has been connected. It can be :
714
715 0 : no connection (eg: connected to ground)
716 1..17 : directly connected to any of these pins on the DB25 plug
717 -1..-17 : connected to the same pin through an inverter (eg: transistor).
718
719 Default for the 'RS' pin in custom profile is '17' (SELECT IN).
720
721config PANEL_LCD_PIN_RW
722 depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO="0"
723 int "Parallel port pin number & polarity connected to the LCD RW signal (-17...17) "
724 range -17 17
725 default 16
726 ---help---
727 This describes the number of the parallel port pin to which the LCD 'RW'
728 signal has been connected. It can be :
729
730 0 : no connection (eg: connected to ground)
731 1..17 : directly connected to any of these pins on the DB25 plug
732 -1..-17 : connected to the same pin through an inverter (eg: transistor).
733
734 Default for the 'RW' pin in custom profile is '16' (INIT).
735
736config PANEL_LCD_PIN_SCL
737 depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO!="0"
738 int "Parallel port pin number & polarity connected to the LCD SCL signal (-17...17) "
739 range -17 17
740 default 1
741 ---help---
742 This describes the number of the parallel port pin to which the serial
743 LCD 'SCL' signal has been connected. It can be :
744
745 0 : no connection (eg: connected to ground)
746 1..17 : directly connected to any of these pins on the DB25 plug
747 -1..-17 : connected to the same pin through an inverter (eg: transistor).
748
749 Default for the 'SCL' pin in custom profile is '1' (STROBE).
750
751config PANEL_LCD_PIN_SDA
752 depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO!="0"
753 int "Parallel port pin number & polarity connected to the LCD SDA signal (-17...17) "
754 range -17 17
755 default 2
756 ---help---
757 This describes the number of the parallel port pin to which the serial
758 LCD 'SDA' signal has been connected. It can be :
759
760 0 : no connection (eg: connected to ground)
761 1..17 : directly connected to any of these pins on the DB25 plug
762 -1..-17 : connected to the same pin through an inverter (eg: transistor).
763
764 Default for the 'SDA' pin in custom profile is '2' (D0).
765
766config PANEL_LCD_PIN_BL
767 depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1"
768 int "Parallel port pin number & polarity connected to the LCD backlight signal (-17...17) "
769 range -17 17
770 default 0
771 ---help---
772 This describes the number of the parallel port pin to which the LCD 'BL' signal
773 has been connected. It can be :
774
775 0 : no connection (eg: connected to ground)
776 1..17 : directly connected to any of these pins on the DB25 plug
777 -1..-17 : connected to the same pin through an inverter (eg: transistor).
778
779 Default for the 'BL' pin in custom profile is '0' (uncontrolled).
780
781config PANEL_CHANGE_MESSAGE
782 depends on PANEL
783 bool "Change LCD initialization message ?"
784 default "n"
785 ---help---
786 This allows you to replace the boot message indicating the kernel version
787 and the driver version with a custom message. This is useful on appliances
788 where a simple 'Starting system' message can be enough to stop a customer
789 from worrying.
790
791 If you say 'Y' here, you'll be able to choose a message yourself. Otherwise,
792 say 'N' and keep the default message with the version.
793
794config PANEL_BOOT_MESSAGE
795 depends on PANEL && PANEL_CHANGE_MESSAGE="y"
796 string "New initialization message"
797 default ""
798 ---help---
799 This allows you to replace the boot message indicating the kernel version
800 and the driver version with a custom message. This is useful on appliances
801 where a simple 'Starting system' message can be enough to stop a customer
802 from worrying.
803
804 An empty message will only clear the display at driver init time. Any other
805 printf()-formatted message is valid with newline and escape codes.
528 806
529source "drivers/misc/c2port/Kconfig" 807source "drivers/misc/c2port/Kconfig"
530source "drivers/misc/eeprom/Kconfig" 808source "drivers/misc/eeprom/Kconfig"