wok-current view xorg-xf86-video-intel/stuff/patch-src_legacy_i810_i810__video.c @ rev 25634

Mass update, new toolchain gcc 8.3.0, glibc 2.28.0
author Stanislas Leduc <shann@slitaz.org>
date Sun Jan 14 08:12:37 2024 +0000 (20 months ago)
parents
children
line source
1 $NetBSD$
3 --- a/src/legacy/i810/i810_video.c 2014-08-29 09:33:11.000000000 +0000
4 +++ b/src/legacy/i810/i810_video.c
5 @@ -77,7 +77,11 @@ static int I810PutImage( ScrnInfoPtr,
6 static int I810QueryImageAttributes(ScrnInfoPtr,
7 int, unsigned short *, unsigned short *, int *, int *);
9 +#if !HAVE_NOTIFY_FD
10 static void I810BlockHandler(BLOCKHANDLER_ARGS_DECL);
11 +#else
12 +static void I810BlockHandler(void *data, void *_timeout);
13 +#endif
15 #define MAKE_ATOM(a) MakeAtom(a, sizeof(a) - 1, TRUE)
17 @@ -418,8 +422,14 @@ I810SetupImageVideo(ScreenPtr screen)
19 pI810->adaptor = adapt;
21 +#if !HAVE_NOTIFY_FD
22 pI810->BlockHandler = screen->BlockHandler;
23 screen->BlockHandler = I810BlockHandler;
24 +#else
25 + RegisterBlockAndWakeupHandlers(I810BlockHandler,
26 + (ServerWakeupHandlerProcPtr)NoopDDA,
27 + pScrn);
28 +#endif
30 xvBrightness = MAKE_ATOM("XV_BRIGHTNESS");
31 xvContrast = MAKE_ATOM("XV_CONTRAST");
32 @@ -1135,6 +1145,7 @@ I810QueryImageAttributes(
33 return size;
34 }
36 +#if !HAVE_NOTIFY_FD
37 static void
38 I810BlockHandler (BLOCKHANDLER_ARGS_DECL)
39 {
40 @@ -1172,7 +1183,38 @@ I810BlockHandler (BLOCKHANDLER_ARGS_DECL
41 }
42 }
43 }
44 +#else
45 +static void
46 +I810BlockHandler(void *data, void *_timeout)
47 +{
48 + ScrnInfoPtr pScrn = data;
49 + I810Ptr pI810 = I810PTR(pScrn);
50 + I810PortPrivPtr pPriv = GET_PORT_PRIVATE(pScrn);
51 + I810OverlayRegPtr overlay = (I810OverlayRegPtr) (pI810->FbBase + pI810->OverlayStart);
53 + if(pPriv->videoStatus & TIMER_MASK) {
54 + UpdateCurrentTime();
55 + if(pPriv->videoStatus & OFF_TIMER) {
56 + if(pPriv->offTime < currentTime.milliseconds) {
57 + /* Turn off the overlay */
58 + overlay->OV0CMD &= 0xFFFFFFFE;
59 + OVERLAY_UPDATE(pI810->OverlayPhysical);
60 +
61 + pPriv->videoStatus = FREE_TIMER;
62 + pPriv->freeTime = currentTime.milliseconds + FREE_DELAY;
63 + }
64 + } else { /* FREE_TIMER */
65 + if(pPriv->freeTime < currentTime.milliseconds) {
66 + if(pPriv->linear) {
67 + xf86FreeOffscreenLinear(pPriv->linear);
68 + pPriv->linear = NULL;
69 + }
70 + pPriv->videoStatus = 0;
71 + }
72 + }
73 + }
74 +}
75 +#endif
77 /***************************************************************************
78 * Offscreen Images
79 @@ -1373,7 +1415,6 @@ I810DisplaySurface(
80 UpdateCurrentTime();
81 pI810Priv->videoStatus = FREE_TIMER;
82 pI810Priv->freeTime = currentTime.milliseconds + FREE_DELAY;
83 - pScrn->pScreen->BlockHandler = I810BlockHandler;
84 }
86 return Success;