linux-stable/drivers/gpu/drm/rockchip
Damian Kos d57b35f44f drm/rockchip: fix for mailbox read size
[ Upstream commit fa68d4f847 ]

Some of the functions (like cdn_dp_dpcd_read, cdn_dp_get_edid_block)
allow to read 64KiB, but the cdn_dp_mailbox_read_receive, that is
used by them, can read only up to 255 bytes at once. Normally, it's
not a big issue as DPCD or EDID reads won't (hopefully) exceed that
value.
The real issue here is the revocation list read during the HDCP
authentication process. (problematic use case:
https://chromium.googlesource.com/chromiumos/third_party/kernel/+/chromeos-4.4/drivers/gpu/drm/rockchip/cdn-dp-reg.c#1152)
The list can reach 127*5+4 bytes (num devs * 5 bytes per ID/Bksv +
4 bytes of an additional info).
In other words - CTSes with HDCP Repeater won't pass without this
fix. Oh, and the driver will most likely stop working (best case
scenario).

Signed-off-by: Damian Kos <dkos@cadence.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://patchwork.freedesktop.org/patch/msgid/1541518625-25984-1-git-send-email-dkos@cadence.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-02-12 19:47:00 +01:00
..
analogix_dp-rockchip.c drm/rockchip: psr: Sanitize semantics of allow/inhibit API 2018-04-24 08:34:52 +02:00
cdn-dp-core.c drm: drop _mode_ from drm_mode_connector_attach_encoder 2018-07-13 18:40:27 +02:00
cdn-dp-core.h
cdn-dp-reg.c drm/rockchip: fix for mailbox read size 2019-02-12 19:47:00 +01:00
cdn-dp-reg.h drm/rockchip: cdn-dp: Correct PHY register address 2017-03-13 15:59:26 -04:00
dw-mipi-dsi.c drm: drop _mode_ from drm_mode_connector_attach_encoder 2018-07-13 18:40:27 +02:00
dw_hdmi-rockchip.c drm/rockchip: dw_hdmi: Move HDMI vpll clock enable to bind() 2018-03-08 17:32:53 +01:00
inno_hdmi.c drm: drop _mode_ from drm_mode_connector_attach_encoder 2018-07-13 18:40:27 +02:00
inno_hdmi.h
Kconfig drm/rockchip: add CONFIG_OF dependency for lvds 2017-11-06 10:31:17 -05:00
Makefile main drm pull request for v4.15 2017-11-15 20:42:10 -08:00
rockchip_drm_drv.c Revert "drm/rockchip: Allow driver to be shutdown on reboot/kexec" 2018-12-19 19:19:53 +01:00
rockchip_drm_drv.h drm/rockchip: pre dither down when output bpc is 8bit 2018-04-24 08:34:47 +02:00
rockchip_drm_fb.c drm/rockchip: rockchip_drm_fb -> drm_framebuffer 2018-05-18 16:02:05 +01:00
rockchip_drm_fb.h drm/rockchip: rockchip_drm_fb -> drm_framebuffer 2018-05-18 16:02:05 +01:00
rockchip_drm_fbdev.c drm/rockchip: Replace dev_* with DRM_DEV_* 2017-09-18 09:50:44 +08:00
rockchip_drm_fbdev.h
rockchip_drm_gem.c drm/rockchip: fixup comment for gem_free_object_unlocked 2018-03-28 17:07:36 +02:00
rockchip_drm_gem.h drm/rockchip: support prime import sg table 2018-02-18 11:16:40 +01:00
rockchip_drm_psr.c drm/rockchip: psr: do not dereference encoder before it is null checked. 2019-01-13 09:51:11 +01:00
rockchip_drm_psr.h drm/rockchip: psr: Remove flush by CRTC 2018-04-24 08:34:54 +02:00
rockchip_drm_vop.c drm/rockchip: Substitute is_yuv_support() with format->is_yuv 2018-07-18 16:59:27 +01:00
rockchip_drm_vop.h drm/rockchip: vop: fixup linebuffer mode calc error 2018-06-27 14:07:40 +02:00
rockchip_lvds.c drm: drop _mode_ from drm_mode_connector_attach_encoder 2018-07-13 18:40:27 +02:00
rockchip_lvds.h drm/rockchip: Add support for Rockchip Soc LVDS 2017-09-08 14:57:26 +08:00
rockchip_vop_reg.c drm/rockchip: pre dither down when output bpc is 8bit 2018-04-24 08:34:47 +02:00
rockchip_vop_reg.h drm/rockchip: vop: add rk3126 vop support 2017-11-16 14:21:50 +08:00