Revision tags: v4.19.19, v4.19.18, v4.19.17 |
|
#
fcd70cd3 |
| 17-Jan-2019 |
Daniel Vetter <daniel.vetter@ffwll.ch> |
drm: Split out drm_probe_helper.h
Having the probe helper stuff (which pretty much everyone needs) in the drm_crtc_helper.h file (which atomic drivers should never need) is confusing. Split them out
drm: Split out drm_probe_helper.h
Having the probe helper stuff (which pretty much everyone needs) in the drm_crtc_helper.h file (which atomic drivers should never need) is confusing. Split them out.
To make sure I actually achieved the goal here I went through all drivers. And indeed, all atomic drivers are now free of drm_crtc_helper.h includes.
v2: Make it compile. There was so much compile fail on arm drivers that I figured I'll better not include any of the acks on v1.
v3: Massive rebase because i915 has lost a lot of drmP.h includes, but not all: Through drm_crtc_helper.h > drm_modeset_helper.h -> drmP.h there was still one, which this patch largely removes. Which means rolling out lots more includes all over.
This will also conflict with ongoing drmP.h cleanup by others I expect.
v3: Rebase on top of atomic bochs.
v4: Review from Laurent for bridge/rcar/omap/shmob/core bits: - (re)move some of the added includes, use the better include files in other places (all suggested from Laurent adopted unchanged). - sort alphabetically
v5: Actually try to sort them, and while at it, sort all the ones I touch.
v6: Rebase onto i915 changes.
v7: Rebase once more.
Acked-by: Harry Wentland <harry.wentland@amd.com> Acked-by: Sam Ravnborg <sam@ravnborg.org> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Jani Nikula <jani.nikula@linux.intel.com> Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Acked-by: Benjamin Gaignard <benjamin.gaignard@linaro.org> Acked-by: Jani Nikula <jani.nikula@intel.com> Acked-by: Neil Armstrong <narmstrong@baylibre.com> Acked-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com> Acked-by: CK Hu <ck.hu@mediatek.com> Acked-by: Alex Deucher <alexander.deucher@amd.com> Acked-by: Sam Ravnborg <sam@ravnborg.org> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Liviu Dudau <liviu.dudau@arm.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Cc: linux-arm-kernel@lists.infradead.org Cc: virtualization@lists.linux-foundation.org Cc: etnaviv@lists.freedesktop.org Cc: linux-samsung-soc@vger.kernel.org Cc: intel-gfx@lists.freedesktop.org Cc: linux-mediatek@lists.infradead.org Cc: linux-amlogic@lists.infradead.org Cc: linux-arm-msm@vger.kernel.org Cc: freedreno@lists.freedesktop.org Cc: nouveau@lists.freedesktop.org Cc: spice-devel@lists.freedesktop.org Cc: amd-gfx@lists.freedesktop.org Cc: linux-renesas-soc@vger.kernel.org Cc: linux-rockchip@lists.infradead.org Cc: linux-stm32@st-md-mailman.stormreply.com Cc: linux-tegra@vger.kernel.org Cc: xen-devel@lists.xen.org Link: https://patchwork.freedesktop.org/patch/msgid/20190117210334.13234-1-daniel.vetter@ffwll.ch
show more ...
|
Revision tags: v4.19.16, v4.19.15, v4.19.14, v4.19.13, v4.19.12, v4.19.11, v4.19.10, v4.19.9 |
|
#
f25d0a68 |
| 10-Dec-2018 |
Thierry Reding <treding@nvidia.com> |
drm/tegra: Refactor CEC support
Most of the CEC support code already lives in the "output" library code. Move registration and unregistration to the library code as well to make use of the same code
drm/tegra: Refactor CEC support
Most of the CEC support code already lives in the "output" library code. Move registration and unregistration to the library code as well to make use of the same code with HDMI on Tegra210 and later via the SOR.
Signed-off-by: Thierry Reding <treding@nvidia.com> Reviewed-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
Revision tags: v4.19.8, v4.19.7, v4.19.6, v4.19.5, v4.19.4, v4.18.20, v4.19.3, v4.18.19, v4.19.2, v4.18.18, v4.18.17, v4.19.1, v4.19, v4.18.16, v4.18.15, v4.18.14, v4.18.13, v4.18.12, v4.18.11, v4.18.10, v4.18.9, v4.18.7, v4.18.6, v4.18.5, v4.17.18, v4.18.4, v4.18.3, v4.17.17, v4.18.2, v4.17.16, v4.17.15, v4.18.1, v4.18, v4.17.14, v4.17.13, v4.17.12 |
|
#
53f1e062 |
| 31-Jul-2018 |
Souptick Joarder <jrdr.linux@gmail.com> |
drm/tegra: Convert drm_atomic_helper_suspend/resume()
convert drm_atomic_helper_suspend/resume() to use drm_mode_config_helper_suspend/resume().
With this conversion, tegra_drm_fb_suspend() and teg
drm/tegra: Convert drm_atomic_helper_suspend/resume()
convert drm_atomic_helper_suspend/resume() to use drm_mode_config_helper_suspend/resume().
With this conversion, tegra_drm_fb_suspend() and tegra_drm_fb_resume() will not be used anymore. Both of these functions can be removed.
Also, in tegra_drm struct's member state will not be used anymore. So this can be removed forever.
Fixed one sparse warning.
Signed-off-by: Souptick Joarder <jrdr.linux@gmail.com> Signed-off-by: Ajit Negi <ajitn.linux@gmail.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
Revision tags: v4.17.11, v4.17.10, v4.17.9, v4.17.8, v4.17.7, v4.17.6, v4.17.5, v4.17.4, v4.17.3, v4.17.2, v4.17.1, v4.17 |
|
#
f3b3cfcc |
| 16-May-2018 |
Thierry Reding <treding@nvidia.com> |
drm/tegra: Track client version
Userspace needs to know the version of the interface implemented by a client so it can create the proper command streams. Allow individual drivers to store this versi
drm/tegra: Track client version
Userspace needs to know the version of the interface implemented by a client so it can create the proper command streams. Allow individual drivers to store this version along with the client so that it can be returned to userspace upon opening a channel.
Acked-by: Dmitry Osipenko <digetx@gmail.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
Revision tags: v4.16 |
|
#
dbc33c7d |
| 30-Mar-2018 |
Daniel Stone <daniels@collabora.com> |
drm/tegra: tegra_fb -> drm_framebuffer
Since tegra_fb is now the same as drm_framebuffer, we can just replace the type completely.
Signed-off-by: Daniel Stone <daniels@collabora.com> Cc: Thierry Re
drm/tegra: tegra_fb -> drm_framebuffer
Since tegra_fb is now the same as drm_framebuffer, we can just replace the type completely.
Signed-off-by: Daniel Stone <daniels@collabora.com> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: linux-tegra@vger.kernel.org Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
#
0bc6af00 |
| 30-Mar-2018 |
Daniel Stone <daniels@collabora.com> |
drm/tegra: Move GEM BOs to drm_framebuffer
Since drm_framebuffer can now store GEM objects directly, place them there rather than in our own subclass. As this makes the framebuffer create_handle fun
drm/tegra: Move GEM BOs to drm_framebuffer
Since drm_framebuffer can now store GEM objects directly, place them there rather than in our own subclass. As this makes the framebuffer create_handle function the same as the GEM framebuffer helper, we can reuse that.
Signed-off-by: Daniel Stone <daniels@collabora.com> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: linux-tegra@vger.kernel.org Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
#
e1189921 |
| 30-Mar-2018 |
Daniel Stone <daniels@collabora.com> |
drm/tegra: Remove duplicate framebuffer num_planes
drm_framebuffer already stores num_planes for us.
Signed-off-by: Daniel Stone <daniels@collabora.com> Cc: Thierry Reding <thierry.reding@gmail.com
drm/tegra: Remove duplicate framebuffer num_planes
drm_framebuffer already stores num_planes for us.
Signed-off-by: Daniel Stone <daniels@collabora.com> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: linux-tegra@vger.kernel.org Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
#
0c407de5 |
| 04-May-2018 |
Thierry Reding <treding@nvidia.com> |
drm/tegra: Refactor IOMMU attach/detach
Attaching to and detaching from an IOMMU uses the same code sequence in every driver, so factor it out into separate helpers.
Reviewed-by: Dmitry Osipenko <d
drm/tegra: Refactor IOMMU attach/detach
Attaching to and detaching from an IOMMU uses the same code sequence in every driver, so factor it out into separate helpers.
Reviewed-by: Dmitry Osipenko <digetx@gmail.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
Revision tags: v4.15 |
|
#
0281c414 |
| 28-Nov-2017 |
Thierry Reding <treding@nvidia.com> |
drm/tegra: hub: Use private object for global state
Rather than subclass the global atomic state to store the hub display clock and rate, create a private object and store this data in its state.
S
drm/tegra: hub: Use private object for global state
Rather than subclass the global atomic state to store the hub display clock and rate, create a private object and store this data in its state.
Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
Revision tags: v4.13.16, v4.14 |
|
#
bc8828bd |
| 12-Oct-2017 |
Thierry Reding <treding@nvidia.com> |
drm/tegra: Use IOMMU groups
In order to support IOMMUs more generically and transparently handle the ARM SMMU on Tegra186, move to using groups instead of devices for domain attachment. An IOMMU gro
drm/tegra: Use IOMMU groups
In order to support IOMMUs more generically and transparently handle the ARM SMMU on Tegra186, move to using groups instead of devices for domain attachment. An IOMMU group is a set of devices that share the same IOMMU domain and is therefore a good match to represent what Tegra DRM needs.
Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
#
c57997bc |
| 12-Oct-2017 |
Thierry Reding <treding@nvidia.com> |
drm/tegra: sor: Add Tegra186 support
The SOR found on Tegra186 is very similar to the one found on Tegra210 and earlier. However, due to some changes in the display architecture, some programming se
drm/tegra: sor: Add Tegra186 support
The SOR found on Tegra186 is very similar to the one found on Tegra210 and earlier. However, due to some changes in the display architecture, some programming sequences have changed and some register have moved around.
Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
#
c4755fb9 |
| 13-Nov-2017 |
Thierry Reding <treding@nvidia.com> |
drm/tegra: Add Tegra186 display hub support
The display architecture has changed in several significant ways with the new Tegra186 SoC. Shared between all display controllers is a set of common reso
drm/tegra: Add Tegra186 display hub support
The display architecture has changed in several significant ways with the new Tegra186 SoC. Shared between all display controllers is a set of common resources referred to as the display hub. The hub generates accesses to memory and feeds them into various composition pipelines, each of which being a window that can be assigned to arbitrary heads.
Atomic state is subclassed in order to track the global bandwidth requirements and select and adjust the hub clocks appropriately. The plane code is shared to a large degree with earlier SoC generations, except where the programming differs.
Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
#
31b02cae |
| 12-Oct-2017 |
Thierry Reding <treding@nvidia.com> |
drm/tegra: Use atomic commit helpers
There's no reason not to use them, and they already get all the semantics right, so rip out all of the custom code and replace it by the helpers.
Signed-off-by:
drm/tegra: Use atomic commit helpers
There's no reason not to use them, and they already get all the semantics right, so rip out all of the custom code and replace it by the helpers.
Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
#
c94bedab |
| 05-Dec-2017 |
Noralf Trønnes <noralf@tronnes.org> |
drm/tegra: Use drm_fb_helper_lastclose() and _poll_changed()
This driver can use drm_fb_helper_lastclose() as its .lastclose callback. It can also use drm_fb_helper_output_poll_changed() as its .out
drm/tegra: Use drm_fb_helper_lastclose() and _poll_changed()
This driver can use drm_fb_helper_lastclose() as its .lastclose callback. It can also use drm_fb_helper_output_poll_changed() as its .output_poll_changed callback.
Cc: Thierry Reding <thierry.reding@gmail.com> Signed-off-by: Noralf Trønnes <noralf@tronnes.org> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Link: https://patchwork.freedesktop.org/patch/msgid/20171205182504.41923-12-noralf@tronnes.org
show more ...
|
Revision tags: v4.13.5 |
|
#
fb83be88 |
| 11-Sep-2017 |
Hans Verkuil <hans.verkuil@cisco.com> |
drm/tegra: hdmi: Add cec-notifier support
In order to support CEC the HDMI driver has to inform the CEC driver whenever the physical address changes. So when the EDID is read the CEC driver has to b
drm/tegra: hdmi: Add cec-notifier support
In order to support CEC the HDMI driver has to inform the CEC driver whenever the physical address changes. So when the EDID is read the CEC driver has to be informed and whenever the hotplug detect goes away.
This is done through the cec-notifier framework.
The link between the HDMI driver and the CEC driver is done through the hdmi-phandle property in the tegra-cec node in the device tree.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
Revision tags: v4.13 |
|
#
2d1c18fb |
| 30-Aug-2017 |
Thierry Reding <treding@nvidia.com> |
drm/tegra: dc: Move some declarations to dc.h
Move the DC related declarations in drm.h to dc.h where they belong.
Signed-off-by: Thierry Reding <treding@nvidia.com>
|
#
67e04d1a |
| 15-Aug-2017 |
Thierry Reding <treding@nvidia.com> |
drm/tegra: dc: Trace register accesses
Add tracepoint events for display controller register accesses.
Signed-off-by: Thierry Reding <treding@nvidia.com>
|
#
3be713be |
| 15-Aug-2017 |
Thierry Reding <treding@nvidia.com> |
drm/tegra: dc: Use unsigned int for register offsets
Register offsets are usually fairly small numbers, so an unsigned int is more than enough to represent them.
Signed-off-by: Thierry Reding <tred
drm/tegra: dc: Use unsigned int for register offsets
Register offsets are usually fairly small numbers, so an unsigned int is more than enough to represent them.
Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
Revision tags: v4.12 |
|
#
0f563a4b |
| 14-Jun-2017 |
Dmitry Osipenko <digetx@gmail.com> |
gpu: host1x: Forbid unrelated SETCLASS opcode in the firewall
Several channels could be made to write the same unit concurrently via the SETCLASS opcode, trusting userspace is a bad idea. It should
gpu: host1x: Forbid unrelated SETCLASS opcode in the firewall
Several channels could be made to write the same unit concurrently via the SETCLASS opcode, trusting userspace is a bad idea. It should be possible to drop the per-client channel reservation and add a per-unit locking by inserting MLOCK's to the command stream to re-allow the SETCLASS opcode, but it will be much more work. Let's forbid the unit-unrelated class changes for now.
Signed-off-by: Dmitry Osipenko <digetx@gmail.com> Reviewed-by: Erik Faye-Lund <kusmabite@gmail.com> Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
Revision tags: v4.10.17, v4.10.16, v4.10.15, v4.10.14, v4.10.13, v4.10.12, v4.10.11, v4.10.10, v4.10.9, v4.10.8, v4.10.7, v4.10.6, v4.10.5, v4.10.4, v4.10.3, v4.10.2, v4.10.1, v4.10 |
|
#
0ae797a8 |
| 14-Dec-2016 |
Arto Merilainen <amerilainen@nvidia.com> |
drm/tegra: Add VIC support
This patch adds support for Video Image Compositor engine which can be used for 2d operations.
Signed-off-by: Andrew Chew <achew@nvidia.com> Signed-off-by: Arto Merilaine
drm/tegra: Add VIC support
This patch adds support for Video Image Compositor engine which can be used for 2d operations.
Signed-off-by: Andrew Chew <achew@nvidia.com> Signed-off-by: Arto Merilainen <amerilainen@nvidia.com> Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
#
ad926015 |
| 14-Dec-2016 |
Mikko Perttunen <mperttunen@nvidia.com> |
drm/tegra: Add Tegra DRM allocation API
Add a new IO virtual memory allocation API to allow clients to allocate non-GEM memory in the Tegra DRM IOMMU domain. This is required e.g. for loading client
drm/tegra: Add Tegra DRM allocation API
Add a new IO virtual memory allocation API to allow clients to allocate non-GEM memory in the Tegra DRM IOMMU domain. This is required e.g. for loading client firmware when clients are attached to the IOMMU domain.
The allocator allocates contiguous physical pages that are then mapped contiguously to the IOMMU domain using the iova_domain library provided by the kernel. Contiguous physical pages are used so that the same allocator works also when IOMMU support is disabled and therefore devices access physical memory directly.
Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
#
bdd2f9cd |
| 09-Mar-2017 |
Thierry Reding <treding@nvidia.com> |
drm/tegra: Don't leak kernel pointer to userspace
Each open file descriptor can have any number of contexts associated with it. To differentiate between these contexts a unique ID is required and ba
drm/tegra: Don't leak kernel pointer to userspace
Each open file descriptor can have any number of contexts associated with it. To differentiate between these contexts a unique ID is required and back when these userspace interfaces were introduced, in commit d43f81cbaf43 ("drm/tegra: Add gr2d device"), the pointer to the context structure was deemed adequate. However, this leaks information about kernel internal memory to userspace, which can potentially be exploited.
Switch the context parameter to be allocated from an IDR, which has the added benefit of providing an easy way to look up a context from its ID.
Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
#
347ad49d |
| 09-Mar-2017 |
Thierry Reding <treding@nvidia.com> |
drm/tegra: Protect IOMMU operations by mutex
IOMMU support is currently not thread-safe, which can cause crashes, amongst other things, under certain workloads.
Signed-off-by: Thierry Reding <tredi
drm/tegra: Protect IOMMU operations by mutex
IOMMU support is currently not thread-safe, which can cause crashes, amongst other things, under certain workloads.
Signed-off-by: Thierry Reding <treding@nvidia.com>
show more ...
|
#
10437d9b |
| 07-Feb-2017 |
Shawn Guo <shawn.guo@linaro.org> |
drm: tegra: use vblank hooks in struct drm_crtc_funcs
The vblank hooks in struct drm_driver are deprecated and only meant for legacy drivers. For modern drivers with DRIVER_MODESET flag, the hooks
drm: tegra: use vblank hooks in struct drm_crtc_funcs
The vblank hooks in struct drm_driver are deprecated and only meant for legacy drivers. For modern drivers with DRIVER_MODESET flag, the hooks in struct drm_crtc_funcs should be used instead.
As the result, the wrapper functions tegra_drm_xxx get killed completely, and tegra_dc_xxx are filled into struct drm_crtc_funcs as vblank hooks directly.
Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Cc: Thierry Reding <thierry.reding@gmail.com> Acked-by: Thierry Reding <treding@nvidia.com> Link: http://patchwork.freedesktop.org/patch/msgid/1486458995-31018-21-git-send-email-shawnguo@kernel.org
show more ...
|
Revision tags: v4.9 |
|
#
9338203c |
| 28-Nov-2016 |
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
drm: Don't include <drm/drm_encoder.h> in <drm/drm_crtc.h>
<drm/drm_crtc.h> used to define most of the in-kernel KMS API. It has now been split into separate files for each object type, but still in
drm: Don't include <drm/drm_encoder.h> in <drm/drm_crtc.h>
<drm/drm_crtc.h> used to define most of the in-kernel KMS API. It has now been split into separate files for each object type, but still includes most other KMS headers to avoid breaking driver compilation.
As a step towards fixing that problem, remove the inclusion of <drm/drm_encoder.h> from <drm/drm_crtc.h> and include it instead where appropriate. Also remove the forward declarations of the drm_encoder and drm_encoder_helper_funcs structures from <drm/drm_crtc.h> as they're not needed in the header.
<drm/drm_encoder.h> now has to include <drm/drm_mode.h> and contain a forward declaration of struct drm_encoder in order to allow including it as the first header in a compilation unit.
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Sinclair Yeh <syeh@vmware.com> # For vmwgfx Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Archit Taneja <architt@codeaurora.org> Link: http://patchwork.freedesktop.org/patch/msgid/1481709550-29226-2-git-send-email-laurent.pinchart+renesas@ideasonboard.com
show more ...
|