mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-04 20:19:47 +08: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
|
if AUXDISPLAY
|
||||||
|
|
||||||
|
#
|
||||||
|
# Character LCD section
|
||||||
|
#
|
||||||
config CHARLCD
|
config CHARLCD
|
||||||
tristate "Character LCD core support" if COMPILE_TEST
|
tristate "Character LCD core support" if COMPILE_TEST
|
||||||
help
|
help
|
||||||
@ -25,12 +28,6 @@ config CHARLCD
|
|||||||
This is some character LCD core interface that multiple drivers can
|
This is some character LCD core interface that multiple drivers can
|
||||||
use.
|
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
|
config HD44780_COMMON
|
||||||
tristate "Common functions for HD44780 (and compatibles) LCD displays" if COMPILE_TEST
|
tristate "Common functions for HD44780 (and compatibles) LCD displays" if COMPILE_TEST
|
||||||
select CHARLCD
|
select CHARLCD
|
||||||
@ -52,145 +49,6 @@ config HD44780
|
|||||||
kernel and started at boot.
|
kernel and started at boot.
|
||||||
If you don't understand what all this is about, say N.
|
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
|
config LCD2S
|
||||||
tristate "lcd2s 20x4 character display over I2C console"
|
tristate "lcd2s 20x4 character display over I2C console"
|
||||||
depends on I2C
|
depends on I2C
|
||||||
@ -201,27 +59,6 @@ config LCD2S
|
|||||||
is a simple single color character display. You have to connect it
|
is a simple single color character display. You have to connect it
|
||||||
to an I2C bus.
|
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
|
menuconfig PARPORT_PANEL
|
||||||
tristate "Parallel port LCD/Keypad Panel support"
|
tristate "Parallel port LCD/Keypad Panel support"
|
||||||
depends on PARPORT
|
depends on PARPORT
|
||||||
@ -480,7 +317,6 @@ endif # PARPORT_PANEL
|
|||||||
config PANEL_CHANGE_MESSAGE
|
config PANEL_CHANGE_MESSAGE
|
||||||
bool "Change LCD initialization message ?"
|
bool "Change LCD initialization message ?"
|
||||||
depends on CHARLCD
|
depends on CHARLCD
|
||||||
default "n"
|
|
||||||
help
|
help
|
||||||
This allows you to replace the boot message indicating the kernel version
|
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
|
and the driver version with a custom message. This is useful on appliances
|
||||||
@ -529,8 +365,184 @@ choice
|
|||||||
|
|
||||||
endchoice
|
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
|
endif # AUXDISPLAY
|
||||||
|
|
||||||
|
#
|
||||||
|
# Deprecated options
|
||||||
|
#
|
||||||
config PANEL
|
config PANEL
|
||||||
tristate "Parallel port LCD/Keypad Panel support (OLD OPTION)"
|
tristate "Parallel port LCD/Keypad Panel support (OLD OPTION)"
|
||||||
depends on PARPORT
|
depends on PARPORT
|
||||||
|
@ -3,16 +3,16 @@
|
|||||||
# Makefile for the kernel auxiliary displays device drivers.
|
# 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_CHARLCD) += charlcd.o
|
||||||
obj-$(CONFIG_HD44780_COMMON) += hd44780_common.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_HD44780) += hd44780.o
|
||||||
obj-$(CONFIG_HT16K33) += ht16k33.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_LCD2S) += lcd2s.o
|
||||||
obj-$(CONFIG_LINEDISP) += line-display.o
|
obj-$(CONFIG_LINEDISP) += line-display.o
|
||||||
obj-$(CONFIG_MAX6959) += max6959.o
|
obj-$(CONFIG_MAX6959) += max6959.o
|
||||||
|
obj-$(CONFIG_PARPORT_PANEL) += panel.o
|
||||||
obj-$(CONFIG_SEG_LED_GPIO) += seg-led-gpio.o
|
obj-$(CONFIG_SEG_LED_GPIO) += seg-led-gpio.o
|
||||||
|
Loading…
Reference in New Issue
Block a user