From 17a005074429bbf143e40401f405ae4363e56828 Mon Sep 17 00:00:00 2001 From: Miguel de Icaza Date: Tue, 5 Aug 1997 18:24:12 +0000 Subject: Missing file. --- include/asm-mips/rrm.h | 88 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 include/asm-mips/rrm.h (limited to 'include') diff --git a/include/asm-mips/rrm.h b/include/asm-mips/rrm.h new file mode 100644 index 000000000..501fa6c1e --- /dev/null +++ b/include/asm-mips/rrm.h @@ -0,0 +1,88 @@ +/* + * SGI Rendering Resource Manager API (?). + * + * written by Miguel de Icaza (miguel@nuclecu.unam.mx) + * + * Ok, even if SGI choosed to do mmap trough ioctls, their + * kernel support for virtualizing the graphics card is nice. + * + * We should be able to make graphic applications on Linux + * fly. + * + * This header file should be included from GNU libc as well. + */ + + +/* Why like this you say? Well, gdb can print enums */ +#define RRM_BASE 1000 +#define RRM_CMD_LIMIT (RRM_BASE + 100) + +enum { + RRM_OPENRN = RRM_BASE, /* open rendering node */ + RRM_CLOSERN, + RRM_BINDPROCTORN, /* set current rendering region for node */ + RRM_BINDRNTOCLIP, + RRM_UNBINDRNFROMCLIP, + RRM_SWAPBUF, + RRM_SETSWAPINTERVAL, + RRM_WAITFORRETRACE, + RRM_SETDISPLAYMODE, + RRM_MESSAGE, + RRM_INVALIDATERN, + RRM_VALIDATECLIP, + RRM_VALIDATESWAPBUF, + RRM_SWAPGROUP, + RRM_SWAPUNGROUP, + RRM_VALIDATEMESSAGE, + RRM_GETDISPLAYMODES, + RRM_LOADDISPLAYMODE, + RRM_CUSHIONBUFFER, + RRM_SWAPREADY, + RRM_MGR_SWAPBUF, + RRM_SETVSYNC, + RRM_GETVSYNC, + RRM_WAITVSYNC, + RRM_BINDRNTOREADANDCLIP, + RRM_MAPCLIPTOSWPBUFID +}; + +/* Parameters for the above ioctls + * + * All of the ioctls take as their first argument the rendering node id. + * + */ + +/* + * RRM_OPENRN: + * + * This is called by the IRIX X server with: + * rnid = 0xffffffff rmask = 0 + * + * Returns a number like this: 0x10001. + * If you run the X server over and over, you get a value + * that is of the form (n * 0x10000) + 1. + * + * The return value seems to be the RNID. + */ +struct RRM_OpenRN { + int rnid; + unsigned int rmask; +}; + +struct RRM_CloseRN { + int rnid; +}; + +/* + * RRM_BINDPROCTORN: + * + * Return value when the X server calls it: 0 + */ +struct RRM_BindProcToRN { + int rnid; +}; + +#ifdef __KERNEL__ +int rrm_command (unsigned int cmd, void *arg); +int rrm_close (struct inode *inode, struct file *file); +#endif -- cgit v1.2.3