Hi, On 12 December 2016 at 19:36, Jernej Skrabec <jernej.skra...@siol.net> wrote: > This patch series add support for HDMI output. Support for other, > newer, SoCs, which also uses DE2 and same or similar HDMI controller > and PHY can be easily added later (A83T/A64/H5/R40). Current driver > can also be easily extended with TV out support, just like video > driver for older Allwinner SoCs. > > While driver works, I would like to get few opinions first. > - From what I understand, drivers which supports DT are preferred. > Would it be better to rewrite this driver to support device tree?
Yes I think so, and in fact it should use driver model also. The rockchip driver provides a reasonable example of how to split the driver up as you suggest below. The VIDEO driver provides the top-level video interface, DISPLAY drivers provide display output for the video, and you have PANEL as well for receiving the display output. VIDCONSOLE works automatically to display text. I actually took a bit of a look at this a few weeks ago so am happy to help with review or discussions. > - TCON code is currently exactly the same as in driver for older > SoCs. Should I split it out into shared module? Also TV out code > seems to be similar, but I didn't manage to confirm that it works > as-is on H3. > - A80 SoC is mix of older display engine and newer HDMI controller, > so it doesn't really work with either of sunxi video drivers. Two > solutions I see here are either combine both driver into one massive > display driver or, much better, split everything by components > (TCON/DE/DE2/HDMI/TV) and instantiate compatible ones. I guess this > is not much different than adding support for DT in drivers. Note > that I don't have any A80 board, I'm just thinking ahead. > > Best regards, > Jernej Skrabec > > > Jernej Skrabec (3): > sunxi: Add clocks for DE2/HDMI/TCON > sunxi: video: Add video driver for H3 SoC > sunxi: Enable H3 video driver in defconfigs > > arch/arm/include/asm/arch-sunxi/clock_sun6i.h | 43 + > arch/arm/include/asm/arch-sunxi/cpu_sun4i.h | 8 + > arch/arm/include/asm/arch-sunxi/display2.h | 377 +++++++++ > arch/arm/mach-sunxi/clock_sun6i.c | 28 + > board/sunxi/Kconfig | 4 +- > configs/orangepi_2_defconfig | 1 + > configs/orangepi_lite_defconfig | 1 + > configs/orangepi_one_defconfig | 1 + > configs/orangepi_pc_defconfig | 1 + > configs/orangepi_pc_plus_defconfig | 1 + > configs/orangepi_plus2e_defconfig | 1 + > configs/orangepi_plus_defconfig | 1 + > drivers/video/Makefile | 1 + > drivers/video/sunxi_display2.c | 1037 > +++++++++++++++++++++++++ > include/configs/sunxi-common.h | 17 +- > scripts/config_whitelist.txt | 1 + > 16 files changed, 1516 insertions(+), 7 deletions(-) > create mode 100644 arch/arm/include/asm/arch-sunxi/display2.h > create mode 100644 drivers/video/sunxi_display2.c > > -- > 2.10.2 > Regards, Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot