mirror of
https://github.com/torvalds/linux.git
synced 2024-11-25 05:32:00 +00:00
auxdisplay: linedisp: Group display drivers together
For better usability group the display drivers together in Kconfig. With this we will have the following sections: - Character LCD - Samsung KS0108 LCD controller - Single character line display - Character LCD with non-conforming interface Keep Makefile entries sorted alphabetically. While at it, drop redundant 'default n' entries. Tested-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
This commit is contained in:
parent
4cece76496
commit
16934de47d
@ -16,6 +16,9 @@ menuconfig AUXDISPLAY
|
||||
|
||||
if AUXDISPLAY
|
||||
|
||||
#
|
||||
# Character LCD section
|
||||
#
|
||||
config CHARLCD
|
||||
tristate "Character LCD core support" if COMPILE_TEST
|
||||
help
|
||||
@ -25,12 +28,6 @@ config CHARLCD
|
||||
This is some character LCD core interface that multiple drivers can
|
||||
use.
|
||||
|
||||
config LINEDISP
|
||||
tristate "Character line display core support" if COMPILE_TEST
|
||||
help
|
||||
This is the core support for single-line character displays, to be
|
||||
selected by drivers that use it.
|
||||
|
||||
config HD44780_COMMON
|
||||
tristate "Common functions for HD44780 (and compatibles) LCD displays" if COMPILE_TEST
|
||||
select CHARLCD
|
||||
@ -52,145 +49,6 @@ config HD44780
|
||||
kernel and started at boot.
|
||||
If you don't understand what all this is about, say N.
|
||||
|
||||
config KS0108
|
||||
tristate "KS0108 LCD Controller"
|
||||
depends on PARPORT_PC
|
||||
default n
|
||||
help
|
||||
If you have a LCD controlled by one or more KS0108
|
||||
controllers, say Y. You will need also another more specific
|
||||
driver for your LCD.
|
||||
|
||||
Depends on Parallel Port support. If you say Y at
|
||||
parport, you will be able to compile this as a module (M)
|
||||
and built-in as well (Y).
|
||||
|
||||
To compile this as a module, choose M here:
|
||||
the module will be called ks0108.
|
||||
|
||||
If unsure, say N.
|
||||
|
||||
config KS0108_PORT
|
||||
hex "Parallel port where the LCD is connected"
|
||||
depends on KS0108
|
||||
default 0x378
|
||||
help
|
||||
The address of the parallel port where the LCD is connected.
|
||||
|
||||
The first standard parallel port address is 0x378.
|
||||
The second standard parallel port address is 0x278.
|
||||
The third standard parallel port address is 0x3BC.
|
||||
|
||||
You can specify a different address if you need.
|
||||
|
||||
If you don't know what I'm talking about, load the parport module,
|
||||
and execute "dmesg" or "cat /proc/ioports". You can see there how
|
||||
many parallel ports are present and which address each one has.
|
||||
|
||||
Usually you only need to use 0x378.
|
||||
|
||||
If you compile this as a module, you can still override this
|
||||
using the module parameters.
|
||||
|
||||
config KS0108_DELAY
|
||||
int "Delay between each control writing (microseconds)"
|
||||
depends on KS0108
|
||||
default "2"
|
||||
help
|
||||
Amount of time the ks0108 should wait between each control write
|
||||
to the parallel port.
|
||||
|
||||
If your LCD seems to miss random writings, increment this.
|
||||
|
||||
If you don't know what I'm talking about, ignore it.
|
||||
|
||||
If you compile this as a module, you can still override this
|
||||
value using the module parameters.
|
||||
|
||||
config CFAG12864B
|
||||
tristate "CFAG12864B LCD"
|
||||
depends on X86
|
||||
depends on FB
|
||||
depends on KS0108
|
||||
select FB_SYSMEM_HELPERS
|
||||
default n
|
||||
help
|
||||
If you have a Crystalfontz 128x64 2-color LCD, cfag12864b Series,
|
||||
say Y. You also need the ks0108 LCD Controller driver.
|
||||
|
||||
For help about how to wire your LCD to the parallel port,
|
||||
check Documentation/admin-guide/auxdisplay/cfag12864b.rst
|
||||
|
||||
Depends on the x86 arch and the framebuffer support.
|
||||
|
||||
The LCD framebuffer driver can be attached to a console.
|
||||
It will work fine. However, you can't attach it to the fbdev driver
|
||||
of the xorg server.
|
||||
|
||||
To compile this as a module, choose M here:
|
||||
the modules will be called cfag12864b and cfag12864bfb.
|
||||
|
||||
If unsure, say N.
|
||||
|
||||
config CFAG12864B_RATE
|
||||
int "Refresh rate (hertz)"
|
||||
depends on CFAG12864B
|
||||
default "20"
|
||||
help
|
||||
Refresh rate of the LCD.
|
||||
|
||||
As the LCD is not memory mapped, the driver has to make the work by
|
||||
software. This means you should be careful setting this value higher.
|
||||
If your CPUs are really slow or you feel the system is slowed down,
|
||||
decrease the value.
|
||||
|
||||
Be careful modifying this value to a very high value:
|
||||
You can freeze the computer, or the LCD maybe can't draw as fast as you
|
||||
are requesting.
|
||||
|
||||
If you don't know what I'm talking about, ignore it.
|
||||
|
||||
If you compile this as a module, you can still override this
|
||||
value using the module parameters.
|
||||
|
||||
config IMG_ASCII_LCD
|
||||
tristate "Imagination Technologies ASCII LCD Display"
|
||||
depends on HAS_IOMEM
|
||||
default y if MIPS_MALTA
|
||||
select MFD_SYSCON
|
||||
select LINEDISP
|
||||
help
|
||||
Enable this to support the simple ASCII LCD displays found on
|
||||
development boards such as the MIPS Boston, MIPS Malta & MIPS SEAD3
|
||||
from Imagination Technologies.
|
||||
|
||||
config HT16K33
|
||||
tristate "Holtek Ht16K33 LED controller with keyscan"
|
||||
depends on FB && I2C && INPUT
|
||||
select FB_SYSMEM_HELPERS
|
||||
select INPUT_MATRIXKMAP
|
||||
select FB_BACKLIGHT
|
||||
select NEW_LEDS
|
||||
select LEDS_CLASS
|
||||
select LINEDISP
|
||||
help
|
||||
Say yes here to add support for Holtek HT16K33, RAM mapping 16*8
|
||||
LED controller driver with keyscan.
|
||||
|
||||
config MAX6959
|
||||
tristate "Maxim MAX6958/6959 7-segment LED controller"
|
||||
depends on I2C
|
||||
select REGMAP_I2C
|
||||
select LINEDISP
|
||||
help
|
||||
If you say yes here you get support for the following Maxim chips
|
||||
(I2C 7-segment LED display controller):
|
||||
- MAX6958
|
||||
- MAX6959 (input support)
|
||||
|
||||
This driver can also be built as a module. If so, the module
|
||||
will be called max6959.
|
||||
|
||||
config LCD2S
|
||||
tristate "lcd2s 20x4 character display over I2C console"
|
||||
depends on I2C
|
||||
@ -201,27 +59,6 @@ config LCD2S
|
||||
is a simple single color character display. You have to connect it
|
||||
to an I2C bus.
|
||||
|
||||
config ARM_CHARLCD
|
||||
bool "ARM Ltd. Character LCD Driver"
|
||||
depends on PLAT_VERSATILE
|
||||
help
|
||||
This is a driver for the character LCD found on the ARM Ltd.
|
||||
Versatile and RealView Platform Baseboards. It doesn't do
|
||||
very much more than display the text "ARM Linux" on the first
|
||||
line and the Linux version on the second line, but that's
|
||||
still useful.
|
||||
|
||||
config SEG_LED_GPIO
|
||||
tristate "Generic 7-segment LED display"
|
||||
depends on GPIOLIB || COMPILE_TEST
|
||||
select LINEDISP
|
||||
help
|
||||
This driver supports a generic 7-segment LED display made up
|
||||
of GPIO pins connected to the individual segments.
|
||||
|
||||
This driver can also be built as a module. If so, the module
|
||||
will be called seg-led-gpio.
|
||||
|
||||
menuconfig PARPORT_PANEL
|
||||
tristate "Parallel port LCD/Keypad Panel support"
|
||||
depends on PARPORT
|
||||
@ -480,7 +317,6 @@ endif # PARPORT_PANEL
|
||||
config PANEL_CHANGE_MESSAGE
|
||||
bool "Change LCD initialization message ?"
|
||||
depends on CHARLCD
|
||||
default "n"
|
||||
help
|
||||
This allows you to replace the boot message indicating the kernel version
|
||||
and the driver version with a custom message. This is useful on appliances
|
||||
@ -529,8 +365,184 @@ choice
|
||||
|
||||
endchoice
|
||||
|
||||
#
|
||||
# Samsung KS0108 LCD controller section
|
||||
#
|
||||
config KS0108
|
||||
tristate "KS0108 LCD Controller"
|
||||
depends on PARPORT_PC
|
||||
help
|
||||
If you have a LCD controlled by one or more KS0108
|
||||
controllers, say Y. You will need also another more specific
|
||||
driver for your LCD.
|
||||
|
||||
Depends on Parallel Port support. If you say Y at
|
||||
parport, you will be able to compile this as a module (M)
|
||||
and built-in as well (Y).
|
||||
|
||||
To compile this as a module, choose M here:
|
||||
the module will be called ks0108.
|
||||
|
||||
If unsure, say N.
|
||||
|
||||
config KS0108_PORT
|
||||
hex "Parallel port where the LCD is connected"
|
||||
depends on KS0108
|
||||
default 0x378
|
||||
help
|
||||
The address of the parallel port where the LCD is connected.
|
||||
|
||||
The first standard parallel port address is 0x378.
|
||||
The second standard parallel port address is 0x278.
|
||||
The third standard parallel port address is 0x3BC.
|
||||
|
||||
You can specify a different address if you need.
|
||||
|
||||
If you don't know what I'm talking about, load the parport module,
|
||||
and execute "dmesg" or "cat /proc/ioports". You can see there how
|
||||
many parallel ports are present and which address each one has.
|
||||
|
||||
Usually you only need to use 0x378.
|
||||
|
||||
If you compile this as a module, you can still override this
|
||||
using the module parameters.
|
||||
|
||||
config KS0108_DELAY
|
||||
int "Delay between each control writing (microseconds)"
|
||||
depends on KS0108
|
||||
default "2"
|
||||
help
|
||||
Amount of time the ks0108 should wait between each control write
|
||||
to the parallel port.
|
||||
|
||||
If your LCD seems to miss random writings, increment this.
|
||||
|
||||
If you don't know what I'm talking about, ignore it.
|
||||
|
||||
If you compile this as a module, you can still override this
|
||||
value using the module parameters.
|
||||
|
||||
config CFAG12864B
|
||||
tristate "CFAG12864B LCD"
|
||||
depends on X86
|
||||
depends on FB
|
||||
depends on KS0108
|
||||
select FB_SYSMEM_HELPERS
|
||||
help
|
||||
If you have a Crystalfontz 128x64 2-color LCD, cfag12864b Series,
|
||||
say Y. You also need the ks0108 LCD Controller driver.
|
||||
|
||||
For help about how to wire your LCD to the parallel port,
|
||||
check Documentation/admin-guide/auxdisplay/cfag12864b.rst
|
||||
|
||||
Depends on the x86 arch and the framebuffer support.
|
||||
|
||||
The LCD framebuffer driver can be attached to a console.
|
||||
It will work fine. However, you can't attach it to the fbdev driver
|
||||
of the xorg server.
|
||||
|
||||
To compile this as a module, choose M here:
|
||||
the modules will be called cfag12864b and cfag12864bfb.
|
||||
|
||||
If unsure, say N.
|
||||
|
||||
config CFAG12864B_RATE
|
||||
int "Refresh rate (hertz)"
|
||||
depends on CFAG12864B
|
||||
default "20"
|
||||
help
|
||||
Refresh rate of the LCD.
|
||||
|
||||
As the LCD is not memory mapped, the driver has to make the work by
|
||||
software. This means you should be careful setting this value higher.
|
||||
If your CPUs are really slow or you feel the system is slowed down,
|
||||
decrease the value.
|
||||
|
||||
Be careful modifying this value to a very high value:
|
||||
You can freeze the computer, or the LCD maybe can't draw as fast as you
|
||||
are requesting.
|
||||
|
||||
If you don't know what I'm talking about, ignore it.
|
||||
|
||||
If you compile this as a module, you can still override this
|
||||
value using the module parameters.
|
||||
|
||||
#
|
||||
# Single character line display section
|
||||
#
|
||||
config LINEDISP
|
||||
tristate "Character line display core support" if COMPILE_TEST
|
||||
help
|
||||
This is the core support for single-line character displays, to be
|
||||
selected by drivers that use it.
|
||||
|
||||
config IMG_ASCII_LCD
|
||||
tristate "Imagination Technologies ASCII LCD Display"
|
||||
depends on HAS_IOMEM
|
||||
default y if MIPS_MALTA
|
||||
select MFD_SYSCON
|
||||
select LINEDISP
|
||||
help
|
||||
Enable this to support the simple ASCII LCD displays found on
|
||||
development boards such as the MIPS Boston, MIPS Malta & MIPS SEAD3
|
||||
from Imagination Technologies.
|
||||
|
||||
config HT16K33
|
||||
tristate "Holtek Ht16K33 LED controller with keyscan"
|
||||
depends on FB && I2C && INPUT
|
||||
select FB_SYSMEM_HELPERS
|
||||
select INPUT_MATRIXKMAP
|
||||
select FB_BACKLIGHT
|
||||
select NEW_LEDS
|
||||
select LEDS_CLASS
|
||||
select LINEDISP
|
||||
help
|
||||
Say yes here to add support for Holtek HT16K33, RAM mapping 16*8
|
||||
LED controller driver with keyscan.
|
||||
|
||||
config MAX6959
|
||||
tristate "Maxim MAX6958/6959 7-segment LED controller"
|
||||
depends on I2C
|
||||
select REGMAP_I2C
|
||||
select LINEDISP
|
||||
help
|
||||
If you say yes here you get support for the following Maxim chips
|
||||
(I2C 7-segment LED display controller):
|
||||
- MAX6958
|
||||
- MAX6959 (input support)
|
||||
|
||||
This driver can also be built as a module. If so, the module
|
||||
will be called max6959.
|
||||
|
||||
config SEG_LED_GPIO
|
||||
tristate "Generic 7-segment LED display"
|
||||
depends on GPIOLIB || COMPILE_TEST
|
||||
select LINEDISP
|
||||
help
|
||||
This driver supports a generic 7-segment LED display made up
|
||||
of GPIO pins connected to the individual segments.
|
||||
|
||||
This driver can also be built as a module. If so, the module
|
||||
will be called seg-led-gpio.
|
||||
|
||||
#
|
||||
# Character LCD with non-conforming interface section
|
||||
#
|
||||
config ARM_CHARLCD
|
||||
bool "ARM Ltd. Character LCD Driver"
|
||||
depends on PLAT_VERSATILE
|
||||
help
|
||||
This is a driver for the character LCD found on the ARM Ltd.
|
||||
Versatile and RealView Platform Baseboards. It doesn't do
|
||||
very much more than display the text "ARM Linux" on the first
|
||||
line and the Linux version on the second line, but that's
|
||||
still useful.
|
||||
|
||||
endif # AUXDISPLAY
|
||||
|
||||
#
|
||||
# Deprecated options
|
||||
#
|
||||
config PANEL
|
||||
tristate "Parallel port LCD/Keypad Panel support (OLD OPTION)"
|
||||
depends on PARPORT
|
||||
|
@ -3,16 +3,16 @@
|
||||
# Makefile for the kernel auxiliary displays device drivers.
|
||||
#
|
||||
|
||||
obj-$(CONFIG_ARM_CHARLCD) += arm-charlcd.o
|
||||
obj-$(CONFIG_CFAG12864B) += cfag12864b.o cfag12864bfb.o
|
||||
obj-$(CONFIG_CHARLCD) += charlcd.o
|
||||
obj-$(CONFIG_HD44780_COMMON) += hd44780_common.o
|
||||
obj-$(CONFIG_ARM_CHARLCD) += arm-charlcd.o
|
||||
obj-$(CONFIG_KS0108) += ks0108.o
|
||||
obj-$(CONFIG_CFAG12864B) += cfag12864b.o cfag12864bfb.o
|
||||
obj-$(CONFIG_IMG_ASCII_LCD) += img-ascii-lcd.o
|
||||
obj-$(CONFIG_HD44780) += hd44780.o
|
||||
obj-$(CONFIG_HT16K33) += ht16k33.o
|
||||
obj-$(CONFIG_PARPORT_PANEL) += panel.o
|
||||
obj-$(CONFIG_IMG_ASCII_LCD) += img-ascii-lcd.o
|
||||
obj-$(CONFIG_KS0108) += ks0108.o
|
||||
obj-$(CONFIG_LCD2S) += lcd2s.o
|
||||
obj-$(CONFIG_LINEDISP) += line-display.o
|
||||
obj-$(CONFIG_MAX6959) += max6959.o
|
||||
obj-$(CONFIG_PARPORT_PANEL) += panel.o
|
||||
obj-$(CONFIG_SEG_LED_GPIO) += seg-led-gpio.o
|
||||
|
Loading…
Reference in New Issue
Block a user