linux/drivers/gpu/drm
Jun Lei 43c7887313 drm/amd/display: implement support for DID2.0 dsc passthrough
[Why]
Some panels contain active converters (e.g. DP to MIPI) which only support
restricted DSC configurations.  DID2.0 adds support for such displays to
explicitly define per timing BPP restrictions on DSC.  Ignoring these
restrictions leads to blackscreen.

[How]
Add parsing in DID2.0 parser to get this bpp info.
Add support in DSC module to constraint target bpp based
on this info.

Signed-off-by: Jun Lei <jun.lei@amd.com>
Reviewed-by: Wenjing Liu <Wenjing.Liu@amd.com>
Acked-by: Anson Jacob <Anson.Jacob@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2021-02-02 12:10:48 -05:00
..
amd drm/amd/display: implement support for DID2.0 dsc passthrough 2021-02-02 12:10:48 -05:00
arc drm: Constify drm_driver in drivers that don't modify it 2021-01-05 07:20:36 +02:00
arm drm-misc-next for v5.12: 2021-01-07 10:46:32 +01:00
armada drm: automatic legacy gamma support 2020-12-15 15:46:03 +02:00
aspeed drm/<drivers>: Constify struct drm_driver 2020-11-06 10:31:26 +01:00
ast drm/ast: Remove references to struct drm_device.pdev 2021-01-06 15:38:30 +01:00
atmel-hlcdc drm: automatic legacy gamma support 2020-12-15 15:46:03 +02:00
bochs drm/bochs: Remove references to struct drm_device.pdev 2021-01-06 15:42:55 +01:00
bridge - Add default modes for connectors in unknown state 2021-01-07 13:02:57 +01:00
etnaviv Merge drm/drm-next into drm-misc-next 2020-12-15 11:05:43 +01:00
exynos drm for 5.11-rc1 2020-12-14 11:07:56 -08:00
fsl-dcu drm/<drivers>: Constify struct drm_driver 2020-11-06 10:31:26 +01:00
gma500 drm/gma500/mdfld_intel_display: Demote three kernel-doc formatting abuses 2021-01-18 15:51:51 +01:00
hisilicon drm/hisilicon/hibmc: Remove hibmc_ttm.c 2021-01-15 10:06:00 +01:00
i2c
i810 drm/i810: make i810_flush_queue() return void 2020-09-11 10:54:17 +02:00
i915 Merge tag 'drm-intel-gt-next-2021-01-14' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2021-01-15 15:03:36 +10:00
imx drm/imx: dw_hdmi-imx: depend on OF to fix randconfig compile tests on x86_64 2021-01-07 11:54:21 +01:00
ingenic drm: automatic legacy gamma support 2020-12-15 15:46:03 +02:00
kmb - Add default modes for connectors in unknown state 2021-01-07 13:02:57 +01:00
lib
lima UAPI Changes: 2020-12-18 12:38:28 -08:00
mcde drm-misc-next for 5.11: 2020-12-15 10:21:48 +01:00
mediatek drm-misc-next for v5.12: 2021-01-07 10:46:32 +01:00
meson drm/meson: dw-hdmi: Enable the iahb clock early enough 2020-11-20 16:41:10 +01:00
mga drm/mga/mga_ioc32: Fix some formatting issues in 'mga_compat_ioctl's header 2021-01-18 15:41:12 +01:00
mgag200 drm/mgag200: Remove references to struct drm_device.pdev 2021-01-06 15:43:13 +01:00
msm drm-misc-next for v5.12: 2021-01-07 10:46:32 +01:00
mxsfb Short summary of fixes pull (less than what git shortlog provides): 2020-12-15 17:25:55 +01:00
nouveau drm/nouveau: Remove references to struct drm_device.pdev 2021-01-13 09:04:04 +01:00
omapdrm drm/omap: Delete useless kfree code 2020-12-15 17:19:54 +02:00
panel drm/panel: panel-simple: add bus-format and connector-type to Innolux n116bge 2021-01-18 13:12:20 +01:00
panfrost drm/panfrost: Use delayed timer as default in devfreq profile 2021-01-13 15:38:27 +00:00
pl111 drm/cma-helper: Implement mmap as GEM CMA object functions 2020-11-30 13:38:27 +01:00
qxl Merge drm/drm-next into drm-misc-next 2021-01-07 14:11:28 +01:00
r128 drm/r128/r128_ioc32: Fix formatting issues in 'r128_compat_ioctl()'s header 2021-01-18 15:41:04 +01:00
radeon drm-misc-next for v5.12: 2021-01-20 10:29:40 +01:00
rcar-du - Add default modes for connectors in unknown state 2021-01-07 13:02:57 +01:00
rockchip drm: automatic legacy gamma support 2020-12-15 15:46:03 +02:00
savage drm/savage/savage_bci: Remove set but never used 'aper_rsrc' and 'fb_rsrc' 2020-11-12 20:31:01 +01:00
scheduler drm/sched: Cancel and flush all outstanding jobs before finish. 2021-01-19 10:22:35 +01:00
selftests drm/selftests/test-drm_dp_mst_helper: Move 'sideband_msg_req_encode_decode' onto the heap 2020-11-17 20:08:29 +01:00
shmobile drm/<drivers>: Constify struct drm_driver 2020-11-06 10:31:26 +01:00
sis
sti drm: sti: Remove unnecessary drm_plane_cleanup() wrapper 2021-01-05 07:20:21 +02:00
stm drm: automatic legacy gamma support 2020-12-15 15:46:03 +02:00
sun4i drm/sun4i: tcon: fix inverted DCLK polarity 2021-01-14 12:37:28 +01:00
tdfx drm: Constify drm_driver in drivers that don't modify it 2021-01-05 07:20:36 +02:00
tegra drm for 5.11-rc1 2020-12-14 11:07:56 -08:00
tidss drm/tidss: use devm_platform_ioremap_resource_byname 2020-11-10 14:34:16 +02:00
tilcdc drm/<drivers>: Constify struct drm_driver 2020-11-06 10:31:26 +01:00
tiny drm/cirrus: Remove references to struct drm_device.pdev 2021-01-06 15:43:10 +01:00
ttm Merge drm/drm-next into drm-misc-next 2021-01-07 14:11:28 +01:00
tve200 drm/tve200: remove unused including <linux/version.h> 2020-12-30 11:25:05 +01:00
udl drm/shmem-helper: Removed drm_gem_shmem_create_object_cached() 2020-11-24 09:10:33 +01:00
v3d drm/v3d: Don't clear MMU control bits on exception 2021-01-06 18:38:57 +01:00
vboxvideo drm/vboxvideo: Remove references to struct drm_device.pdev 2021-01-06 15:44:04 +01:00
vc4 drm/vc4: Initialize vc4_drm_driver with CMA helper defaults 2021-01-15 10:39:05 +01:00
vgem drm/prime: split array import functions v4 2020-11-30 15:00:45 +01:00
via via/via_irq: use __func__ to replace string function name 2020-11-27 16:14:02 +01:00
virtio drm/virtio: fix prime export for vram objects 2021-01-11 08:49:48 +01:00
vkms drm/vkms: Fix missing kmalloc allocation failure check 2021-01-15 17:45:07 -03:00
vmwgfx drm/vmwgfx: Always evict vram _before_ disabling it 2021-01-18 14:15:20 +01:00
xen drm/prime: split array import functions v4 2020-11-30 15:00:45 +01:00
xlnx drm/<drivers>: Constify struct drm_driver 2020-11-06 10:31:26 +01:00
zte drm: zte: Remove unnecessary drm_plane_cleanup() wrapper 2021-01-05 07:20:24 +02:00
drm_agpsupport.c drm: Upcast struct drm_device.dev to struct pci_device; replace pdev 2021-01-19 09:06:38 +01:00
drm_atomic_helper.c drm: automatic legacy gamma support 2020-12-15 15:46:03 +02:00
drm_atomic_state_helper.c drm: fix some kernel-doc markups 2020-11-16 20:48:20 +01:00
drm_atomic_uapi.c drm: fix oops in drm_atomic_set_crtc_for_connector 2020-11-16 09:56:55 +01:00
drm_atomic.c Merge branch 'akpm' (patches from Andrew) 2020-12-15 12:53:37 -08:00
drm_auth.c
drm_blend.c drm/doc: introduce new section for standard plane properties 2020-12-17 16:56:40 +01:00
drm_bridge_connector.c gpu/drm: delete same check in if condition 2020-11-02 14:04:53 +01:00
drm_bridge.c
drm_bufs.c drm: Upcast struct drm_device.dev to struct pci_device; replace pdev 2021-01-19 09:06:38 +01:00
drm_cache.c drm: Include <linux/mem_encrypt.h> in drm_cache.c 2021-01-14 09:42:31 +01:00
drm_client_modeset.c
drm_client.c drm/client: Depend on GEM object kmap ref-counting 2020-11-24 09:27:54 +01:00
drm_color_mgmt.c drm: add legacy support for using degamma for gamma 2020-12-15 15:46:03 +02:00
drm_connector.c drm: fix some kernel-doc markups 2020-11-16 20:48:20 +01:00
drm_context.c
drm_crtc_helper_internal.h
drm_crtc_helper.c
drm_crtc_internal.h drm: Introduce plane and CRTC scaling filter properties 2020-10-21 12:19:54 +03:00
drm_crtc.c drm/imx: fixes and drm managed resources 2021-01-07 11:24:50 +01:00
drm_damage_helper.c
drm_debugfs_crc.c drm/crc-debugfs: Fix memleak in crc_control_write 2020-09-01 09:45:44 +02:00
drm_debugfs.c
drm_dma.c
drm_dp_aux_dev.c drm/dp_aux_dev: check aux_dev before use in drm_dp_aux_dev_get_by_minor() 2020-10-15 13:58:54 -04:00
drm_dp_cec.c
drm_dp_dual_mode_helper.c
drm_dp_helper.c drm/drm_dp_helper: Fix spelling issue and add missing description for 'enable_frl_ready_hpd' 2021-01-18 15:49:57 +01:00
drm_dp_mst_topology_internal.h
drm_dp_mst_topology.c drm: distinguish return value of drm_dp_check_and_send_link_address 2021-01-12 15:44:07 +01:00
drm_drv.c drm: Unamp the entire device address space on device unplug 2021-01-19 10:22:14 +01:00
drm_dsc.c drm/dsc: add helper for calculating rc buffer size from DPCD 2020-12-10 10:49:47 +02:00
drm_dumb_buffers.c drm: Don't export the drm_gem_dumb_destroy() function 2021-01-05 07:20:25 +02:00
drm_edid_load.c
drm_edid.c drm: Upcast struct drm_device.dev to struct pci_device; replace pdev 2021-01-19 09:06:38 +01:00
drm_encoder_slave.c
drm_encoder.c drm: add drmm_encoder_alloc() 2021-01-04 12:59:33 +01:00
drm_fb_cma_helper.c
drm_fb_helper.c drm/fb-helper: Add a FIXME that generic_setup is very confusing 2020-12-22 12:17:37 +01:00
drm_file.c drm: Move struct drm_device.hose to legacy section 2021-01-13 14:22:37 +01:00
drm_flip_work.c
drm_format_helper.c
drm_fourcc.c drm/fourcc: Add AXBXGXRX106106106106 format 2020-10-20 20:51:42 +01:00
drm_framebuffer.c drm: fix some kernel-doc markups 2020-11-16 20:48:20 +01:00
drm_gem_cma_helper.c drm/cma-helper: Implement mmap as GEM CMA object functions 2020-11-30 13:38:27 +01:00
drm_gem_framebuffer_helper.c
drm_gem_shmem_helper.c drm/shmem-helper: Removed drm_gem_shmem_create_object_cached() 2020-11-24 09:10:33 +01:00
drm_gem_ttm_helper.c drm/ttm: Add vmap/vunmap to TTM and TTM GEM helpers 2020-11-09 09:17:36 +01:00
drm_gem_vram_helper.c drm/vram-helper: Fix use of top-down placement 2020-11-20 05:20:48 +10:00
drm_gem.c drm: Set vm_ops to GEM object's values during mmap 2021-01-18 10:37:26 +01:00
drm_hashtab.c
drm_hdcp.c
drm_internal.h drm: Don't export the drm_gem_dumb_destroy() function 2021-01-05 07:20:25 +02:00
drm_ioc32.c
drm_ioctl.c drm: Give irq_by_busid drm_legacy_ prefix 2020-10-21 18:05:11 +02:00
drm_irq.c drm: Upcast struct drm_device.dev to struct pci_device; replace pdev 2021-01-19 09:06:38 +01:00
drm_kms_helper_common.c
drm_lease.c
drm_legacy_misc.c
drm_legacy.h drm: Merge CONFIG_DRM_VM into CONFIG_DRM_LEGACY 2021-01-13 14:22:37 +01:00
drm_lock.c
drm_managed.c drm/dev: Remove drm_dev_init 2020-09-21 10:45:08 +02:00
drm_memory.c drm: Implement drm_need_swiotlb() in drm_cache.c 2021-01-13 14:22:29 +01:00
drm_mipi_dbi.c
drm_mipi_dsi.c
drm_mm.c
drm_mode_config.c drm-misc-next for v5.12: 2021-01-07 13:40:20 +01:00
drm_mode_object.c drm: fix some kernel-doc markups 2020-11-16 20:48:20 +01:00
drm_modes.c drm/modes: Switch to 64bit maths to avoid integer overflow 2021-01-14 19:37:53 +02:00
drm_modeset_helper.c
drm_modeset_lock.c
drm_of.c
drm_panel_orientation_quirks.c
drm_panel.c
drm_pci.c drm: Upcast struct drm_device.dev to struct pci_device; replace pdev 2021-01-19 09:06:38 +01:00
drm_plane_helper.c
drm_plane.c drm-misc-next for v5.12: 2021-01-07 13:40:20 +01:00
drm_prime.c drm: Set vm_ops to GEM object's values during mmap 2021-01-18 10:37:26 +01:00
drm_print.c
drm_probe_helper.c drm: Add default modes for connectors in unknown state 2021-01-05 07:19:50 +02:00
drm_property.c
drm_rect.c
drm_scatter.c
drm_scdc_helper.c drm: fix some kernel-doc markups 2020-11-16 20:48:20 +01:00
drm_self_refresh_helper.c
drm_simple_kms_helper.c drm/simple_kms_helper: add drmm_simple_encoder_alloc() 2021-01-04 12:59:33 +01:00
drm_syncobj.c
drm_sysfs.c
drm_trace_points.c
drm_trace.h
drm_vblank_work.c
drm_vblank.c drm/vblank: Fix typo in docs 2021-01-14 15:47:45 +01:00
drm_vm.c drm: Upcast struct drm_device.dev to struct pci_device; replace pdev 2021-01-19 09:06:38 +01:00
drm_vma_manager.c
drm_writeback.c
Kconfig drm: Merge CONFIG_DRM_VM into CONFIG_DRM_LEGACY 2021-01-13 14:22:37 +01:00
Makefile drm: Merge CONFIG_DRM_VM into CONFIG_DRM_LEGACY 2021-01-13 14:22:37 +01:00