linux/include/drm
Jani Nikula 76fa998acd drm/dp: start a DPCD based DP sink/branch device quirk database
Face the fact, there are Display Port sink and branch devices out there
in the wild that don't follow the Display Port specifications, or they
have bugs, or just otherwise require special treatment. Start a common
quirk database the drivers can query based on the DP device
identification. At least for now, we leave the workarounds for the
drivers to implement as they see fit.

For starters, add a branch device that can't handle full 24-bit main
link Mdiv and Ndiv main link attributes properly. Naturally, the
workaround of reducing main link attributes for all devices ended up in
regressions for other devices. So here we are.

v2: Rebase on DRM DP desc read helpers

v3: Fix the OUI memcmp blunder (Clint)

Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Cc: Clint Taylor <clinton.a.taylor@intel.com>
Cc: Adam Jackson <ajax@redhat.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Tested-by: Clinton Taylor <clinton.a.taylor@intel.com>
Reviewed-by: Clinton Taylor <clinton.a.taylor@intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> # v2
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/91ec198dd95258dbf3bee2f6be739e0da73b4fdd.1495105635.git.jani.nikula@intel.com
2017-05-29 13:43:26 +03:00
..
bridge drm: bridge: dw-hdmi: Move HPD handling to PHY operations 2017-04-04 17:48:21 +02:00
i2c drm/i2c: tda998x: Register ASoC hdmi-codec and add audio DT binding 2016-09-07 13:10:10 +01:00
tinydrm drm/tinydrm: Fix drm_driver.fops.owner 2017-03-27 08:41:35 +02:00
ttm Linux 4.11-rc6 2017-04-11 07:40:42 +10:00
ati_pcigart.h drm: Move legacy buffer structures to <drm/drm_legacy.h> 2014-09-12 15:28:12 +02:00
drmP.h drm: Consolidate and document sysfs support 2017-04-04 20:47:54 +02:00
drm_agpsupport.h drm: Give drm_agp_clear drm_legacy_ prefix 2016-04-27 08:41:34 +02:00
drm_atomic.h drm/atomic: Unify conflicting encoder handling. 2017-04-06 17:00:27 -04:00
drm_atomic_helper.h drm: Add acquire ctx to ->gamma_set hook 2017-04-06 10:21:55 +02:00
drm_auth.h drm: Move drm_lock_data out of drmP.h 2017-03-09 16:18:02 +01:00
drm_blend.h drm: RIP mode_config->rotation_property 2016-10-22 10:42:11 +02:00
drm_bridge.h drm/bridge: Use recommened kerneldoc for struct member refs 2017-01-02 09:17:26 +01:00
drm_cache.h drm: Move drm_clflush prototypes to drm_cache header file 2017-01-10 11:17:01 +01:00
drm_color_mgmt.h drm/color: un-inline drm_color_lut_extract() 2017-01-31 15:31:58 +02:00
drm_connector.h Merge tag 'drm-misc-next-2017-04-07' of git://anongit.freedesktop.org/git/drm-misc into drm-next 2017-04-11 07:41:10 +10:00
drm_crtc.h drm: Add acquire ctx to ->gamma_set hook 2017-04-06 10:21:55 +02:00
drm_crtc_helper.h drm/atomic: Acquire connection_mutex lock in drm_helper_probe_single_connector_modes, v4. 2017-04-06 21:29:23 +02:00
drm_debugfs.h drm/debugfs: Add kerneldoc 2017-03-24 09:36:06 +01:00
drm_debugfs_crc.h drm: Add API for capturing frame CRCs 2016-10-17 16:44:34 +02:00
drm_displayid.h drm/edid: add displayid detailed 1 timings to the modelist. (v1.1) 2016-05-23 11:35:31 +10:00
drm_dp_dual_mode_helper.h drm: Fix LSPCON kernel-doc 2016-10-19 18:20:40 +03:00
drm_dp_helper.h drm/dp: start a DPCD based DP sink/branch device quirk database 2017-05-29 13:43:26 +03:00
drm_dp_mst_helper.h drm/dp: Split drm_dp_mst_allocate_vcpi 2017-03-22 21:47:44 +01:00
drm_drv.h drm: drop extern from function decls 2017-03-24 09:36:06 +01:00
drm_edid.h drm/edid: detect SCDC support in HF-VSDB 2017-03-21 10:15:56 +02:00
drm_encoder.h drm/doc: Fix typos for early_unregister doc 2017-01-26 10:49:09 +01:00
drm_encoder_slave.h drm: Don't include <drm/drm_encoder.h> in <drm/drm_crtc.h> 2016-12-18 16:29:29 +05:30
drm_fb_cma_helper.h drm: Rely on mode_config data for fb_helper initialization 2017-02-02 19:12:00 +01:00
drm_fb_helper.h drm/fb-helper: implement ioctl FBIO_WAITFORVSYNC 2017-03-02 08:12:15 +01:00
drm_file.h drm/doc: Document drm_file.[hc] 2017-03-14 14:38:33 +01:00
drm_fixed.h drm: Add drm_fixp_from_fraction and drm_fixp2int_ceil 2016-02-05 15:23:48 +10:00
drm_flip_work.h drm/kms-helpers: Use recommened kerneldoc for struct member refs 2017-01-25 16:18:57 +01:00
drm_fourcc.h drm: Add mode_config .get_format_info() hook 2017-03-22 19:45:00 +02:00
drm_framebuffer.h Pointer for Markus's image conversion work. 2017-03-14 15:07:33 +01:00
drm_gem.h drm/gem: Add DEFINE_DRM_GEM_FOPS 2017-03-14 14:38:34 +01:00
drm_gem_cma_helper.h drm: Create DEFINE_DRM_GEM_CMA_FOPS and roll it out to drivers 2017-03-14 14:38:34 +01:00
drm_global.h drm: drop extern from function decls 2017-03-24 09:36:06 +01:00
drm_hashtab.h drm: drop extern from function decls 2017-03-24 09:36:06 +01:00
drm_ioctl.h drm: document drm_ioctl.[hc] 2017-04-04 20:47:54 +02:00
drm_irq.h drm: unexport function drm_vblank_no_hw_counter() 2017-02-07 21:45:02 +01:00
drm_legacy.h drm: document drm_auth.c 2016-06-21 22:10:55 +02:00
drm_mem_util.h mm, vmalloc: use __GFP_HIGHMEM implicitly 2017-05-08 17:15:13 -07:00
drm_mipi_dsi.h drm/dsi: Implement DCS set/get display brightness 2016-08-24 13:34:00 +02:00
drm_mm.h Pointer for Markus's image conversion work. 2017-03-14 15:07:33 +01:00
drm_mode_config.h drm: Document kms locking a bit better 2017-03-29 08:34:28 +02:00
drm_mode_object.h drm: Introduce drm_mode_object_{get,put}() 2017-02-28 16:14:55 +01:00
drm_modes.h drm: s/drm_crtc_get_hv_timings/drm_mode_get_hv_timings/ 2017-01-26 10:46:28 +01:00
drm_modeset_helper.h drm: Pass 'dev' to drm_helper_mode_fill_fb_struct() 2016-12-15 14:03:30 +02:00
drm_modeset_helper_vtables.h drm/atomic: Add connector atomic_check function, v2. 2017-04-06 17:00:27 -04:00
drm_modeset_lock.h drm: Remove drm_modeset_legacy_acquire_ctx and crtc->acquire_ctx 2017-04-05 09:26:45 +02:00
drm_of.h drm: of: introduce drm_of_find_panel_or_bridge 2017-04-06 17:00:27 -04:00
drm_os_linux.h sched/headers: Prepare to move signal wakeup & sigpending methods from <linux/sched.h> into <linux/sched/signal.h> 2017-03-02 08:42:32 +01:00
drm_panel.h drm: make of_drm_find_panel also depend on CONFIG_DRM_PANEL 2017-04-06 17:00:27 -04:00
drm_pci.h drm: drop extern from function decls 2017-03-24 09:36:06 +01:00
drm_pciids.h drm/radeon: add new OLAND pci id 2015-08-12 12:24:05 -04:00
drm_plane.h drm: Add acquire ctx parameter to ->plane_disable 2017-03-29 09:14:58 +02:00
drm_plane_helper.h drm: Add acquire ctx parameter to ->plane_disable 2017-03-29 09:14:58 +02:00
drm_prime.h drm: drop extern from function decls 2017-03-24 09:36:06 +01:00
drm_print.h drm: drm_printer: add __printf validation 2017-02-26 21:43:08 +01:00
drm_property.h drm: Introduce drm_property_blob_{get,put}() 2017-02-28 16:16:46 +01:00
drm_rect.h drm: Add "prefix" parameter to drm_rect_debug_print() 2015-11-24 11:47:46 +01:00
drm_scdc_helper.h drm/scdc: declare drm_scdc_get_scrambling_status 2017-03-23 14:53:54 +02:00
drm_simple_kms_helper.h drm: Clarify the role of plane_state argument to drm_simple update(). 2017-03-30 12:02:00 -07:00
drm_sysfs.h drm: Consolidate and document sysfs support 2017-04-04 20:47:54 +02:00
drm_vma_manager.h drm: Extract drm_prime.h 2017-03-09 16:18:02 +01:00
gma_drm.h drm/gma500: Remove unused ioctls 2014-03-17 20:11:57 +01:00
i915_component.h drm/i915/dp: DP audio API changes for MST 2016-09-22 09:01:55 -07:00
i915_drm.h drm: avoid "possible bad bitmask?" warning 2016-08-09 22:18:26 +02:00
i915_pciids.h drm/i915: Add i810/i815 pci-ids for completeness 2017-03-17 17:09:06 +00:00
intel-gtt.h drm/i915: Use fixed-sized types for stolen 2017-01-06 16:02:09 +00:00
intel_lpe_audio.h drm/i915: Pass platform device to LPE audio notifier 2017-02-01 16:22:28 +01:00