These patches add support for Display-Port driver on SnapDragon hardware. It adds DP driver and DP PLL driver files along with the needed device-tree bindings. The block diagram of DP driver is shown below: +-------------+ |DRM FRAMEWORK| +------+------+ | +----v----+ | DP DRM | +----+----+ | +----v----+ +------------+| DP +----------++------+ + +---+| DISPLAY |+---+ | | | + +-+-----+-+ | | | | | | | | | | | | | | | | | | | | | | | | v v v v v v v +------+ +------+ +---+ +----+ +----+ +---+ +-----+ | DP | | DP | |DP | | DP | | DP | |DP | | DP | |PARSER| | HPD | |AUX| |LINK| |CTRL| |PHY| |POWER| +--+---+ +---+--+ +---+ +----+ +--+-+ +-+-+ +-----+ | | | +--v---+ +v-----v+ |DEVICE| | DP | | TREE | |CATALOG| +------+ +---+---+ | +---v----+ |CTRL/PHY| | HW | +--------+ These patches have dependency on clock driver changes mentioned below: https://patchwork.kernel.org/patch/11245895/ https://patchwork.kernel.org/project/linux-clk/list/?series=153657 Chandan Uddaraju (4): dt-bindings: msm/dp: add bindings of DP/DP-PLL driver for Snapdragon drm: add constant N value in helper file drm/msm/dp: add displayPort driver support drm/msm/dp: add support for DP PLL driver Jeykumar Sankaran (1): drm/msm/dpu: add display port support in DPU .../devicetree/bindings/display/msm/dp.txt | 252 +++ .../devicetree/bindings/display/msm/dpu.txt | 16 +- drivers/gpu/drm/i915/display/intel_display.c | 2 +- drivers/gpu/drm/msm/Kconfig | 22 + drivers/gpu/drm/msm/Makefile | 17 + drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 28 +- .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 8 + drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 65 +- drivers/gpu/drm/msm/dp/dp_aux.c | 549 +++++++ drivers/gpu/drm/msm/dp/dp_aux.h | 37 + drivers/gpu/drm/msm/dp/dp_catalog.c | 1118 +++++++++++++ drivers/gpu/drm/msm/dp/dp_catalog.h | 87 + drivers/gpu/drm/msm/dp/dp_ctrl.c | 1727 ++++++++++++++++++++ drivers/gpu/drm/msm/dp/dp_ctrl.h | 35 + drivers/gpu/drm/msm/dp/dp_display.c | 1025 ++++++++++++ drivers/gpu/drm/msm/dp/dp_display.h | 31 + drivers/gpu/drm/msm/dp/dp_drm.c | 176 ++ drivers/gpu/drm/msm/dp/dp_drm.h | 19 + drivers/gpu/drm/msm/dp/dp_hpd.c | 87 + drivers/gpu/drm/msm/dp/dp_hpd.h | 81 + drivers/gpu/drm/msm/dp/dp_link.c | 1246 ++++++++++++++ drivers/gpu/drm/msm/dp/dp_link.h | 140 ++ drivers/gpu/drm/msm/dp/dp_panel.c | 500 ++++++ drivers/gpu/drm/msm/dp/dp_panel.h | 95 ++ drivers/gpu/drm/msm/dp/dp_parser.c | 507 ++++++ drivers/gpu/drm/msm/dp/dp_parser.h | 228 +++ drivers/gpu/drm/msm/dp/dp_power.c | 563 +++++++ drivers/gpu/drm/msm/dp/dp_power.h | 51 + drivers/gpu/drm/msm/dp/dp_reg.h | 489 ++++++ drivers/gpu/drm/msm/dp/pll/dp_pll.c | 136 ++ drivers/gpu/drm/msm/dp/pll/dp_pll.h | 57 + drivers/gpu/drm/msm/dp/pll/dp_pll_10nm.c | 406 +++++ drivers/gpu/drm/msm/dp/pll/dp_pll_10nm.h | 86 + drivers/gpu/drm/msm/dp/pll/dp_pll_10nm_util.c | 524 ++++++ drivers/gpu/drm/msm/msm_drv.c | 2 + drivers/gpu/drm/msm/msm_drv.h | 53 +- include/drm/drm_dp_helper.h | 2 + 37 files changed, 10444 insertions(+), 23 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/msm/dp.txt create mode 100644 drivers/gpu/drm/msm/dp/dp_aux.c create mode 100644 drivers/gpu/drm/msm/dp/dp_aux.h create mode 100644 drivers/gpu/drm/msm/dp/dp_catalog.c create mode 100644 drivers/gpu/drm/msm/dp/dp_catalog.h create mode 100644 drivers/gpu/drm/msm/dp/dp_ctrl.c create mode 100644 drivers/gpu/drm/msm/dp/dp_ctrl.h create mode 100644 drivers/gpu/drm/msm/dp/dp_display.c create mode 100644 drivers/gpu/drm/msm/dp/dp_display.h create mode 100644 drivers/gpu/drm/msm/dp/dp_drm.c create mode 100644 drivers/gpu/drm/msm/dp/dp_drm.h create mode 100644 drivers/gpu/drm/msm/dp/dp_hpd.c create mode 100644 drivers/gpu/drm/msm/dp/dp_hpd.h create mode 100644 drivers/gpu/drm/msm/dp/dp_link.c create mode 100644 drivers/gpu/drm/msm/dp/dp_link.h create mode 100644 drivers/gpu/drm/msm/dp/dp_panel.c create mode 100644 drivers/gpu/drm/msm/dp/dp_panel.h create mode 100644 drivers/gpu/drm/msm/dp/dp_parser.c create mode 100644 drivers/gpu/drm/msm/dp/dp_parser.h create mode 100644 drivers/gpu/drm/msm/dp/dp_power.c create mode 100644 drivers/gpu/drm/msm/dp/dp_power.h create mode 100644 drivers/gpu/drm/msm/dp/dp_reg.h create mode 100644 drivers/gpu/drm/msm/dp/pll/dp_pll.c create mode 100644 drivers/gpu/drm/msm/dp/pll/dp_pll.h create mode 100644 drivers/gpu/drm/msm/dp/pll/dp_pll_10nm.c create mode 100644 drivers/gpu/drm/msm/dp/pll/dp_pll_10nm.h create mode 100644 drivers/gpu/drm/msm/dp/pll/dp_pll_10nm_util.c -- $(echo -e 'The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project')