diff options
Diffstat (limited to 'xorg-server/include')
-rw-r--r-- | xorg-server/include/dix-config.h.in | 6 | ||||
-rw-r--r-- | xorg-server/include/dixstruct.h | 8 | ||||
-rw-r--r-- | xorg-server/include/extinit.h | 10 | ||||
-rw-r--r-- | xorg-server/include/misc.h | 29 | ||||
-rw-r--r-- | xorg-server/include/os.h | 5 | ||||
-rw-r--r-- | xorg-server/include/regionstr.h | 2 | ||||
-rw-r--r-- | xorg-server/include/xorg-config.h.in | 3 | ||||
-rw-r--r-- | xorg-server/include/xorg-server.h.in | 6 |
8 files changed, 69 insertions, 0 deletions
diff --git a/xorg-server/include/dix-config.h.in b/xorg-server/include/dix-config.h.in index a643dfcc8..397ee967a 100644 --- a/xorg-server/include/dix-config.h.in +++ b/xorg-server/include/dix-config.h.in @@ -39,6 +39,9 @@ /* Build DPMS extension */ #undef DPMSExtension +/* Build DRI3 extension */ +#undef DRI3 + /* Build GLX extension */ #undef GLXEXT @@ -252,6 +255,9 @@ /* Internal define for Xinerama */ #undef PANORAMIX +/* Support Present extension */ +#undef PRESENT + /* Overall prefix */ #undef PROJECTROOT diff --git a/xorg-server/include/dixstruct.h b/xorg-server/include/dixstruct.h index 7065b0456..92d2b3882 100644 --- a/xorg-server/include/dixstruct.h +++ b/xorg-server/include/dixstruct.h @@ -110,8 +110,16 @@ typedef struct _Client { DeviceIntPtr clientPtr; ClientIdPtr clientIds; + int req_fds; } ClientRec; +static inline void +SetReqFds(ClientPtr client, int req_fds) { + if (client->req_fds != 0 && req_fds != client->req_fds) + LogMessage(X_ERROR, "Mismatching number of request fds %d != %d\n", req_fds, client->req_fds); + client->req_fds = req_fds; +} + /* * Scheduling interface */ diff --git a/xorg-server/include/extinit.h b/xorg-server/include/extinit.h index 6d67bf2e5..fa5f29378 100644 --- a/xorg-server/include/extinit.h +++ b/xorg-server/include/extinit.h @@ -176,4 +176,14 @@ extern void XvExtensionInit(void); extern void XvMCExtensionInit(void); #endif +#if defined(DRI3) +#include <X11/extensions/dri3proto.h> +extern void dri3_extension_init(void); +#endif + +#if defined(PRESENT) +#include <X11/extensions/presentproto.h> +#include "presentext.h" +#endif + #endif diff --git a/xorg-server/include/misc.h b/xorg-server/include/misc.h index 664e02cae..19e71035c 100644 --- a/xorg-server/include/misc.h +++ b/xorg-server/include/misc.h @@ -315,6 +315,35 @@ __builtin_constant_p(int x) } #endif +/* byte swap a 64-bit value */ +static inline void +swap_uint64(uint64_t *x) +{ + char n; + + n = ((char *) x)[0]; + ((char *) x)[0] = ((char *) x)[7]; + ((char *) x)[7] = n; + + n = ((char *) x)[1]; + ((char *) x)[1] = ((char *) x)[6]; + ((char *) x)[6] = n; + + n = ((char *) x)[2]; + ((char *) x)[2] = ((char *) x)[5]; + ((char *) x)[5] = n; + + n = ((char *) x)[3]; + ((char *) x)[3] = ((char *) x)[4]; + ((char *) x)[4] = n; +} + +#define swapll(x) do { \ + if (sizeof(*(x)) != 8) \ + wrong_size(); \ + swap_uint64((uint64_t *)(x)); \ + } while (0) + /* byte swap a 32-bit value */ static inline void swap_uint32(uint32_t * x) diff --git a/xorg-server/include/os.h b/xorg-server/include/os.h index 68f405714..a04b4e47d 100644 --- a/xorg-server/include/os.h +++ b/xorg-server/include/os.h @@ -98,6 +98,10 @@ extern _X_EXPORT int WaitForSomething(int * /*pClientsReady */ extern _X_EXPORT int ReadRequestFromClient(ClientPtr /*client */ ); +extern _X_EXPORT int ReadFdFromClient(ClientPtr client); + +extern _X_EXPORT int WriteFdToClient(ClientPtr client, int fd, Bool do_close); + extern _X_EXPORT Bool InsertFakeRequest(ClientPtr /*client */ , char * /*data */ , int /*count */ ); @@ -167,6 +171,7 @@ extern void ListenOnOpenFD(int /* fd */ , int /* noxauth */ ); #endif extern _X_EXPORT CARD32 GetTimeInMillis(void); +extern _X_EXPORT CARD64 GetTimeInMicros(void); extern _X_EXPORT void AdjustWaitForDelay(pointer /*waitTime */ , unsigned long /*newdelay */ ); diff --git a/xorg-server/include/regionstr.h b/xorg-server/include/regionstr.h index 805257b3f..4a0725d62 100644 --- a/xorg-server/include/regionstr.h +++ b/xorg-server/include/regionstr.h @@ -213,6 +213,8 @@ extern _X_EXPORT RegionPtr RegionCreate(BoxPtr /*rect */ , extern _X_EXPORT void RegionDestroy(RegionPtr /*pReg */ ); +extern _X_EXPORT RegionPtr RegionDuplicate(RegionPtr /* pOld */); + static inline Bool RegionCopy(RegionPtr dst, RegionPtr src) { diff --git a/xorg-server/include/xorg-config.h.in b/xorg-server/include/xorg-config.h.in index 0df31aeb2..487d7addb 100644 --- a/xorg-server/include/xorg-config.h.in +++ b/xorg-server/include/xorg-config.h.in @@ -142,4 +142,7 @@ /* Define to 1 if you have the `seteuid' function. */ #undef HAVE_SETEUID +/* Support APM/ACPI power management in the server */ +#undef XF86PM + #endif /* _XORG_CONFIG_H_ */ diff --git a/xorg-server/include/xorg-server.h.in b/xorg-server/include/xorg-server.h.in index 81935be5c..1281b3e5e 100644 --- a/xorg-server/include/xorg-server.h.in +++ b/xorg-server/include/xorg-server.h.in @@ -28,6 +28,9 @@ /* Build DPMS extension */ #undef DPMSExtension +/* Build DRI3 extension */ +#undef DRI3 + /* Build GLX extension */ #undef GLXEXT @@ -67,6 +70,9 @@ /* Internal define for Xinerama */ #undef PANORAMIX +/* Support Present extension */ +#undef PRESENT + /* Support RANDR extension */ #undef RANDR |