20 Jul, 2020
2 commits
-
flags is unused since the driver was introduced in commit 45d59d704080
("drm: Add new driver for MXSFB controller").Signed-off-by: Uwe Kleine-König
Signed-off-by: Stefan Agner
Link: https://patchwork.freedesktop.org/patch/msgid/20200716174139.16602-1-u.kleine-koenig@pengutronix.de -
In contrast to other display controllers on imx like DCSS and ipuv3
lcdif/mxsfb does not support detiling e.g. vivante tiled layouts.
Since mesa might assume otherwise make it explicit that only
DRM_FORMAT_MOD_LINEAR is supported.Signed-off-by: Guido Günther
Reviewed-by: Lucas Stach
Signed-off-by: Stefan Agner
Link: https://patchwork.freedesktop.org/patch/msgid/26877532e272c12a74c33188e2a72abafc9a2e1c.1584973664.git.agx@sigxcpu.org
10 Jun, 2020
2 commits
-
DRM_GEM_CMA_DRIVER_OPS sets the functions in struct drm_driver
to their defaults. No functional changes are made.Signed-off-by: Thomas Zimmermann
Reviewed-by: Emil Velikov
Link: https://patchwork.freedesktop.org/patch/msgid/20200605073247.4057-29-tzimmermann@suse.de -
Create GEM objects with drm_gem_cma_create_object_default_funcs(), which
allocates the object and sets CMA's default object functions. Corresponding
callbacks in struct drm_driver are cleared. No functional changes are made.Driver and object-function instances use the same callback functions, with
the exception of vunmap. The implementation of vunmap is empty and left out
in CMA's default object functions.v3:
* convert to DRIVER_OPS macro in a separate patchSigned-off-by: Thomas Zimmermann
Reviewed-by: Emil Velikov
Link: https://patchwork.freedesktop.org/patch/msgid/20200605073247.4057-28-tzimmermann@suse.de
10 Dec, 2019
1 commit
-
To facilitate moving connector creation to display drivers,
decouple the drm_connector from drm_panel.This patch adds a connector argument to drm_panel_get_modes().
All users of drm_panel_get_modes() already had the connector
available, so updating users was trivial.With this patch drm_panel no longer keeps a reference to the drm_connector.
Signed-off-by: Sam Ravnborg
Reviewed-by: Laurent Pinchart
Reviewed-by: Linus Walleij
Acked-by: Jeffrey Hugo
Cc: Thierry Reding
Cc: Laurent Pinchart
Cc: Sam Ravnborg
Cc: Andrzej Hajda
Cc: Neil Armstrong
Cc: Jonas Karlman
Cc: Jernej Skrabec
Cc: Maarten Lankhorst
Cc: Maxime Ripard
Cc: David Airlie
Cc: Daniel Vetter
Cc: Inki Dae
Cc: Joonyoung Shim
Cc: Seung-Woo Kim
Cc: Kyungmin Park
Cc: Kukjin Kim
Cc: Krzysztof Kozlowski
Cc: Stefan Agner
Cc: Alison Wang
Cc: Philipp Zabel
Cc: Shawn Guo
Cc: Sascha Hauer
Cc: Pengutronix Kernel Team
Cc: Fabio Estevam
Cc: NXP Linux Team
Cc: CK Hu
Cc: Matthias Brugger
Cc: Marek Vasut
Cc: Tomi Valkeinen
Cc: Kieran Bingham
Cc: Sandy Huang
Cc: "Heiko Stübner"
Cc: Benjamin Gaignard
Cc: Vincent Abriou
Cc: Chen-Yu Tsai
Cc: Jonathan Hunter
Cc: Torsten Duwe
Cc: Vasily Khoruzhick
Cc: Icenowy Zheng
Cc: Sean Paul
Cc: Linus Walleij
Cc: Boris Brezillon
Cc: Hariprasad Kelam
Cc: Alexios Zavras
Cc: Brian Masney
Cc: Rob Clark
Cc: Thomas Gleixner
Cc: Allison Randal
Cc: Shayenne Moura
Cc: Abhinav Kumar
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-samsung-soc@vger.kernel.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rockchip@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
Link: https://patchwork.freedesktop.org/patch/msgid/20191207140353.23967-7-sam@ravnborg.org
15 Oct, 2019
2 commits
-
The bridge might have special requirmentes on the input bus. This
is e.g. used by the imx-nwl bridge.Signed-off-by: Guido Günther
Reviewed-by: Stefan Agner
Signed-off-by: Stefan Agner
Link: https://patchwork.freedesktop.org/patch/msgid/1567078215-31601-3-git-send-email-robert.chiras@nxp.com -
Currently, the MXSFB DRM driver only supports a panel. But, its output
display signal can also be redirected to another encoder, like a DSI
controller. In this case, that DSI controller may act like a drm_bridge.
In order support this use-case too, this patch adds support for drm_bridge
in mxsfb.Signed-off-by: Robert Chiras
Tested-by: Guido Günther
Signed-off-by: Stefan Agner
Link: https://patchwork.freedesktop.org/patch/msgid/1567078215-31601-2-git-send-email-robert.chiras@nxp.com
13 Aug, 2019
1 commit
-
Be more consistent with the naming of the other DMA-buf objects.
Signed-off-by: Christian König
Reviewed-by: Chris Wilson
Link: https://patchwork.freedesktop.org/patch/323401/
10 Aug, 2019
1 commit
-
Use the drm_panel_get_modes() function.
Signed-off-by: Sam Ravnborg
Cc: Marek Vasut
Acked-by: Stefan Agner
Reviewed-by: Emil Velikov
Cc: Shawn Guo
Cc: Sascha Hauer
Cc: Pengutronix Kernel Team
Cc: Fabio Estevam
Cc: NXP Linux Team
Cc: linux-arm-kernel@lists.infradead.org
Link: https://patchwork.freedesktop.org/patch/msgid/20190804201637.1240-8-sam@ravnborg.org
16 Jul, 2019
1 commit
-
Drop use of the deprecated drmP.h header file.
While touching the list of include files divided them
in blocks and sort them within each block.
Fixed fallout in the relevant files.Signed-off-by: Sam Ravnborg
Acked-by: Stefan Agner
Acked-by: Emil Velikov
Cc: Marek Vasut
Cc: David Airlie
Cc: Daniel Vetter
Cc: Shawn Guo
Cc: Sascha Hauer
Cc: Pengutronix Kernel Team
Cc: Fabio Estevam
Cc: NXP Linux Team
Cc: linux-arm-kernel@lists.infradead.org
Link: https://patchwork.freedesktop.org/patch/msgid/20190630061922.7254-6-sam@ravnborg.org
22 Jun, 2019
1 commit
-
They're the default.
Aside: Would be really nice to switch the others over to
drm_gem_object_funcs.Reviewed-by: Eric Anholt
Reviewed-by: Emil Velikov
Acked-by: Stefan Agner
Signed-off-by: Daniel Vetter
Cc: Marek Vasut
Cc: Stefan Agner
Cc: Shawn Guo
Cc: Sascha Hauer
Cc: Pengutronix Kernel Team
Cc: Fabio Estevam
Cc: NXP Linux Team
Cc: linux-arm-kernel@lists.infradead.org
Link: https://patchwork.freedesktop.org/patch/msgid/20190614203615.12639-23-daniel.vetter@ffwll.ch
21 Jun, 2019
1 commit
-
Split out to make the functional changes stick out more.
All places where DRIVER_PRIME was used have been removed in previous
patches already.v2: amdgpu gained DRIVER_SYNCOBJ_TIMELINE.
v3: amdgpu lost DRIVER_SYNCOBJ_TIMELINE.
v4: Don't add a space in i915_drv.c (Sam)
v5: Add note that previous patches removed all the DRIVER_PRIME users
already (Emil).v6: Fixupe ingenic (new driver) while applying.
Cc: Sam Ravnborg
Reviewed-by: Emil Velikov
Reviewed-by: Eric Anholt
Signed-off-by: Daniel Vetter
Cc: amd-gfx@lists.freedesktop.org
Cc: etnaviv@lists.freedesktop.org
Cc: freedreno@lists.freedesktop.org
Cc: intel-gfx@lists.freedesktop.org
Cc: lima@lists.freedesktop.org
Cc: linux-amlogic@lists.infradead.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-arm-msm@vger.kernel.org
Cc: linux-aspeed@lists.ozlabs.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rockchip@lists.infradead.org
Cc: linux-samsung-soc@vger.kernel.org
Cc: linux-stm32@st-md-mailman.stormreply.com
Cc: linux-tegra@vger.kernel.org
Cc: nouveau@lists.freedesktop.org
Cc: NXP Linux Team
Cc: spice-devel@lists.freedesktop.org
Cc: virtualization@lists.linux-foundation.org
Cc: VMware Graphics
Cc: xen-devel@lists.xenproject.org
Link: https://patchwork.freedesktop.org/patch/msgid/20190617153924.414-1-daniel.vetter@ffwll.ch
31 May, 2019
1 commit
-
Based on 3 normalized pattern(s):
this program is free software you can redistribute it and or modify
it under the terms of the gnu general public license as published by
the free software foundation either version 2 of the license or at
your option any later version this program is distributed in the
hope that it will be useful but without any warranty without even
the implied warranty of merchantability or fitness for a particular
purpose see the gnu general public license for more detailsthis program is free software you can redistribute it and or modify
it under the terms of the gnu general public license as published by
the free software foundation either version 2 of the license or at
your option any later version [author] [kishon] [vijay] [abraham]
[i] [kishon]@[ti] [com] this program is distributed in the hope that
it will be useful but without any warranty without even the implied
warranty of merchantability or fitness for a particular purpose see
the gnu general public license for more detailsthis program is free software you can redistribute it and or modify
it under the terms of the gnu general public license as published by
the free software foundation either version 2 of the license or at
your option any later version [author] [graeme] [gregory]
[gg]@[slimlogic] [co] [uk] [author] [kishon] [vijay] [abraham] [i]
[kishon]@[ti] [com] [based] [on] [twl6030]_[usb] [c] [author] [hema]
[hk] [hemahk]@[ti] [com] this program is distributed in the hope
that it will be useful but without any warranty without even the
implied warranty of merchantability or fitness for a particular
purpose see the gnu general public license for more detailsextracted by the scancode license scanner the SPDX license identifier
GPL-2.0-or-later
has been chosen to replace the boilerplate/reference in 1105 file(s).
Signed-off-by: Thomas Gleixner
Reviewed-by: Allison Randal
Reviewed-by: Richard Fontana
Reviewed-by: Kate Stewart
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190527070033.202006027@linutronix.de
Signed-off-by: Greg Kroah-Hartman
21 May, 2019
1 commit
-
Add SPDX license identifiers to all Make/Kconfig files which:
- Have no license information of any form
These files fall under the project license, GPL v2 only. The resulting SPDX
license identifier is:GPL-2.0-only
Signed-off-by: Thomas Gleixner
Signed-off-by: Greg Kroah-Hartman
18 Mar, 2019
1 commit
-
The DRM_BUS_FLAG_PIXDATA_(POS|NEG)EDGE and
DRM_BUS_FLAG_SYNC_(POS|NEG)EDGE flags are deprecated in favour of the
new DRM_BUS_FLAG_PIXDATA_(DRIVE|SAMPLE)_(POS|NEG)EDGE and
new DRM_BUS_FLAG_SYNC_(DRIVE|SAMPLE)_(POS|NEG)EDGE flags. Replace them
through the code.This effectively changes the value of the .sampling_edge bridge timings
field in the dumb-vga-dac driver. This is safe to do as no driver
consumes these values yet.Signed-off-by: Laurent Pinchart
Acked-by: Linus Walleij
Reviewed-by: Stefan Agner
Tested-by: Sebastian Reichel
Signed-off-by: Tomi Valkeinen
29 Jan, 2019
1 commit
-
If a non-legacy driver calls these it's valid to assume there is
interrupt support. The flag is really only needed for legacy drivers,
which control IRQ enabling/disabling through the DRM_IOCTL_CONTROL
legacy IOCTL.Also remove all the flag usage from non-legacy drivers.
v2: Review from Emil:
- improve commit message
- I forgot hibmc, fix thatCc: linux-arm-kernel@lists.infradead.org
Cc: intel-gfx@lists.freedesktop.org
Cc: linux-amlogic@lists.infradead.org
Cc: linux-arm-msm@vger.kernel.org
Cc: freedreno@lists.freedesktop.org
Cc: virtualization@lists.linux-foundation.org
Cc: spice-devel@lists.freedesktop.org
Cc: amd-gfx@lists.freedesktop.org
Cc: linux-renesas-soc@vger.kernel.org
Reviewed-by: Emil Velikov
Reviewed-by: Sam Ravnborg
Signed-off-by: Daniel Vetter
Link: https://patchwork.freedesktop.org/patch/msgid/20190129104248.26607-1-daniel.vetter@ffwll.ch
24 Jan, 2019
1 commit
-
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 alphabeticallyv5: 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
Acked-by: Sam Ravnborg
Cc: Sam Ravnborg
Cc: Jani Nikula
Cc: Laurent Pinchart
Acked-by: Rodrigo Vivi
Acked-by: Benjamin Gaignard
Acked-by: Jani Nikula
Acked-by: Neil Armstrong
Acked-by: Oleksandr Andrushchenko
Acked-by: CK Hu
Acked-by: Alex Deucher
Acked-by: Sam Ravnborg
Reviewed-by: Laurent Pinchart
Acked-by: Liviu Dudau
Signed-off-by: Daniel Vetter
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
14 Jan, 2019
1 commit
-
The CMA helper is already using the drm_fb_helper_generic_probe part of
the generic fbdev emulation. This patch makes full use of the generic
fbdev emulation by using its drm_client callbacks. This means that
drm_mode_config_funcs->output_poll_changed and drm_driver->lastclose are
now handled by the emulation code. Additionally fbdev unregister happens
automatically on drm_dev_unregister().The drm_fbdev_generic_setup() call is put after drm_dev_register() in the
driver. This is done to highlight the fact that fbdev emulation is an
internal client that makes use of the driver, it is not part of the
driver as such. If fbdev setup fails, an error is printed, but the driver
succeeds probing.Cc: Marek Vasut
Signed-off-by: Noralf Trønnes
Acked-by: Sam Ravnborg
Link: https://patchwork.freedesktop.org/patch/msgid/20181128212713.43500-3-noralf@tronnes.org
25 Nov, 2018
1 commit
-
This patch unifies the naming of DRM functions for reference counting as
requested on Documentation/gpu/todo.rstSigned-off-by: Fernando Ramos
Acked-by: Boris Brezillon
Acked-by: Alexey Brodkin
Acked-by: Stefan Agner
Reviewed-by: Linus Walleij
Signed-off-by: Linus Walleij
Link: https://patchwork.freedesktop.org/patch/msgid/20181115221634.22715-4-greenfoo@gluegarage.com
27 Sep, 2018
5 commits
-
The lcdif block is only powered on when display is active so plane
updates when not enabled are not valid. Writing to an unpowered IP block
is mostly ignored but can trigger bus errors on some chips.Prevent this situation by switching to drm_atomic_helper_commit_tail_rpm
and having the drm core ensure atomic_plane_update is only called while
the crtc is active. This avoids having to keep track of "enabled" bits
inside the mxsfb driver.This also requires handling the vblank event for disable from
mxsfb_pipe_disable.Signed-off-by: Leonard Crestez
Suggested-by: Stefan Agner
Reviewed-by: Stefan Agner
Reviewed-by: Sean Paul
Signed-off-by: Stefan Agner
Link: https://patchwork.freedesktop.org/patch/msgid/c19c0c00ed42e8e8f7965aa4821ac295abc5cd05.1537191359.git.leonard.crestez@nxp.com -
Since power to the lcdif block can be lost on suspend implement
PM_SLEEP_OPS using drm_mode_config_helper_suspend/resume to save/restore
the current mode.Signed-off-by: Leonard Crestez
Reviewed-by: Stefan Agner
Reviewed-by: Sean Paul
Signed-off-by: Stefan Agner
Link: https://patchwork.freedesktop.org/patch/msgid/cfa1a4083eefd112362e640deeb2e120584ac3f5.1537191359.git.leonard.crestez@nxp.com -
Adding lcdif nodes to a power domain currently results in
black/corrupted screens or hangs because power is not correctly enabled
when required.Ensure power is on when display is active by adding
pm_runtime_get/put_sync to mxsfb_pipe_enable/disable.Signed-off-by: Leonard Crestez
Reviewed-by: Stefan Agner
Reviewed-by: Sean Paul
Signed-off-by: Stefan Agner
Link: https://patchwork.freedesktop.org/patch/msgid/ee88148399c63494cda4129b05444b0ac331b7a7.1537191359.git.leonard.crestez@nxp.com -
LCDIF will repeatedly display data from CUR_BUF and set CUR_BUF to
NEXT_BUF when done. Since we are only ever writing to NEXT_BUF the
display will show an initial corrupt frame.Fix by writing the FB paddr to both CUR_BUF and NEXT_BUF when
activating the CRTC.Signed-off-by: Leonard Crestez
Tested-by: Philipp Zabel
Reviewed-by: Stefan Agner
Reviewed-by: Sean Paul
Signed-off-by: Stefan Agner
Link: https://patchwork.freedesktop.org/patch/msgid/7cdac9c064cc2b8a3d237934f186da98cefe6cb3.1537191359.git.leonard.crestez@nxp.com -
The main axi clk is disabled at the end of mxsfb_crtc_mode_set_nofb and
immediately reenabled in mxsfb_enable_controller.Avoid this by moving the handling of axi clk one level up to
mxsfb_crtc_enable. Do the same for mxsfb_crtc_disable for symmetry.This shouldn't have any functional effect.
Signed-off-by: Leonard Crestez
Reviewed-by: Stefan Agner
Reviewed-by: Sean Paul
Signed-off-by: Stefan Agner
Link: https://patchwork.freedesktop.org/patch/msgid/985c1f1cad250bd9ca154b3e4b3f913c310eeabd.1537191359.git.leonard.crestez@nxp.com
24 Apr, 2018
1 commit
-
Signed-off-by: Daniel Vetter
Cc: Marek Vasut
Reviewed-by: Eric Anholt
Link: https://patchwork.freedesktop.org/patch/msgid/20180405154449.23038-6-daniel.vetter@ffwll.ch
29 Mar, 2018
1 commit
-
tinydrm enable hook wants to play around with the new fb in
.atomic_enable(), thus we'll need access to the plane state.Performed with coccinelle:
@r1@
identifier F =~ ".*enable$";
identifier P, CS;
@@
F(
struct drm_simple_display_pipe *P
,struct drm_crtc_state *CS
+ ,struct drm_plane_state *plane_state
)
{
...
}@@
struct drm_simple_display_pipe *P;
expression E;
@@
{
+ struct drm_plane *plane;
...
+ plane = &P->plane;
P->funcs->enable(P
,E
+ ,plane->state
);
...
}@@
identifier P, CS;
@@
struct drm_simple_display_pipe_funcs {
...
void (*enable)(struct drm_simple_display_pipe *P
,struct drm_crtc_state *CS
+ ,struct drm_plane_state *plane_state
);
...
};v2: Pimp the commit message (David)
Cc: Marek Vasut
Cc: Eric Anholt
Cc: David Lechner
Cc: "Noralf Trønnes"
Cc: Linus Walleij
Signed-off-by: Ville Syrjälä
Link: https://patchwork.freedesktop.org/patch/msgid/20180322202738.25817-1-ville.syrjala@linux.intel.com
Reviewed-by: Noralf Trønnes
23 Feb, 2018
1 commit
-
Do not use deprecated drm_driver.{enable|disable)_vblank callbacks,
but use drm_simple_kms_helpe's pipe callbacks instead.Signed-off-by: Oleksandr Andrushchenko
Cc: Marek Vasut
Reviewed-by: Marek Vasut
Signed-off-by: Daniel Vetter
Link: https://patchwork.freedesktop.org/patch/msgid/1518425574-32671-3-git-send-email-andr2000@gmail.com
01 Oct, 2017
1 commit
-
drm_fb_cma_create() and drm_fb_cma_prepare_fb() are just wrappers now,
use drm_gem_fb_create() and drm_gem_fb_prepare_fb() directly.Cc: Marek Vasut
Signed-off-by: Noralf Trønnes
Reviewed-by: Eric Anholt
Link: https://patchwork.freedesktop.org/patch/msgid/1506255985-61113-6-git-send-email-noralf@tronnes.org
17 Aug, 2017
1 commit
-
This driver can use the drm_driver.dumb_destroy and
drm_driver.dumb_map_offset defaults, so no need to set them.Cc: Marek Vasut
Signed-off-by: Noralf Trønnes
Reviewed-by: Daniel Vetter
Link: https://patchwork.freedesktop.org/patch/msgid/1502034068-51384-4-git-send-email-noralf@tronnes.org
08 Aug, 2017
1 commit
-
It's dead code, the core handles all this directly now.
The only special case is nouveau and tda988x which used one function
for both legacy modeset code and -nv50 atomic world instead of 2
vtables. But amounts to exactly the same.v2: Rebase over the panel/brideg refactorings in stm/ltdc.
Signed-off-by: Daniel Vetter
Cc: Archit Taneja
Cc: Andrzej Hajda
Cc: Laurent Pinchart
Cc: Peter Senna Tschudin
Cc: Martin Donnelly
Cc: Martyn Welch
Cc: Daniel Vetter
Cc: Jani Nikula
Cc: Sean Paul
Cc: David Airlie
Cc: Inki Dae
Cc: Joonyoung Shim
Cc: Seung-Woo Kim
Cc: Kyungmin Park
Cc: Kukjin Kim
Cc: Krzysztof Kozlowski
Cc: Stefan Agner
Cc: Alison Wang
Cc: Russell King
Cc: Philipp Zabel
Cc: CK Hu
Cc: Matthias Brugger
Cc: Neil Armstrong
Cc: Carlo Caione
Cc: Kevin Hilman
Cc: Marek Vasut
Cc: Ben Skeggs
Cc: Tomi Valkeinen
Cc: Eric Anholt
Cc: Mark Yao
Cc: Heiko Stuebner
Cc: Benjamin Gaignard
Cc: Vincent Abriou
Cc: Yannick Fertre
Cc: Philippe Cornu
Cc: Maxime Ripard
Cc: Chen-Yu Tsai
Cc: Thierry Reding
Cc: Jonathan Hunter
Cc: Jyri Sarha
Cc: Gerd Hoffmann
Cc: Shawn Guo
Cc: John Stultz
Cc: Lars-Peter Clausen
Cc: Sergei Shtylyov
Cc: Jeffy Chen
Cc: Tomeu Vizoso
Cc: Yakir Yang
Cc: Marek Szyprowski
Cc: Jose Abreu
Cc: Romain Perier
Cc: Kieran Bingham
Cc: Xinliang Liu
Cc: Alexey Brodkin
Cc: Alex Deucher
Cc: Rongrong Zou
Cc: Rob Clark
Cc: Hai Li
Cc: "Noralf Trønnes"
Cc: linux-arm-kernel@lists.infradead.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: nouveau@lists.freedesktop.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rockchip@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
Cc: virtualization@lists.linux-foundation.org
Cc: zain wang
Cc: Baoyou Xie
Cc: Boris Brezillon
Reviewed-by: Maarten Lankhorst
Link: https://patchwork.freedesktop.org/patch/msgid/20170725080122.20548-8-daniel.vetter@ffwll.ch
Acked-by: Neil Armstrong
Reviewed-by: Neil Armstrong
Acked-by: Philipp Zabel
Acked-by: Archit Taneja
Tested-by: Philippe Cornu (on stm)
Reviewed-by: Laurent Pinchart
Acked-by: Shawn Guo
Acked-by: Shawn Guo
Acked-by: Noralf Trønnes
Acked-by: Vincent Abriou
02 Aug, 2017
1 commit
-
This is the plumbing for supporting fb modifiers on planes. Modifiers
have already been introduced to some extent, but this series will extend
this to allow querying modifiers per plane. Based on this, the client to
enable optimal modifications for framebuffers.This patch simply allows the DRM drivers to initialize their list of
supported modifiers upon initializing the plane.v2: A minor addition from Daniel
v3:
* Updated commit message
* s/INVALID/DRM_FORMAT_MOD_INVALID (Liviu)
* Remove some excess newlines (Liviu)
* Update comment for > 64 modifiers (Liviu)v4: Minor comment adjustments (Liviu)
v5: Some new platforms added due to rebase
v6: Add some missed plane inits (or maybe they're new - who knows at
this point) (Daniel)Signed-off-by: Ben Widawsky
Reviewed-by: Daniel Stone (v2)
Reviewed-by: Liviu Dudau
Signed-off-by: Daniel Stone
18 Jul, 2017
1 commit
-
CMA helpers are struct_mutex free, and so is the mxsfb itself. And
that's the only valid reason for using gem_free_object.Reviewed-by: Eric Anholt
Signed-off-by: Daniel Vetter
Cc: Marek Vasut
Link: https://patchwork.freedesktop.org/patch/msgid/20170717151045.4188-1-daniel.vetter@ffwll.ch
23 Jun, 2017
1 commit
-
Almost right but still racy, it's called before the interrupts are
uninstalled. So let's just drop it.Cc: Marek Vasut
Reviewed-by: Marek Vasut
Signed-off-by: Daniel Vetter
Link: http://patchwork.freedesktop.org/patch/msgid/20170621082850.13224-7-daniel.vetter@ffwll.ch
16 Jun, 2017
1 commit
-
According to the eLCDIF initialization steps listed in the MX6SX
Reference Manual the eLCDIF block reset is mandatory.Without performing the eLCDIF reset the display shows garbage content
when the kernel boots.In earlier tests this issue has not been observed because the bootloader
was previously showing a splash screen and the bootloader display driver
does properly implement the eLCDIF reset.Add the eLCDIF reset to the driver, so that it can operate correctly
independently of the bootloader.Tested on a imx6sx-sdb board.
Cc:
Signed-off-by: Fabio Estevam
Reviewed-by: Marek Vasut
Signed-off-by: Sean Paul
Link: http://patchwork.freedesktop.org/patch/msgid/1494007301-14535-1-git-send-email-fabio.estevam@nxp.com
07 Apr, 2017
1 commit
-
Similar to the previous commit, convert drivers open coding OF graph
parsing to use drm_of_find_panel_or_bridge instead.This changes some error messages to debug messages (in the graph core).
Graph connections are often "no connects" depending on the particular
board, so we want to avoid spurious messages. Plus the kernel is not a
DT validator.Signed-off-by: Rob Herring
Reviewed-by: Archit Taneja
Tested-by: Philipp Zabel
Acked-by: Maxime Ripard
[seanpaul dropped rockchip changes since they're now obsolete]
Signed-off-by: Sean Paul
23 Mar, 2017
1 commit
-
Linux 4.11-rc3 as requested by Daniel
14 Mar, 2017
1 commit
-
Less code ftw.
This converts all drivers except the tinydrm helper module. That one
needs more work, since it gets the THIS_MODULE reference from
tinydrm.ko instead of the actual driver module like it should.
Probably needs a similar trick like I used here with generating the
entire struct with a macro.Cc: Noralf Trønnes
Reviewed-by: Sean Paul
Reviewed-by: Liviu Dudau
Signed-off-by: Daniel Vetter
Link: http://patchwork.freedesktop.org/patch/msgid/20170308141257.12119-24-daniel.vetter@ffwll.ch
10 Mar, 2017
3 commits
-
Currently when the 'power-supply' regulator is passed via device tree
it does not actually work since drm_panel_prepare()/drm_panel_enable()
are never called.Quoting Thierry Reding: "It should really call drm_panel_prepare() and
drm_panel_enable() while switching on the display pipeline and
drm_panel_disable(), followed by drm_panel_unprepare() while switching
off the display pipeline."So do as suggested, so that the 'power-supply' regulator can be functional.
Reported-by: Breno Lima
Suggested-by: Thierry Reding
Signed-off-by: Fabio Estevam
Tested-by: Marek Vasut
Signed-off-by: Dave Airlie -
Currently the framebuffer content is displayed with incorrect offsets
in both the vertical and horizontal directions.The fbdev version of the driver does not show this problem. Breno Lima
dumped the eLCDIF controller registers on both the drm and fbdev drivers
and noticed that the VDCTRL3 register is configured incorrectly in the
drm driver.The fbdev driver calculates the vertical and horizontal wait counts
of the VDCTRL3 register by doing: back porch + sync length.Looking at the horizontal and vertical timing diagram from
include/drm/drm_modes.h this value corresponds to:crtc_[hv]total - crtc_[hv]sync_start
So fix the VDCTRL3 register setting accordingly so that the eLCDIF
controller can properly show the framebuffer content in the correct
position.Reported-by: Breno Lima
Signed-off-by: Fabio Estevam
Tested-by: Breno Lima
Tested-by: Marek Vasut
Signed-off-by: Dave Airlie -
The mxsfb driver will crash if the mxsfb DT node has a subnode,
but the content of the subnode is not of-graph binding with an
endpoint linking to panel. The crash was triggered by providing
old-style panel bindings to the mxsfb driver instead of the new
of-graph ones.The problem happens in mxsfb_create_output(), which is invoked
from mxsfb_load(). The mxsfb_create_output() iterates over all
mxsfb DT subnode endpoints and tries to bind a panel on each
endpoint. If there is any problem binding the panel, that is,
mxsfb->panel == NULL, this function will return an error code,
otherwise success 0 is returned.If the subnodes do not specify of-graph binding with an endpoint,
the iteration over endpoints in mxsfb_create_output() will have
zero cycles and the function will immediatelly return 0, but the
mxsfb->panel will remain NULL. This is propagated back into the
mxsfb_load(), which does not detect any problem and expects that
the mxsfb->panel is valid, thus calls mxsfb_panel_attach(). But
since mxsfb->panel == NULL, mxsfb_panel_attach() is called with
first argument NULL and this crashes the kernel.This patch fixes the problem by explicitly checking for valid
mxsfb->panel at the end of the iteration in mxsfb_create_output().Signed-off-by: Marek Vasut
Cc: Daniel Vetter
Cc: Dave Airlie
Cc: Stefan Agner
Cc: Breno Matheus Lima
Tested-by: Breno Lima
Signed-off-by: Dave Airlie