forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-11 04dd17822334871b23ea2862f7798fb0e0007777
kernel/drivers/gpu/drm/mga/mga_irq.c
....@@ -31,8 +31,6 @@
3131 * Eric Anholt <anholt@FreeBSD.org>
3232 */
3333
34
-#include <drm/drmP.h>
35
-#include <drm/mga_drm.h>
3634 #include "mga_drv.h"
3735
3836 u32 mga_get_vblank_counter(struct drm_device *dev, unsigned int pipe)
....@@ -118,23 +116,21 @@
118116 /* MGA_WRITE(MGA_IEN, MGA_VLINEIEN | MGA_SOFTRAPEN); */
119117 }
120118
121
-int mga_driver_fence_wait(struct drm_device *dev, unsigned int *sequence)
119
+void mga_driver_fence_wait(struct drm_device *dev, unsigned int *sequence)
122120 {
123121 drm_mga_private_t *dev_priv = (drm_mga_private_t *) dev->dev_private;
124122 unsigned int cur_fence;
125
- int ret = 0;
126123
127124 /* Assume that the user has missed the current sequence number
128125 * by about a day rather than she wants to wait for years
129126 * using fences.
130127 */
131
- DRM_WAIT_ON(ret, dev_priv->fence_queue, 3 * HZ,
128
+ wait_event_timeout(dev_priv->fence_queue,
132129 (((cur_fence = atomic_read(&dev_priv->last_fence_retired))
133
- - *sequence) <= (1 << 23)));
130
+ - *sequence) <= (1 << 23)),
131
+ msecs_to_jiffies(3000));
134132
135133 *sequence = cur_fence;
136
-
137
- return ret;
138134 }
139135
140136 void mga_driver_irq_preinstall(struct drm_device *dev)