OSDN Git Service

drm/msm/dp: Add DP compliance tests on Snapdragon Chipsets
authorKuogee Hsieh <khsieh@codeaurora.org>
Fri, 11 Sep 2020 20:36:42 +0000 (20:36 +0000)
committerRob Clark <robdclark@chromium.org>
Tue, 15 Sep 2020 17:54:34 +0000 (10:54 -0700)
commit8ede2ecc3e5ee327923f6e3cfe52761ce73607d1
tree2c36060e4f032d16e90e1480f790c359b06f5350
parent220b856a3d3742a22831cb6cd94e48133a58d30e
drm/msm/dp: Add DP compliance tests on Snapdragon Chipsets

add event thread to execute events serially from event queue. Also
timeout mode is supported  which allow an event be deferred to be
executed at later time. Both link and phy compliant tests had been
done successfully.

Changes in v2:
-- Fix potential deadlock by removing redundant connect_mutex
-- Check and enable link clock during modeset
-- Drop unused code and fix function prototypes.
-- set sink power to normal operation state (D0) before DPCD read

Changes in v3:
-- push idle pattern at main link before timing generator off
-- add timeout handles for both connect and disconnect

Changes in v4:
-- add ST_SUSPEND_PENDING to handles suspend/modeset test operations
-- clear dp phy aux interrupt status when ERR_DPPHY_AUX error
-- send segment addr during edid read
-- clear bpp depth before MISC register write

Changes in v5:
-- add ST_SUSPENDED to fix crash at resume

Changes in v6:
-- at msm_dp_display_enable() do not return until resume_done to avoid
   kms commit timeout

Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Rob Clark <robdclark@chromium.org>
19 files changed:
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
drivers/gpu/drm/msm/dp/dp_aux.c
drivers/gpu/drm/msm/dp/dp_catalog.c
drivers/gpu/drm/msm/dp/dp_ctrl.c
drivers/gpu/drm/msm/dp/dp_ctrl.h
drivers/gpu/drm/msm/dp/dp_display.c
drivers/gpu/drm/msm/dp/dp_display.h
drivers/gpu/drm/msm/dp/dp_drm.c
drivers/gpu/drm/msm/dp/dp_hpd.c
drivers/gpu/drm/msm/dp/dp_hpd.h
drivers/gpu/drm/msm/dp/dp_link.c
drivers/gpu/drm/msm/dp/dp_panel.c
drivers/gpu/drm/msm/dp/dp_panel.h
drivers/gpu/drm/msm/dp/dp_parser.c
drivers/gpu/drm/msm/dp/dp_parser.h
drivers/gpu/drm/msm/dp/dp_power.c
drivers/gpu/drm/msm/dp/dp_power.h
drivers/gpu/drm/msm/dp/dp_reg.h
drivers/gpu/drm/msm/msm_drv.h