[Bug 109234] amdgpu random hangs with 5.0-rc1/4.21+

2019-01-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=109234 --- Comment #14 from bmil...@gmail.com --- Created attachment 143066 --> https://bugs.freedesktop.org/attachment.cgi?id=143066&action=edit dmesg kfd and amdgpu hangs attachment for last comment -- You are receiving this mail because: You are

[Bug 109234] amdgpu random hangs with 5.0-rc1/4.21+

2019-01-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=109234 --- Comment #13 from bmil...@gmail.com --- There are a few new dma fixes on torvalds tree, but I'm still triggering the bug. I got something similar now but slightly different while watching a real-time 60fps interpolated video that uses opencl a

nouveau-fixes 5.0

2019-01-10 Thread Ben Skeggs
The following changes since commit 8ff01abcccbb563fbf50b84a476bd9b22c42c0a3: drm/nouveau/ce/tu106: initial support (2018-12-11 15:38:01 +1000) are available in the Git repository at: git://github.com/skeggsb/linux linux-4.21 for you to fetch changes up to a5176a4cb85bb6213daadf691097cf411da

Re: [PATCH v2 0/6] drm: byteorder fixes

2019-01-10 Thread Ilia Mirkin
Hi Gerd, What happened with this series (and the next one)? Semi-relatedly, I wonder if it wouldn't be better to just dump the BIG_ENDIAN flag and just define the "host" format to be the right one for a consistent little-endian interpretation. Cheers, -ilia On Wed, Sep 5, 2018 at 2:04 AM Ge

[PATCH v4 10/16] drm/bochs: remove old bochs_crtc_* functions

2019-01-10 Thread Gerd Hoffmann
Remove the old, now unused crtc callbacks. Signed-off-by: Gerd Hoffmann Reviewed-by: Oleksandr Andrushchenko Acked-by: Daniel Vetter --- drivers/gpu/drm/bochs/bochs_kms.c | 81 --- 1 file changed, 81 deletions(-) diff --git a/drivers/gpu/drm/bochs/bochs_kms

[PATCH v4 15/16] drm/bochs: drop old fbdev emulation code

2019-01-10 Thread Gerd Hoffmann
Not needed any more, bochs uses the generic emulation now. Signed-off-by: Gerd Hoffmann Reviewed-by: Oleksandr Andrushchenko Acked-by: Daniel Vetter --- drivers/gpu/drm/bochs/bochs.h | 9 --- drivers/gpu/drm/bochs/bochs_fbdev.c | 129 2 files change

[PATCH v4 02/16] drm/bochs: split bochs_hw_setmode

2019-01-10 Thread Gerd Hoffmann
Create a separate bochs_hw_setformat function to configure the framebuffer format (actually just the byteorder). Signed-off-by: Gerd Hoffmann Reviewed-by: Oleksandr Andrushchenko Acked-by: Daniel Vetter --- drivers/gpu/drm/bochs/bochs.h | 5 +++-- drivers/gpu/drm/bochs/bochs_hw.c | 19 ++

[PATCH v4 16/16] drm/bochs: move remaining fb bits to kms

2019-01-10 Thread Gerd Hoffmann
bochs_fbdev.c is almost empty now. Move the remaining framebuffer bits over to bochs_kms.c. Pure code motion. No functional change. Signed-off-by: Gerd Hoffmann Reviewed-by: Oleksandr Andrushchenko Acked-by: Daniel Vetter --- drivers/gpu/drm/bochs/bochs_fbdev.c | 29 -

[PATCH v4 00/16] drm/bochs: cleanups, atomic modesetting, generic fbdev.

2019-01-10 Thread Gerd Hoffmann
This series adds support for atomic modesetting to the bochs driver. It also switches over to the generic fbdev implementation and does some cleanups. v4: - fix suspend/resume by using atomic helpers (Noralf). v3: - adjust pin/unpin fix & reorder patches a bit, to keep the series bisectable

[PATCH v4 03/16] drm/bochs: atomic: add atomic_flush+atomic_enable callbacks.

2019-01-10 Thread Gerd Hoffmann
Conversion to atomic modesetting, step one. Add atomic crtc helper callbacks. Signed-off-by: Gerd Hoffmann Acked-by: Daniel Vetter --- drivers/gpu/drm/bochs/bochs_kms.c | 25 + 1 file changed, 25 insertions(+) diff --git a/drivers/gpu/drm/bochs/bochs_kms.c b/drivers/gp

[PATCH v4 13/16] drm/bochs: add basic prime support

2019-01-10 Thread Gerd Hoffmann
Just enough to make the generic framebuffer emulation happy. Signed-off-by: Gerd Hoffmann Reviewed-by: Oleksandr Andrushchenko Acked-by: Daniel Vetter --- drivers/gpu/drm/bochs/bochs.h | 7 ++ drivers/gpu/drm/bochs/bochs_drv.c | 11 - drivers/gpu/drm/bochs/bochs_mm.c | 49 +++

[PATCH v4 01/16] drm/bochs: encoder cleanup

2019-01-10 Thread Gerd Hoffmann
Most unused callbacks can be NULL pointers these days. Drop a bunch of empty encoder callbacks. Signed-off-by: Gerd Hoffmann Reviewed-by: Oleksandr Andrushchenko Acked-by: Daniel Vetter --- drivers/gpu/drm/bochs/bochs_kms.c | 26 -- 1 file changed, 26 deletions(-) diff

[PATCH v4 07/16] drm/bochs: atomic: use atomic page_flip helper

2019-01-10 Thread Gerd Hoffmann
Conversion to atomic modesetting, step five. Use atomic page_flip helper for crtc. Signed-off-by: Gerd Hoffmann Reviewed-by: Oleksandr Andrushchenko Acked-by: Daniel Vetter --- drivers/gpu/drm/bochs/bochs_kms.c | 23 +-- 1 file changed, 1 insertion(+), 22 deletions(-) diff

[PATCH v4 04/16] drm/bochs: atomic: add mode_set_nofb callback.

2019-01-10 Thread Gerd Hoffmann
Conversion to atomic modesetting, step two. Add mode_set_nofb crtc helper callback. Signed-off-by: Gerd Hoffmann Reviewed-by: Oleksandr Andrushchenko Acked-by: Daniel Vetter --- drivers/gpu/drm/bochs/bochs_kms.c | 9 + 1 file changed, 9 insertions(+) diff --git a/drivers/gpu/drm/bochs

[PATCH v4 14/16] drm/bochs: switch to generic drm fbdev emulation

2019-01-10 Thread Gerd Hoffmann
Signed-off-by: Gerd Hoffmann Acked-by: Daniel Vetter --- drivers/gpu/drm/bochs/bochs_drv.c | 13 + 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/drivers/gpu/drm/bochs/bochs_drv.c b/drivers/gpu/drm/bochs/bochs_drv.c index a3f4e21078..cea42ac64d 100644 --- a/drivers/gp

[PATCH v4 05/16] drm/bochs: atomic: switch planes to atomic, wire up helpers.

2019-01-10 Thread Gerd Hoffmann
Conversion to atomic modesetting, step three. Wire up atomic helpers. Switch planes to atomic. We are late to the party, the transitional helpers are gone, so this can't be splitted into smaller steps any more. Signed-off-by: Gerd Hoffmann Reviewed-by: Oleksandr Andrushchenko Acked-by: Daniel

[PATCH v4 08/16] drm/bochs: atomic: use suspend/resume helpers

2019-01-10 Thread Gerd Hoffmann
Switch to atomic helpers: drm_mode_config_helper_suspend/resume(). Signed-off-by: Gerd Hoffmann --- drivers/gpu/drm/bochs/bochs_drv.c | 11 ++- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/drivers/gpu/drm/bochs/bochs_drv.c b/drivers/gpu/drm/bochs/bochs_drv.c index f3dd6

[PATCH v4 11/16] drm/bochs: drop unused gpu_addr arg from bochs_bo_pin()

2019-01-10 Thread Gerd Hoffmann
It's always NULL, so just remove it. Signed-off-by: Gerd Hoffmann Reviewed-by: Oleksandr Andrushchenko Acked-by: Daniel Vetter --- drivers/gpu/drm/bochs/bochs.h | 2 +- drivers/gpu/drm/bochs/bochs_fbdev.c | 2 +- drivers/gpu/drm/bochs/bochs_kms.c | 2 +- drivers/gpu/drm/bochs/bochs_

[PATCH v4 09/16] drm/bochs: atomic: set DRIVER_ATOMIC

2019-01-10 Thread Gerd Hoffmann
Conversion to atomic modesetting, final step. Set the DRIVER_ATOMIC flag. Signed-off-by: Gerd Hoffmann Reviewed-by: Oleksandr Andrushchenko Acked-by: Daniel Vetter --- drivers/gpu/drm/bochs/bochs_drv.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/bochs/bo

[PATCH v4 12/16] drm/bochs: move ttm_bo_(un)reserve calls into bochs_bo_{pin, unpin}

2019-01-10 Thread Gerd Hoffmann
Signed-off-by: Gerd Hoffmann Acked-by: Daniel Vetter --- drivers/gpu/drm/bochs/bochs_fbdev.c | 8 drivers/gpu/drm/bochs/bochs_kms.c | 14 +- drivers/gpu/drm/bochs/bochs_mm.c| 8 3 files changed, 9 insertions(+), 21 deletions(-) diff --git a/drivers/gpu/drm/

[PATCH v4 06/16] drm/bochs: atomic: use atomic set_config helper

2019-01-10 Thread Gerd Hoffmann
Conversion to atomic modesetting, step four. Use atomic set_config helper for crtc. Signed-off-by: Gerd Hoffmann Reviewed-by: Oleksandr Andrushchenko Acked-by: Daniel Vetter --- drivers/gpu/drm/bochs/bochs_kms.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/dr

[PATCH 3/3] drm/i915/icl: Enabling Y2xx and Y4xx (xx:10/12/16) formats for universal planes

2019-01-10 Thread swati2 . sharma
From: Swati Sharma Signed-off-by: Swati Sharma --- drivers/gpu/drm/i915/intel_display.c | 30 ++ drivers/gpu/drm/i915/intel_sprite.c | 61 ++-- 2 files changed, 89 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_display.c

[PATCH 2/3] drm/i915/icl: Add Y2xx and Y4xx (xx:10/12/16) plane control definitions

2019-01-10 Thread swati2 . sharma
From: Swati Sharma Added needed plane control flag definitions for Y2xx and Y4xx (10, 12 and 16 bits) Signed-off-by: Swati Sharma --- drivers/gpu/drm/i915/i915_reg.h | 6 ++ 1 file changed, 6 insertions(+) diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h inde

[PATCH 1/3] drm: Add Y2xx and Y4xx (xx:10/12/16) format definitions and fourcc

2019-01-10 Thread swati2 . sharma
From: Swati Sharma The following pixel formats are packed format that follows 4:2:2 chroma sampling. For memory represenation each component is allocated 16 bits each. Thus each pixel occupies 32bit. Y210: For each component, valid data occupies MSB 10 bits. LSB 6 bits are filled with

[PATCH 0/3] Enable Y2xx and Y4xx (xx:10/12/16 bits) packed formats for ICL

2019-01-10 Thread swati2 . sharma
From: Swati Sharma These patches enable packed format YUV422-Y210, Y212 and Y216 and YUV444-Y410, Y412, Y416 for 10, 12 and 16 bits for ICL+. IGT needs libraries for Pixman and Cairo to support more than 8bpc. Work going on from Maarten Lankhorst. Initial review for Y2xx done https://patchwork.

[Bug 109229] glLinkProgram locks up for ~30 seconds

2019-01-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=109229 --- Comment #6 from Fabian --- Hi Tim, sorry about the slow reply. I've added instructions on how to reproduce the problem here: https://github.com/godotengine/godot/issues/24783#issuecomment-453380560 Download build.zip and it has everything

[PATCH v2 26/49] drm/omap: Move DISPC timing checks to CRTC .mode_valid() operation

2019-01-10 Thread Laurent Pinchart
The DISPC timings checks relate to the CRTC, but they're performed in the encoder and connector .atomic_check() and .mode_valid() operations. Move them to the CRTC .mode_valid() operation. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reichel --- drivers/g

[PATCH v2 40/49] drm/bridge: ti-tfp410: Add support for the powerdown GPIO

2019-01-10 Thread Laurent Pinchart
The TFP410 has a powerdown pin that can be connected to a GPIO to control power saving. The DT bindings define a corresponding property, but the driver doesn't implement support for it. Fix that. Signed-off-by: Laurent Pinchart Reviewed-by: Tomi Valkeinen Reviewed-by: Jyri Sarha --- drivers/gp

[PATCH v2 29/49] drm/omap: Pass drm_display_mode to .check_timings() and .set_timings()

2019-01-10 Thread Laurent Pinchart
The omap_dss_device .check_timings() and .set_timings() operations operate on struct videomode, while the DRM API operates on struct drm_display_mode. This forces conversion from to videomode in the callers. While that's not a problem per se, it creates a difference with the drm_bridge API. Replac

[PATCH v2 38/49] dt-bindings: display: tfp410: Add bus parameters properties

2019-01-10 Thread Laurent Pinchart
The TFP410 supports configuration of several input bus parameters through either the I2C port or chip pins. In the latter case, we need to specify those parameters in DT. Two new properties are added, ti,deskew to specify the data de-skew configuration (as set through the DK[3:1] pins), and pclk-s

[PATCH v2 43/49] dt-bindings: display: Add OSD Displays OSD070T1718-19TS panel binding

2019-01-10 Thread Laurent Pinchart
The OSD Displays OSD070T1718-19TS is a 7" WVGA (800x480) 24bit RGB panel and is compatible with the simple-panel bindings. Signed-off-by: Laurent Pinchart --- .../display/panel/osddisplays,osd070t1718-19ts.txt | 7 +++ 1 file changed, 7 insertions(+) create mode 100644 Documentatio

[PATCH v2 23/49] drm/omap: panel-dsi-cm: Store source pointer internally

2019-01-10 Thread Laurent Pinchart
The source pointer will be removed to the omap_dss_device structure. Store it internally in the DSI panel driver data. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 55 ++- 1 file

[PATCH v2 24/49] drm/omap: Notify all devices in the pipeline of output disconnection

2019-01-10 Thread Laurent Pinchart
For HDMI pipelines, when the output gets disconnected the device handling CEC needs to be notified. Instead of guessing which device that would be (and sometimes getting it wrong), notify all devices in the pipeline. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebas

[PATCH v2 18/49] drm/omap: Add a dss device operation flag for .get_modes()

2019-01-10 Thread Laurent Pinchart
Instead of manually iterating over the dss devices in the pipeline to find the first one that implements the .get_modes() operation, add a new operation flag for .get_modes() and use the omap_connector_find_device() helper function to locate the right dss device. Signed-off-by: Laurent Pinchart R

[PATCH v2 42/49] dt-bindings: Add vendor prefix for OSD Displays

2019-01-10 Thread Laurent Pinchart
OSD Displays is a panel manufacturer. It has been acquired by New Vision Displays in 2015 but continues to operate under its own brand name. Signed-off-by: Laurent Pinchart --- Documentation/devicetree/bindings/vendor-prefixes.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation

[PATCH v2 32/49] drm/omap: Simplify OF lookup of DSS devices

2019-01-10 Thread Laurent Pinchart
Now that the direction of OF graph walk has been reversed, there's no need to lookup devices by port as we have no sink device connected through multiple sink ports. Simplify OF lookup of the DSS devices to look them up by node only. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel

[PATCH v2 45/49] drm/omap: Add support for drm_bridge

2019-01-10 Thread Laurent Pinchart
Hook up drm_bridge support in the omapdrm driver. Despite the recent extensive preparation work, this is a rather intrusive change, as the management of outputs needs to be adapted through the driver to handle both omap_dss_device and drm_bridge. Connector creation is skipped when using a drm_brid

[PATCH v2 35/49] drm: Clarify definition of the DRM_BUS_FLAG_(PIXDATA|SYNC)_* macros

2019-01-10 Thread Laurent Pinchart
From: Laurent Pinchart The DRM_BUS_FLAG_PIXDATA_POSEDGE and DRM_BUS_FLAG_PIXDATA_NEGEDGE macros and their DRM_BUS_FLAG_SYNC_* counterparts define on which pixel clock edge data and sync signals are driven. They are however used in some drivers to define on which pixel clock edge data and sync sig

[PATCH v2 44/49] drm/panel: simple: Add OSD070T1718-19TS panel support

2019-01-10 Thread Laurent Pinchart
Add support for the OSD070T1718-19TS 7" 800x480 panel from One Stop Displays to the panel-simple driver. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/panel/panel-simple.c | 29 1 file changed, 29 insertions(+) diff --git a/driv

[PATCH v2 33/49] drm/omap: Refactor initialization sequence

2019-01-10 Thread Laurent Pinchart
The omapdrm driver initialization procedure starts by connecting all available pipelines, gathering related information (such as output and display DSS devices, and DT aliases), sorting them by alias, and finally creates all the DRM/KMS objects. When using DRM bridges instead of DSS devices, we wi

[PATCH v2 12/49] drm/omap: Remove enable checks from display .enable() and .remove()

2019-01-10 Thread Laurent Pinchart
The displays (connectors, panels and encoders) bail out from their .enable() and .disable() handlers if the dss device is already enabled or disabled. Those safety checks are not needed when the functions are called through the omapdss_device_ops, as the .enable() and .disable() handlers are called

[PATCH v2 30/49] drm/omap: venc: Use drm_display_mode natively

2019-01-10 Thread Laurent Pinchart
Replace internal usage of struct videomode with struct drm_display_mode in order to avoid converting needlessly between the data structures. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reichel --- Changes since v1: - Set mode.crtc_* fields and mode name

[PATCH v2 27/49] drm/omap: venc: Simplify mode setting by caching configuration

2019-01-10 Thread Laurent Pinchart
The mode setting handler of the VENC stores the video mode internally, to then convert it to a configuration when programming the hardware. The stored mode is otherwise unused. Cache the configuration directly instead. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Seb

[PATCH v2 49/49] drm/omap: Remove panel-dpi driver

2019-01-10 Thread Laurent Pinchart
Panels are now supported through the drm_panel infrastructure, remove the omapdrm-specific driver. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/displays/Kconfig | 6 - drivers/gpu/drm/omapdrm/displays/Makefile | 1 - drivers/gpu/drm/oma

[PATCH v2 31/49] drm/omap: Store pixel clock instead of full mode in DPI and SDI encoders

2019-01-10 Thread Laurent Pinchart
The DPI and SDI encoders store the full videomode upon mode set, to only use the value of the pixel clock when enabling the encoder. This wastes memory. Store the pixel clock value only. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reichel --- drivers/gpu

[PATCH v2 16/49] drm/omap: Expose DRM modes instead of timings in display devices

2019-01-10 Thread Laurent Pinchart
omap_dss_device operations expose fixed video timings through a .get_timings() operation that return a single timing for the device. To prepare for the move to drm_bridge, modify the API to instead add DRM modes directly to the connector. As this puts more burden on display devices, we also create

[PATCH v2 47/49] drm/omap: Whitelist DT nodes to fixup with omapdss, prefix

2019-01-10 Thread Laurent Pinchart
The omapdss driver patches DT at runtime to prepend an "omapdss," prefix to the compatible string of all encoders, panels and connectors. This mechanism ensures they get bound to the omapdss-specific drivers instead of generic drivers. Now that we have drm_bridge support in omapdrm, we need to sel

[PATCH v2 46/49] drm/omap: Add support for drm_panel

2019-01-10 Thread Laurent Pinchart
Hook up drm_panel support in the omapdrm driver. The change is relatively simply as the way has been paved by drm_bridge support already. In addition to looking up, attaching to and detaching from the panel, we only need to add panel support in the connector .get_modes() handler, take connector bus

[PATCH v2 34/49] drm/omap: Merge omap_dss_device type and output_type fields

2019-01-10 Thread Laurent Pinchart
The omap_dss_device type and output_type fields differ mostly for historical reasons. The output_type field is required for all devices but the display at the end of the pipeline, and must be set to OMAP_DISPLAY_TYPE_NONE for the latter. The type field is required for all devices but the internal e

[PATCH v2 28/49] drm/omap: Factor out common mode validation code

2019-01-10 Thread Laurent Pinchart
The encoder .atomic_check() and connector .mode_valid() operations both walk through the dss devices in the pipeline to validate the mode. Factor out the common code in a new omap_drm_connector_mode_fixup() function. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebas

[PATCH v2 09/49] drm/omap: Move common display enable/disable code to encoder

2019-01-10 Thread Laurent Pinchart
All .enable() and .disable() handlers for panels and connectors share common code that validates and updates the device's state. Move it to common locations in the omap_encoder_enable() and omap_encoder_disable() handlers. The enabled check in the .disable() handler is left untouched, it will be a

[PATCH v2 37/49] drm/bridge: use bus flags in bridge timings

2019-01-10 Thread Laurent Pinchart
From: Stefan Agner The DRM bus flags convey additional information on pixel data on the bus. All current available bus flags might be of interest for a bridge. Remove the sampling_edge field and use bus_flags. In the case at hand a dumb VGA bridge needs a specific data enable polarity (DRM_BUS_F

[PATCH v2 25/49] drm/omap: Remove src field from omap_dss_device structure

2019-01-10 Thread Laurent Pinchart
The field is only used to check whether the device is connected, and we can do so by checking the dss field instead. Remove the src field. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/base.c| 14 +-

[PATCH v2 39/49] drm/bridge: ti-tfp410: Set connector type based on DT connector node

2019-01-10 Thread Laurent Pinchart
The TI TFP410 is a DVI encoder, not a full HDMI encoder. Its output can be routed to a DVI-D connector, even if in many cases embedded systems will use an HDMI connector to carry the DVI signals. Instead of hardcoding the connector type to HDMI, retrieve the connector type from its DT node. Signe

[PATCH v2 36/49] drm: Use new DRM_BUS_FLAG_*_(DRIVE|SAMPLE)_(POS|NEG)EDGE flags

2019-01-10 Thread Laurent Pinchart
From: Laurent Pinchart 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 effectiv

[PATCH v2 22/49] drm/omap: Don't store display pointer in omap_connector structure

2019-01-10 Thread Laurent Pinchart
Display pipelines based on drm_bridge are handled from the bridge closest to the CRTC. To move to that model we thus need to transition away from walking pipelines in the other direction, and from accessing the device at the end of the pipeline when possible. Remove most accesses to the display de

[PATCH v2 11/49] drm/omap: Remove connection checks from display .enable() and .remove()

2019-01-10 Thread Laurent Pinchart
The displays (connectors, panels and encoders) return an error from their .enable() handler when the dss device is not connected. They also disconnect the dss device explicitly from their .remove() handler if it is still connected. Those safety checks are not needed: - The .enable() handler is ca

[PATCH v2 48/49] drm/omap: Remove TFP410 and DVI connector drivers

2019-01-10 Thread Laurent Pinchart
Those components are supported by the drm_bridge infrastructure, remove the omapdrm-specific driver. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/displays/Kconfig | 11 - drivers/gpu/drm/omapdrm/displays/Makefile | 2 - .../gpu/drm/omapd

[PATCH v2 41/49] drm/bridge: ti-tfp410: Report input bus config through bridge timings

2019-01-10 Thread Laurent Pinchart
The TFP410 supports configurable pixel clock sampling edge and data de-skew adjustments. The configuration can be set through I2C or dedicated chip pins. Report the configuration through the drm_bridge timings. As the ti-tftp410 driver doesn't support configuring the chip through I2C, we simply us

[PATCH v2 17/49] drm/omap: Merge display .get_modes() and .get_size() operations

2019-01-10 Thread Laurent Pinchart
Now that the .get_modes() operations takes a drm_connector and fills it with modes, it becomes easy to fill display information in the same operation without requiring a separate .get_size() opearation. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reichel

[PATCH v2 04/49] drm/omap: dsi: Hack-fix DSI bus flags

2019-01-10 Thread Laurent Pinchart
From: Tomi Valkeinen Since commit b4935e3a3cfa ("drm/omap: Store bus flags in the omap_dss_device structure") video mode flags are managed by the omapdss (and later omapdrm) core based on bus flags stored in omap_dss_device. This works fine for all devices whose video modes are set by the omapdss

[PATCH v2 01/49] drm/atomic: Constify mode argument to mode_valid_path()

2019-01-10 Thread Laurent Pinchart
The mode_valid_path() function validates the mode it receives without ever modifying it. Constify the mode pointer argument to make that explicit. Signed-off-by: Laurent Pinchart Reviewed-by: Ville Syrjälä --- drivers/gpu/drm/drm_atomic_helper.c | 4 ++-- 1 file changed, 2 insertions(+), 2 dele

[PATCH v2 10/49] drm/omap: Remove connection checks from internal encoders .enable()

2019-01-10 Thread Laurent Pinchart
The internal encoders return an error from their .enable() handler when their are not connected to a dss manager. As the flag used is set and cleared in the connect and disconnect handlers, this effectively checks whether the omap_dss_device is connected. The .enable() handler is called from code

[PATCH v2 07/49] drm/omap: venc: Remove wss_data field from venc_device structure

2019-01-10 Thread Laurent Pinchart
The venc_device structure wss_data field is set to 0 and never otherwise modified, remove it. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/venc.c | 11 +-- 1 file changed, 1 insertion(+), 10 deletions(-) di

[PATCH v2 00/49] omapdrm: drm_bridge and drm_panel support

2019-01-10 Thread Laurent Pinchart
Hello, This patch series consolidates the three pending series for the omapdrm and tfp410 drivers that all together implement drm_bridge and drm_panel support for omapdrm. The series starts with four patches not posted before as part of this work. The first patch (01/49) has been sitting in my tr

[PATCH v2 20/49] drm/omap: Don't pass display pointer to encoder init function

2019-01-10 Thread Laurent Pinchart
The display isn't used by the encoder implementation, don't pass it to the initialization function and store it internally needlessly. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/omap_drv.c | 2 +- drivers/gpu/drm/

[PATCH v2 03/49] drm/omap: dsi: Fix OF platform depopulate

2019-01-10 Thread Laurent Pinchart
From: Tomi Valkeinen Commit edb715dffdee ("drm/omap: dss: dsi: Move initialization code from bind to probe") moved the of_platform_populate() call from dsi_bind() to dsi_probe(), but failed to move the corresponding of_platform_depopulate() from dsi_unbind() to dsi_remove(). This results in OF ch

[PATCH v2 06/49] drm/omap: Remove unused kobj field from struct omap_dss_device

2019-01-10 Thread Laurent Pinchart
The kobj field from struct omap_dss_device is not used. Remove it. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/omapdss.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/gpu/drm/omapdrm/dss/omapdss.h b

[PATCH v2 21/49] drm/omap: Move display alias ID to omap_drm_pipeline

2019-01-10 Thread Laurent Pinchart
The DT bindings for the OMAP DSS allow assigning numerical IDs to display outputs through display entries in the alias node. The driver uses this information to sort pipelines according to the order specified in DT, making it possible for a system to give a priority order to outputs. Retrieval of

[PATCH v2 08/49] drm/omap: Use atomic suspend/resume helpers

2019-01-10 Thread Laurent Pinchart
Instead of rolling out custom suspend/resume implementations based on state information stored in the driver's data structures, use the atomic suspend/resume helpers that rely on a DRM atomic state object. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reiche

[PATCH v2 02/49] drm/omap: dsi: Fix crash in DSI debug dumps

2019-01-10 Thread Laurent Pinchart
From: Tomi Valkeinen Reading any of the DSI debugfs files results in a crash, as wrong pointer is passed to the dump functions, and the dump functions use a wrong pointer. This patch fixes DSI debug dumps. Fixes: f3ed97f9ae7d ("drm/omap: dsi: Simplify debugfs implementation") Signed-off-by: Tomi

[PATCH v2 13/49] drm/omap: Reverse direction of the DSS device enable/disable operations

2019-01-10 Thread Laurent Pinchart
The omapdrm and omapdss drivers are architectured based on display pipelines made of multiple components handled from sink (display) to source (DSS output). This is incompatible with the DRM bridge and panel APIs that handle components from source to sink. Reconcile the omapdrm and omapdss drivers

[PATCH v2 14/49] drm/omap: Remove omap_dss_device dst field

2019-01-10 Thread Laurent Pinchart
The field is only used in a safety check during device connection/disconnection, where the src field can be easily used instead. Remove it and use src. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/base.c| 6 ++--

[PATCH v2 15/49] drm/omap: Factor out common init/cleanup code for output devices

2019-01-10 Thread Laurent Pinchart
All the internal encoders share common init and cleanup code. Factor it out to separate functions. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dpi.c | 17 +++-- drivers/gpu/drm/omapdrm/dss/dsi.c

[PATCH v2 05/49] drm/omap: Remove declaration of nonexisting function

2019-01-10 Thread Laurent Pinchart
The omap_connector_attached_encoder() doesn't exist anymore, remove its declaration from omap_connector.h. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/omap_connector.h | 2 -- 1 file changed, 2 deletions(-) diff --git

[PATCH v2 19/49] drm/omap: venc: List both PAL and NTSC modes

2019-01-10 Thread Laurent Pinchart
The TV encoder supports both PAL and NTSC modes, but when queried for the list of modes it supports, only the currently selected mode is reported. Fix it and report the two modes unconditionally. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reichel --- dr

Re: Re: [PATCH] drm/mediatek: Add MTK Framebuffer-Device (mt7623)

2019-01-10 Thread CK Hu
Hi, Daniel: On Thu, 2019-01-10 at 21:02 +0100, Daniel Vetter wrote: > On Thu, Jan 10, 2019 at 08:01:37PM +0100, Frank Wunderlich wrote: > > Hi Daniel, > > > > > > Would be good to use the new generic fbdev emulation code here, for even > > > > less code. Or at least know why this isn't possible t

[Bug 109298] AMDGPU leaving DRI2 enabled causes white artifacting

2019-01-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=109298 Bug ID: 109298 Summary: AMDGPU leaving DRI2 enabled causes white artifacting Product: DRI Version: XOrg git Hardware: x86-64 (AMD64) OS: Linux (All) Status: NEW

[git pull] drm fixes for 5.0-rc2

2019-01-10 Thread Dave Airlie
Hi Linus, Not a huge amount for rc2, assume the usual quiet period, and rc3 will be most of it. amdgpu: - Powerplay fixes - Virtual display pinning fixes - Golden register updates for Vega - Pitch and gem size validation fixes - SR-IOV init error fix - Pagetables in system RAM disable for some Ra

Re: [PATCH 0/6] omapdrm: drm_bridge and drm_panel support

2019-01-10 Thread Laurent Pinchart
Hi Sebastian, On Thursday, 20 December 2018 14:17:27 EET Sebastian Reichel wrote: > Hi, > > On Mon, Dec 10, 2018 at 03:06:17AM +0200, Laurent Pinchart wrote: > > This patch series hooks up support for drm_bridge and drm_panel in the > > omapdrm driver. > > > > [...] > > The series is > > Revie

Re: Aw: Re: [PATCH] drm/mediatek: Add MTK Framebuffer-Device (mt7623)

2019-01-10 Thread CK Hu
Hi, Frank: On Thu, 2019-01-10 at 20:01 +0100, Frank Wunderlich wrote: > Hi Daniel, > > > > Would be good to use the new generic fbdev emulation code here, for even > > > less code. Or at least know why this isn't possible to use for mtk (and > > > maybe address that in the core code). Hand-rollin

[Bug 109135] R9 390 hangs at boot with DPM/DC enabled for kernels 4.19.x and above, says KMS not supported

2019-01-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=109135 --- Comment #8 from rmuncr...@humanavance.com --- (In reply to Alex Deucher from comment #7) > Can you bisect to figure out what commit broke things for you? Actually I remember doing that many years ago when I was a maintainer for Steam under w

[Bug 109135] R9 390 hangs at boot with DPM/DC enabled for kernels 4.19.x and above, says KMS not supported

2019-01-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=109135 --- Comment #7 from Alex Deucher --- Can you bisect to figure out what commit broke things for you? -- You are receiving this mail because: You are the assignee for the bug.___ dri-devel mailing list

Re: [PATCH 4/4] drm/tinydrm: Use damage helper for dirtyfb

2019-01-10 Thread David Lechner
On 1/9/19 11:49 AM, Noralf Trønnes wrote: This switches to drm_atomic_helper_dirtyfb() as the framebuffer dirty handler. All flushing will now happen in the pipe functions. Also enable the damage plane property for all except repaper which can only do full updates. ili9225: This change made ili

[PATCH v7 18/20] drm/dp_mst: Start tracking per-port VCPI allocations

2019-01-10 Thread Lyude Paul
There has been a TODO waiting for quite a long time in drm_dp_mst_topology.c: /* We cannot rely on port->vcpi.num_slots to update * topology_state->avail_slots as the port may not exist if the parent * branch device was unplugged. This should be fixed by tracking

[PATCH v7 17/20] drm/dp_mst: Add some atomic state iterator macros

2019-01-10 Thread Lyude Paul
Changes since v6: - Move EXPORT_SYMBOL() for drm_dp_mst_topology_state_funcs to this commit - Document __drm_dp_mst_state_iter_get() and note that it shouldn't be called directly Signed-off-by: Lyude Paul Reviewed-by: Daniel Vetter Cc: David Airlie Cc: Jerry Zuo Cc: Harry Wentland Cc:

[PATCH v7 14/20] drm/nouveau: Keep malloc references to MST ports

2019-01-10 Thread Lyude Paul
Now that we finally have a sane way to keep port allocations around, use it to fix the potential unchecked ->port accesses that nouveau makes by making sure we keep the mst port allocated for as long as it's drm_connector is accessible. Additionally, now that we've guaranteed that mstc->port is al

[PATCH v7 12/20] drm/nouveau: Remove bogus cleanup in nv50_mstm_add_connector()

2019-01-10 Thread Lyude Paul
Trying to destroy the connector using mstc->connector.funcs->destroy() if connector initialization fails is wrong: there is no possible codepath in nv50_mstc_new where nv50_mstm_add_connector() would return <0 and mstc would be non-NULL. Signed-off-by: Lyude Paul Reviewed-By: Ben Skeggs Cc: Dani

[PATCH v7 15/20] drm/nouveau: Stop unsetting mstc->port, use malloc refs

2019-01-10 Thread Lyude Paul
Same as we did for i915, but for nouveau this time. Additionally, we grab a malloc reference to the port that lasts for the entire lifetime of nv50_mstc, which gives us the guarantee that mstc->port will always point to valid memory for as long as the mstc stays around. Signed-off-by: Lyude Paul

[Bug 109135] R9 390 hangs at boot with DPM/DC enabled for kernels 4.19.x and above, says KMS not supported

2019-01-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=109135 --- Comment #6 from rmuncr...@humanavance.com --- (In reply to iive from comment #5) > (In reply to rmuncrief from comment #2) > [...] > > Here's the grub line I use for all testing: > > GRUB_CMDLINE_LINUX_DEFAULT="quiet > > resume=UUID=b4f71480-

[PATCH v7 11/20] drm/amdgpu/display: Keep malloc ref to MST port

2019-01-10 Thread Lyude Paul
Just like i915 and nouveau, it's a good idea for us to hold a malloc reference to the port here so that we never pass a freed pointer to any of the DP MST helper functions. Also, we stop unsetting aconnector->port in dm_dp_destroy_mst_connector(). There's literally no point to that assignment that

[PATCH v7 16/20] drm/nouveau: Grab payload lock in nv50_msto_payload()

2019-01-10 Thread Lyude Paul
Going through the currently programmed payloads isn't safe without holding mgr->payload_lock, so actually do that and warn if anyone tries calling nv50_msto_payload() in the future without grabbing the right locks. Signed-off-by: Lyude Paul Reviewed-By: Ben Skeggs Cc: Daniel Vetter Cc: David Ai

[PATCH v7 20/20] drm/nouveau: Use atomic VCPI helpers for MST

2019-01-10 Thread Lyude Paul
Currently, nouveau uses the yolo method of setting up MST displays: it uses the old VCPI helpers (drm_dp_find_vcpi_slots()) for computing the display configuration. These helpers don't take care to make sure they take a reference to the mstb port that they're checking, and additionally don't actual

[PATCH v7 19/20] drm/dp_mst: Check payload count in drm_dp_mst_atomic_check()

2019-01-10 Thread Lyude Paul
It occurred to me that we never actually check this! So let's start doing that. Signed-off-by: Lyude Paul Reviewed-by: Daniel Vetter Cc: David Airlie Cc: Jerry Zuo Cc: Harry Wentland Cc: Juston Li --- drivers/gpu/drm/drm_dp_mst_topology.c | 8 +++- 1 file changed, 7 insertions(+), 1 del

[PATCH v7 06/20] drm/dp_mst: Introduce new refcounting scheme for mstbs and ports

2019-01-10 Thread Lyude Paul
The current way of handling refcounting in the DP MST helpers is really confusing and probably just plain wrong because it's been hacked up many times over the years without anyone actually going over the code and seeing if things could be simplified. To the best of my understanding, the current s

[PATCH v7 09/20] drm/dp_mst: Fix payload deallocation on hotplugs using malloc refs

2019-01-10 Thread Lyude Paul
Up until now, freeing payloads on remote MST hubs that just had ports removed has almost never worked because we've been relying on port validation in order to stop us from accessing ports that have already been freed from memory, but ports which need their payloads released due to being removed wi

[PATCH v7 13/20] drm/nouveau: Remove unnecessary VCPI checks in nv50_msto_cleanup()

2019-01-10 Thread Lyude Paul
There is no need to look at the port's VCPI allocation before calling drm_dp_mst_deallocate_vcpi(), as we already have msto->disabled to let us avoid cleaning up an msto more then once. The DP MST core will never call drm_dp_mst_deallocate_vcpi() on it's own, which is presumably what these checks a

[PATCH v7 10/20] drm/i915: Keep malloc references to MST ports

2019-01-10 Thread Lyude Paul
So that the ports stay around until we've destroyed the connectors, in order to ensure that we don't pass an invalid pointer to any MST helpers once we introduce the new MST VCPI helpers. Changes since v1: * Move drm_dp_mst_get_port_malloc() to where we assign intel_connector->port - danvet Sig

[PATCH v7 05/20] drm/dp_mst: Rename drm_dp_mst_get_validated_(port|mstb)_ref and friends

2019-01-10 Thread Lyude Paul
s/drm_dp_get_validated_port_ref/drm_dp_mst_topology_get_port_validated/ s/drm_dp_put_port/drm_dp_mst_topology_put_port/ s/drm_dp_get_validated_mstb_ref/drm_dp_mst_topology_get_mstb_validated/ s/drm_dp_put_mst_branch_device/drm_dp_mst_topology_put_mstb/ This is a much more consistent naming scheme,

[PATCH v7 07/20] drm/dp_mst: Restart last_connected_port_and_mstb() if topology ref fails

2019-01-10 Thread Lyude Paul
While this isn't a complete fix, this will improve the reliability of drm_dp_get_last_connected_port_and_mstb() pretty significantly during hotplug events, since there's a chance that the in-memory topology tree may not be fully updated when drm_dp_get_last_connected_port_and_mstb() is called and t

  1   2   3   >