search for: drm_atomic_helper_swap_st

Displaying 14 results from an estimated 14 matches for "drm_atomic_helper_swap_st".

2017 Jun 30
0
[Intel-gfx] [PATCH 1/2] drm/atomic: Change drm_atomic_helper_swap_state to return an error.
...-- a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c > +++ b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c > @@ -544,9 +544,11 @@ static int atmel_hlcdc_dc_atomic_commit(struct drm_device *dev, > goto error; > } > > - /* Swap the state, this is the point of no return. */ > - drm_atomic_helper_swap_state(state, true); Push the swap_state up over the commit setup (but after the allocation) and there's no more a problem with unrolling. > + ret = drm_atomic_helper_swap_state(state, true); > + if (ret) > + goto err_pending; > > + /* Swap state succeeded, this is the point of...
2017 Jun 28
5
[PATCH 1/2] drm/atomic: Change drm_atomic_helper_swap_state to return an error.
...516d9547d331..d4f787bf1d4a 100644 --- a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c +++ b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c @@ -544,9 +544,11 @@ static int atmel_hlcdc_dc_atomic_commit(struct drm_device *dev, goto error; } - /* Swap the state, this is the point of no return. */ - drm_atomic_helper_swap_state(state, true); + ret = drm_atomic_helper_swap_state(state, true); + if (ret) + goto err_pending; + /* Swap state succeeded, this is the point of no return. */ drm_atomic_state_get(state); if (async) queue_work(dc->wq, &commit->work); @@ -555,6 +557,14 @@ static int atmel_hlcdc...
2017 Jul 11
0
[PATCH v2 03/12] drm/nouveau: Handle drm_atomic_helper_swap_state failure
drm_atomic_helper_swap_state() will be changed to interruptible waiting in the next few commits, so all drivers have to be changed to handling failure. Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com> Cc: Ben Skeggs <bskeggs at redhat.com> Cc: nouveau at lists.freedesktop.org --- drivers...
2017 Jul 03
1
[Intel-gfx] [PATCH 1/2] drm/atomic: Change drm_atomic_helper_swap_state to return an error.
...lcdc/atmel_hlcdc_dc.c >> +++ b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c >> @@ -544,9 +544,11 @@ static int atmel_hlcdc_dc_atomic_commit(struct drm_device *dev, >> goto error; >> } >> >> - /* Swap the state, this is the point of no return. */ >> - drm_atomic_helper_swap_state(state, true); > Push the swap_state up over the commit setup (but after the allocation) > and there's no more a problem with unrolling. This can't be done higher up because of the interruptible wait. Unless we change the patch series to move the waiting for hw_done to a separate s...
2017 Jul 19
1
[PATCH 01/12] drm/nouveau: Fix error handling in nv50_disp_atomic_commit
Make it more clear that post commit return ret is really return 0, and add a missing drm_atomic_helper_cleanup_planes when drm_atomic_helper_wait_for_fences fails. Fixes: 839ca903f12e ("drm/nouveau/kms/nv50: transition to atomic interfaces internally") Cc: Ben Skeggs <bskeggs at redhat.com> Cc: dri-devel at lists.freedesktop.org Cc: nouveau at lists.freedesktop.org Cc: <stable
2017 Jun 28
0
[PATCH 2/2] drm/atomic: Wait indefinitely and interruptibly for hw_done.
...eletions(-) diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c index f66b6c45cdd0..56e7729d993d 100644 --- a/drivers/gpu/drm/drm_atomic_helper.c +++ b/drivers/gpu/drm/drm_atomic_helper.c @@ -2144,8 +2144,7 @@ EXPORT_SYMBOL(drm_atomic_helper_cleanup_planes); int drm_atomic_helper_swap_state(struct drm_atomic_state *state, bool stall) { - int i; - long ret; + int i, ret; struct drm_connector *connector; struct drm_connector_state *old_conn_state, *new_conn_state; struct drm_crtc *crtc; @@ -2168,12 +2167,11 @@ int drm_atomic_helper_swap_state(struct drm_atomic_state *st...
2017 Jan 26
1
[PATCH 1/4] drm/atomic: Save flip flags in drm_plane_state
...perty will apply to all planes in CRTC? > Also the client code both in nouveau and AMD/DAL iterates over new planes and their new states so it seems to me easier to retrieve the parameter from the plane_state and not adding loop to find matching crtc or its state, especially if it's before drm_atomic_helper_swap_state is called, when crtc->state still points to the old state ... [Grodzovsky, Andrey] > > > > > --- > > > drivers/gpu/drm/drm_atomic_helper.c | 10 +++------- > > > include/drm/drm_plane.h | 8 ++++++++ > > > 2 files changed, 11 insertion...
2017 May 28
4
[Bug 101215] New: Graphics Crash
...[ +0.000004] nouveau 0000:01:00.0: gr: ROP2 80000000 80000002 [ +0.000012] nouveau 0000:01:00.0: gr: TRAP ch 6 [023f718000 systemd-logind[757]] [ +0.000008] nouveau 0000:01:00.0: gr: GPC1/PROP trap: 00000020 [RT_HEIGHT_OVERRUN] x = 1888, y = 1056, format = 2a, storage type = 0 [May28 12:01] [drm:drm_atomic_helper_swap_state [drm_kms_helper]] *ERROR* [CRTC:37:head-0] hw_done timed out [ +10.240079] [drm:drm_atomic_helper_wait_for_dependencies [drm_kms_helper]] *ERROR* [CRTC:37:head-0] hw_done timed out [May28 12:02] [drm:drm_atomic_helper_wait_for_dependencies [drm_kms_helper]] *ERROR* [CRTC:37:head-0] flip_done tim...
2016 May 31
0
[PATCH 2/5] virtio-gpu: add atomic_commit function
...display.c @@ -466,10 +466,30 @@ virtio_gpu_user_framebuffer_create(struct drm_device *dev, return &virtio_gpu_fb->base; } +static int vgdev_atomic_commit(struct drm_device *dev, + struct drm_atomic_state *state, + bool nonblock) +{ + if (nonblock) + return -EBUSY; + + drm_atomic_helper_swap_state(dev, state); + drm_atomic_helper_wait_for_fences(dev, state); + + drm_atomic_helper_commit_modeset_disables(dev, state); + drm_atomic_helper_commit_modeset_enables(dev, state); + drm_atomic_helper_commit_planes(dev, state, true); + + drm_atomic_helper_wait_for_vblanks(dev, state); + drm_atomic_h...
2016 May 31
0
[PATCH 2/5] virtio-gpu: add atomic_commit function
...display.c @@ -466,10 +466,30 @@ virtio_gpu_user_framebuffer_create(struct drm_device *dev, return &virtio_gpu_fb->base; } +static int vgdev_atomic_commit(struct drm_device *dev, + struct drm_atomic_state *state, + bool nonblock) +{ + if (nonblock) + return -EBUSY; + + drm_atomic_helper_swap_state(dev, state); + drm_atomic_helper_wait_for_fences(dev, state); + + drm_atomic_helper_commit_modeset_disables(dev, state); + drm_atomic_helper_commit_modeset_enables(dev, state); + drm_atomic_helper_commit_planes(dev, state, true); + + drm_atomic_helper_wait_for_vblanks(dev, state); + drm_atomic_h...
2017 May 08
3
GT 730 freeze : how do diagnose / debug ?
On 07/05/2017 23:50, Ilia Mirkin wrote: > You have two issues: > > (a) nouveau's GL driver messed something up, causing a read fault error > (b) nouveau's kernel driver tried to recover. It failed. > > Solution to #1: None, really. You can try updating mesa, and hope it > helps. Not sure what version you're on. Here's my packages version: ii
2017 Jan 23
3
[PATCH 1/4] drm/atomic: Save flip flags in drm_plane_state
On Mon, Jan 16, 2017 at 10:44:55AM -0500, Andrey Grodzovsky wrote: > Allows using atomic flip helpers for drivers > using ASYNC flip. > Remove ASYNC_FLIP restriction in helpers and > caches the page flip flags in drm_plane_state > to be used in the low level drivers. > > Signed-off-by: Andrey Grodzovsky <Andrey.Grodzovsky at amd.com> It's mostly guesswork, but I
2017 Nov 13
19
[Bug 103721] New: Frequent freezes with nouveau on Thinkpad P50
https://bugs.freedesktop.org/show_bug.cgi?id=103721 Bug ID: 103721 Summary: Frequent freezes with nouveau on Thinkpad P50 Product: xorg Version: unspecified Hardware: Other OS: All Status: NEW Severity: normal Priority: medium Component: Driver/nouveau Assignee: nouveau at
2017 Apr 04
47
[Bug 100567] New: Nouveau system freeze fifo: SCHED_ERROR 0a [CTXSW_TIMEOUT]
...eemed to make this freeze much more frequent (5-6 times in two work days). Journalctl -b -1 output is attached. Most relevant lines are: kernel: nouveau 0000:01:00.0: fifo: SCHED_ERROR 0a [CTXSW_TIMEOUT] kernel: nouveau 0000:01:00.0: fifo: gr engine fault on channel 12, recovering... kernel: [drm:drm_atomic_helper_swap_state [drm_kms_helper]] *ERROR* [CRTC:37:head-0] hw_done timed out kernel: [drm:drm_atomic_helper_wait_for_dependencies [drm_kms_helper]] *ERROR* [CRTC:37:head-0] hw_done timed out kernel: [drm:drm_atomic_helper_wait_for_dependencies [drm_kms_helper]] *ERROR* [CRTC:37:head-0] flip_done timed out A po...