]> git.baikalelectronics.ru Git - kernel.git/commit
drm/tegra: dc: Support memory bandwidth management
authorDmitry Osipenko <digetx@gmail.com>
Tue, 1 Jun 2021 04:21:07 +0000 (07:21 +0300)
committerThierry Reding <treding@nvidia.com>
Fri, 13 Aug 2021 10:30:33 +0000 (12:30 +0200)
commit59960739bd98b34482d6546ae7619e89450e297b
treea6da54ad99589d0f23be32792103211c12a4ec20
parent5e86de33c5abcaf9f6fcc64894f21e5369431157
drm/tegra: dc: Support memory bandwidth management

Display controller (DC) performs isochronous memory transfers, and thus,
has a requirement for a minimum memory bandwidth that shall be fulfilled,
otherwise framebuffer data can't be fetched fast enough and this results
in a DC's data-FIFO underflow that follows by a visual corruption.

The Memory Controller drivers provide facility for memory bandwidth
management via interconnect API. Let's wire up the interconnect API
support to the DC driver in order to fix the distorted display output
on T30 Ouya, T124 TK1 and other Tegra devices.

Tested-by: Peter Geis <pgwipeout@gmail.com> # Ouya T30
Tested-by: Matt Merhar <mattmerhar@protonmail.com> # Ouya T30
Tested-by: Nicolas Chauvet <kwizart@gmail.com> # PAZ00 T20 and TK1 T124
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
[treding@nvidia.com: unbreak Tegra186+ display support]
Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/gpu/drm/tegra/Kconfig
drivers/gpu/drm/tegra/dc.c
drivers/gpu/drm/tegra/dc.h
drivers/gpu/drm/tegra/drm.c
drivers/gpu/drm/tegra/plane.c
drivers/gpu/drm/tegra/plane.h