Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3d96a48a authored by Max Filippov's avatar Max Filippov Committed by Sasha Levin
Browse files

xtensa: xtfpga: fix hardware lockup caused by LCD driver



[ Upstream commit 4949009eb8d40a441dcddcd96e101e77d31cf1b2 ]

LCD driver is always built for the XTFPGA platform, but its base address
is not configurable, and is wrong for ML605/KC705. Its initialization
locks up KC705 board hardware.

Make the whole driver optional, and its base address and bus width
configurable. Implement 4-bit bus access method.

Cc: stable@vger.kernel.org
Signed-off-by: default avatarMax Filippov <jcmvbkbc@gmail.com>
Signed-off-by: default avatarSasha Levin <sasha.levin@oracle.com>
parent 5c849cf5
Loading
Loading
Loading
Loading
+30 −0
Original line number Diff line number Diff line
@@ -406,6 +406,36 @@ source "drivers/pcmcia/Kconfig"

source "drivers/pci/hotplug/Kconfig"

config XTFPGA_LCD
	bool "Enable XTFPGA LCD driver"
	depends on XTENSA_PLATFORM_XTFPGA
	default n
	help
	  There's a 2x16 LCD on most of XTFPGA boards, kernel may output
	  progress messages there during bootup/shutdown. It may be useful
	  during board bringup.

	  If unsure, say N.

config XTFPGA_LCD_BASE_ADDR
	hex "XTFPGA LCD base address"
	depends on XTFPGA_LCD
	default "0x0d0c0000"
	help
	  Base address of the LCD controller inside KIO region.
	  Different boards from XTFPGA family have LCD controller at different
	  addresses. Please consult prototyping user guide for your board for
	  the correct address. Wrong address here may lead to hardware lockup.

config XTFPGA_LCD_8BIT_ACCESS
	bool "Use 8-bit access to XTFPGA LCD"
	depends on XTFPGA_LCD
	default n
	help
	  LCD may be connected with 4- or 8-bit interface, 8-bit access may
	  only be used with 8-bit interface. Please consult prototyping user
	  guide for your board for the correct interface width.

config XTFPGA_LCD
	bool "Enable XTFPGA LCD driver"
	depends on XTENSA_PLATFORM_XTFPGA