u-boot/arch/arm
Dario Binacchi 96b109ba74 video: omap: add support for DM/DTS
Update the driver to support the device tree and the driver model.
Timings and panel parameters are now loaded from the device tree.

The DM code replaces the am335x_lcdpanel structure with
tilcdc_panel_info taken from the linux kernel, as well the management
of additional parameters not covered in the legacy code. In addition,
the am335x_lcdpanel structure contains parameters and operations that
were probably a requirement of the board for which this driver was
developed and which, however, were not developed in the linux kernel.
All this led to rewrite th DM controller initialization code, except
for the pixel clock setting that is executed in a function created in a
previous patch with code taken from the legacy am335xfb_init.

The patch has been tested on a custom board with u-boot 2018.11-rc2 and
the following device-tree configuration:

	panel {
		compatible = "ti,tilcdc,panel";
		pinctrl-names = "default";
		pinctrl-0 = <&lcd_enable_pins>;
		enable-gpios = <&gpio0 31 0>;
		backlight = <&backlight>;
		status = "okay";
		u-boot,dm-pre-reloc;
		panel-info {
			ac-bias           = <255>;
			ac-bias-intrpt    = <0>;
			dma-burst-sz      = <16>;
			bpp               = <16>;
			fdd               = <0x80>;
			sync-edge         = <0>;
			sync-ctrl         = <1>;
			raster-order      = <0>;
			fifo-th           = <0>;
		};
		display-timings {
			native-mode = <&timing0>;
			timing0: 800x480 {
				hactive         = <800>;
				vactive         = <480>;
				hback-porch     = <46>;
				hfront-porch    = <210>;
				hsync-len       = <20>;
				vback-porch     = <23>;
				vfront-porch    = <22>;
				vsync-len       = <10>;
				clock-frequency = <33000000>;
				hsync-active    = <0>;
				vsync-active    = <0>;
			};
		};
	};

Signed-off-by: Dario Binacchi <dariobin@libero.it>
Tested-by: Dario Binacchi <dariobin@libero.it>
2020-03-03 13:08:14 +05:30
..
cpu dm: arm64: ls1012a: add i2c DM support 2020-02-04 16:20:25 +05:30
dts arm: dts: k3-j721e: Add ESM PMIC support for tps659413 based board 2020-03-03 13:08:14 +05:30
include dma-mapping: move dma_map_(un)single() to <linux/dma-mapping.h> 2020-02-19 21:27:30 +08:00
lib arch: arm: Fix SZ_64K undeclared compilation error 2020-02-25 11:39:54 -05:00
mach-aspeed dm: core: Require users of devres to include the header 2020-02-05 19:33:46 -07:00
mach-at91 common: Move hang() to the same header as panic() 2020-01-24 23:06:49 +05:30
mach-bcm283x rpi4: Update memory map to accommodate scb devices 2020-01-29 18:30:33 +01:00
mach-bcmstb
mach-cortina board: presidio-asic: Add basic G3 engr. development board support 2020-02-07 16:16:01 -05:00
mach-davinci common: Move hang() to the same header as panic() 2020-01-24 23:06:49 +05:30
mach-exynos arm: exynos: Read default MMC device from XOM[7:5] pins 2020-01-28 09:54:05 +09:00
mach-highbank
mach-imx lib: elf: Move the generic elf loading/validating functions to lib 2020-03-03 13:08:14 +05:30
mach-integrator
mach-k3 armv7R: K3: Add support for jumping to firmware 2020-03-03 13:08:14 +05:30
mach-keystone common: Move hang() to the same header as panic() 2020-01-24 23:06:49 +05:30
mach-kirkwood common: Move reset_cpu() to the CPU header 2020-01-24 23:06:49 +05:30
mach-mediatek common: Move hang() to the same header as panic() 2020-01-24 23:06:49 +05:30
mach-meson dm: core: Require users of devres to include the header 2020-02-05 19:33:46 -07:00
mach-mvebu dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
mach-omap2 video: omap: add support for DM/DTS 2020-03-03 13:08:14 +05:30
mach-orion5x common: Move RAM-sizing functions to init.h 2020-01-24 23:06:49 +05:30
mach-owl
mach-qemu
mach-rmobile common: Move some cache and MMU functions out of common.h 2019-12-02 18:23:55 -05:00
mach-rockchip arch: arm: rockchip: order the rk3399 entries alphabetically 2020-02-20 09:18:14 +08:00
mach-s5pc1xx common: Move some cache and MMU functions out of common.h 2019-12-02 18:23:55 -05:00
mach-snapdragon
mach-socfpga sandbox conversion to SDL2 2020-02-11 10:58:41 -05:00
mach-sti
mach-stm32 mach-stm32: Fix MPU region size dedicated to SDRAM for STM32F4 2019-06-28 09:45:27 +02:00
mach-stm32mp stm32mp1: support of STM32MP15x Rev.Z 2020-02-13 17:31:08 +01:00
mach-sunxi sunxi: Automate loading from 128KB MMC offset 2020-01-26 19:10:16 +05:30
mach-tegra dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
mach-u8500 board: Add new Samsung "stemmy" board based on ST-Ericsson U8500 2020-01-22 17:47:57 -05:00
mach-uniphier ARM: uniphier: set gd->ram_base correctly 2020-02-01 01:14:32 +09:00
mach-versal common: Move get_tbclk() to time.h 2020-01-24 23:06:49 +05:30
mach-versatile
mach-zynq dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
mach-zynqmp common: Move get_tbclk() to time.h 2020-01-24 23:06:49 +05:30
mach-zynqmp-r5 common: Move reset_cpu() to the CPU header 2020-01-24 23:06:49 +05:30
thumb1/include/asm/proc-armv
config.mk
Kconfig board: presidio-asic: Add basic G3 engr. development board support 2020-02-07 16:16:01 -05:00
Kconfig.debug
Makefile arm: Add support for ST-Ericsson U8500 SoC 2020-01-22 17:47:57 -05:00