1 /* 2 * This file is subject to the terms and conditions of the GNU General Public 3 * License. See the file "COPYING" in the main directory of this archive 4 * for more details. 5 * 6 * usema/usemaclone-related stuff. 7 * 8 * `Inspired' by IRIX's sys/usioctl.h 9 * 10 * Mike. 11 */ 12 #ifndef _ASM_USIOCTL_H 13 #define _ASM_USIOCTL_H 14 15 /* ioctls */ 16 #define UIOC ('u' << 16 | 's' << 8) 17 18 #define UIOCATTACHSEMA (UIOC|2) /* attach to sema */ 19 #define UIOCBLOCK (UIOC|3) /* block sync "intr"? */ 20 #define UIOCABLOCK (UIOC|4) /* block async */ 21 #define UIOCNOIBLOCK (UIOC|5) /* IRIX: block sync intr 22 Linux: block sync nointr */ 23 #define UIOCUNBLOCK (UIOC|6) /* unblock sync */ 24 #define UIOCAUNBLOCK (UIOC|7) /* unblock async */ 25 #define UIOCINIT (UIOC|8) /* init sema (async) */ 26 27 typedef struct usattach_s { 28 dev_t us_dev; /* attach dev */ 29 void *us_handle; /* userland semaphore handle */ 30 } usattach_t; 31 32 #endif /* _ASM_USIOCTL_H */ 33