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
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
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
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
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
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
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 ++
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 -
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
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
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 +++
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
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
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
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
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
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
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_
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
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/
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
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
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
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
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.
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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 +-
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
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
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
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
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
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
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
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
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
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
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
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
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/
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
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
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
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
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
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
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 ++--
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
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
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
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
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
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
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
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
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
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
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
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
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:
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
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
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
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-
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
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
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
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
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
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
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
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
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,
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 - 100 of 274 matches
Mail list logo