diff options
author | Ben Skeggs | 2008-04-06 22:05:51 -0500 |
---|---|---|
committer | Ben Skeggs | 2008-04-06 22:05:51 -0500 |
commit | c12b60b5094fe97db60cd0f18fafd1720679bd38 (patch) | |
tree | 6b593457c6700d7a2e0769a3c906e6a2f76ef019 /linux-core | |
parent | e89710bef7691e4e9d0bc7d427542bfae6ce4258 (diff) | |
download | external-libdrm-c12b60b5094fe97db60cd0f18fafd1720679bd38.tar.gz external-libdrm-c12b60b5094fe97db60cd0f18fafd1720679bd38.tar.xz external-libdrm-c12b60b5094fe97db60cd0f18fafd1720679bd38.zip |
nouveau: enable m2mf for tt<->vram moves, fix fence_poll
Diffstat (limited to 'linux-core')
-rw-r--r-- | linux-core/nouveau_bo.c | 3 | ||||
-rw-r--r-- | linux-core/nouveau_fence.c | 3 |
2 files changed, 2 insertions, 4 deletions
diff --git a/linux-core/nouveau_bo.c b/linux-core/nouveau_bo.c index 7a899769..fcda3037 100644 --- a/linux-core/nouveau_bo.c +++ b/linux-core/nouveau_bo.c | |||
@@ -259,12 +259,11 @@ nouveau_bo_move(struct drm_buffer_object *bo, int evict, int no_wait, | |||
259 | return drm_bo_move_memcpy(bo, evict, no_wait, new_mem); | 259 | return drm_bo_move_memcpy(bo, evict, no_wait, new_mem); |
260 | } | 260 | } |
261 | else { | 261 | else { |
262 | // if (nouveau_bo_move_m2mf(bo, evict, no_wait, new_mem)) | 262 | if (nouveau_bo_move_m2mf(bo, evict, no_wait, new_mem)) |
263 | return drm_bo_move_memcpy(bo, evict, no_wait, new_mem); | 263 | return drm_bo_move_memcpy(bo, evict, no_wait, new_mem); |
264 | } | 264 | } |
265 | 265 | ||
266 | if (0) { | 266 | if (0) { |
267 | nouveau_bo_move_m2mf(bo, 0, 0, NULL); | ||
268 | nouveau_bo_move_gart(bo, 0, 0, NULL); | 267 | nouveau_bo_move_gart(bo, 0, 0, NULL); |
269 | } | 268 | } |
270 | 269 | ||
diff --git a/linux-core/nouveau_fence.c b/linux-core/nouveau_fence.c index 59dcf7d0..4ad51ae4 100644 --- a/linux-core/nouveau_fence.c +++ b/linux-core/nouveau_fence.c | |||
@@ -80,12 +80,11 @@ nouveau_fence_poll(struct drm_device *dev, uint32_t class, uint32_t waiting_type | |||
80 | struct drm_nouveau_private *dev_priv = dev->dev_private; | 80 | struct drm_nouveau_private *dev_priv = dev->dev_private; |
81 | struct drm_fence_class_manager *fc = &dev->fm.fence_class[class]; | 81 | struct drm_fence_class_manager *fc = &dev->fm.fence_class[class]; |
82 | struct nouveau_channel *chan = dev_priv->fifos[class]; | 82 | struct nouveau_channel *chan = dev_priv->fifos[class]; |
83 | uint32_t pending_types = 0; | ||
84 | 83 | ||
85 | DRM_DEBUG("class=%d\n", class); | 84 | DRM_DEBUG("class=%d\n", class); |
86 | DRM_DEBUG("pending: 0x%08x 0x%08x\n", waiting_types, fc->waiting_types); | 85 | DRM_DEBUG("pending: 0x%08x 0x%08x\n", waiting_types, fc->waiting_types); |
87 | 86 | ||
88 | if (pending_types) { | 87 | if (waiting_types & DRM_FENCE_TYPE_EXE) { |
89 | uint32_t sequence = NV_READ(chan->ref_cnt); | 88 | uint32_t sequence = NV_READ(chan->ref_cnt); |
90 | 89 | ||
91 | DRM_DEBUG("got 0x%08x\n", sequence); | 90 | DRM_DEBUG("got 0x%08x\n", sequence); |