[U-Boot] [PATCH 0/8] sunxi: video: Add support for HDMI output on A64/H3/H5

Jernej Skrabec jernej.skrabec at siol.net
Wed Mar 8 23:34:36 UTC 2017


This series implements support for HDMI output. This is done using
DM video framework and sharing the HDMI controller code with RK3288.

First and second patch fix audio clock issue and remove unneeded CSC
initialization in RK3288 HDMI driver. I think audio initialization is
also not really needed, but I left it as it is for now.

Third patch splits out RK3288 HDMI code in a way that it is appropriate
for sharing with Allwinner SoCs.

Fourth patch splits out TCON code which is completely reusable on
all Allwinner SoCs.

Fifth patch adds all necessary clocks which are needed for Display
Engine 2, TCON and HDMI.

Finally, sixth patch implement actual DE2 and HDMI driver and
seventh enable HDMI on all boards which actually have it.

Code was tested on OrangePi 2 & OrangePi Plus 2E (both H3),
OrangePi PC 2 (H5) and Pine64 (A64). However, it was only compile
tested for A10, A20 and RK3288 targets because I don't have them.

This series was developed on u-boot-sunxi repository with additional
patch: https://patchwork.ozlabs.org/patch/735617/

Last patch here is included only for testing HDMI output on A64 due
to missing power regulator support (AXP803). Another option is to
use ATF which powers on HDMI. Such ATF can be found on Andre
Przywara's github.

Best regards,
Jernej Skrabec


Icenowy Zheng (1):
  [DO NOT MERGE] sunxi: power: add AXP803 support

Jernej Skrabec (7):
  rockchip: video: Fix HDMI audio clocks
  rockchip: video: Remove CSC initialization (HDMI)
  rockchip: video: Split out HDMI controller code
  sunxi: video: Split out TCON code
  sunxi: Add clock support for DE2/HDMI/TCON on newer SoCs
  sunxi: video: Add A64/H3/H5 HDMI driver
  sunxi: Enable A64/H3/H5 video driver in defconfigs

 arch/arm/include/asm/arch-rockchip/hdmi_rk3288.h | 456 -------------
 arch/arm/include/asm/arch-sunxi/clock_sun6i.h    |  54 ++
 arch/arm/include/asm/arch-sunxi/cpu_sun4i.h      |   8 +
 arch/arm/include/asm/arch-sunxi/display.h        | 103 ---
 arch/arm/include/asm/arch-sunxi/display2.h       | 124 ++++
 arch/arm/include/asm/arch-sunxi/lcdc.h           | 128 ++++
 arch/arm/mach-sunxi/Makefile                     |   3 +
 arch/arm/mach-sunxi/clock_sun6i.c                |  40 +-
 arch/arm/mach-sunxi/pmic_bus.c                   |   6 +-
 arch/arm/mach-sunxi/rsb.c                        |   2 +-
 board/sunxi/Kconfig                              |  10 +
 board/sunxi/board.c                              |  31 +-
 configs/orangepi_2_defconfig                     |   1 +
 configs/orangepi_lite_defconfig                  |   1 +
 configs/orangepi_one_defconfig                   |   1 +
 configs/orangepi_pc2_defconfig                   |   1 +
 configs/orangepi_pc_defconfig                    |   1 +
 configs/orangepi_pc_plus_defconfig               |   1 +
 configs/orangepi_plus2e_defconfig                |   1 +
 configs/orangepi_plus_defconfig                  |   1 +
 configs/pine64_plus_defconfig                    |   1 +
 drivers/power/Kconfig                            |  87 ++-
 drivers/power/Makefile                           |   1 +
 drivers/power/axp803.c                           | 256 ++++++++
 drivers/power/axp818.c                           |   2 +-
 drivers/video/Makefile                           |   2 +-
 drivers/video/dw_hdmi.c                          | 764 ++++++++++++++++++++++
 drivers/video/rockchip/Makefile                  |   2 +-
 drivers/video/rockchip/rk_hdmi.c                 | 796 +----------------------
 drivers/video/rockchip/rk_vop.c                  |   1 -
 drivers/video/sunxi/Makefile                     |   9 +
 drivers/video/sunxi/lcdc.c                       | 209 ++++++
 drivers/video/sunxi/sunxi_de2.c                  | 258 ++++++++
 drivers/video/{ => sunxi}/sunxi_display.c        | 224 ++-----
 drivers/video/sunxi/sunxi_dw_hdmi.c              | 389 +++++++++++
 include/axp803.h                                 |  73 +++
 include/axp_pmic.h                               |   3 +
 include/configs/sun50i.h                         |   2 +
 include/configs/sun8i.h                          |   4 +
 include/configs/sunxi-common.h                   |   5 +
 include/dw_hdmi.h                                | 486 ++++++++++++++
 scripts/config_whitelist.txt                     |   1 +
 42 files changed, 2984 insertions(+), 1564 deletions(-)
 delete mode 100644 arch/arm/include/asm/arch-rockchip/hdmi_rk3288.h
 create mode 100644 arch/arm/include/asm/arch-sunxi/display2.h
 create mode 100644 arch/arm/include/asm/arch-sunxi/lcdc.h
 create mode 100644 drivers/power/axp803.c
 create mode 100644 drivers/video/dw_hdmi.c
 create mode 100644 drivers/video/sunxi/Makefile
 create mode 100644 drivers/video/sunxi/lcdc.c
 create mode 100644 drivers/video/sunxi/sunxi_de2.c
 rename drivers/video/{ => sunxi}/sunxi_display.c (86%)
 create mode 100644 drivers/video/sunxi/sunxi_dw_hdmi.c
 create mode 100644 include/axp803.h
 create mode 100644 include/dw_hdmi.h

-- 
2.12.0



More information about the U-Boot mailing list