]>
Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* |
2 | * ioctl32.c: Conversion between 32bit and 64bit native ioctls. | |
3 | * | |
4 | * Copyright (C) 2000 Silicon Graphics, Inc. | |
5 | * Written by Ulf Carlsson (ulfc@engr.sgi.com) | |
6 | * Copyright (C) 2000, 2004 Ralf Baechle | |
7 | * Copyright (C) 2002, 2003 Maciej W. Rozycki | |
8 | */ | |
9 | #define INCLUDES | |
10 | #include "compat_ioctl.c" | |
11 | ||
12 | #include <linux/config.h> | |
13 | #include <linux/types.h> | |
14 | #include <linux/compat.h> | |
15 | #include <linux/ioctl32.h> | |
16 | #include <linux/syscalls.h> | |
17 | ||
18 | #ifdef CONFIG_SIBYTE_TBPROF | |
19 | #include <asm/sibyte/trace_prof.h> | |
20 | #endif | |
21 | ||
22 | #define A(__x) ((unsigned long)(__x)) | |
23 | ||
24 | long sys_ioctl(unsigned int fd, unsigned int cmd, unsigned long arg); | |
25 | ||
26 | #define CODE | |
27 | #include "compat_ioctl.c" | |
28 | ||
29 | typedef int (* ioctl32_handler_t)(unsigned int, unsigned int, unsigned long, struct file *); | |
42a3b4f2 | 30 | |
1da177e4 LT |
31 | #define COMPATIBLE_IOCTL(cmd) HANDLE_IOCTL((cmd),sys_ioctl) |
32 | #define HANDLE_IOCTL(cmd,handler) { (cmd), (ioctl32_handler_t)(handler), NULL }, | |
33 | #define IOCTL_TABLE_START \ | |
34 | struct ioctl_trans ioctl_start[] = { | |
35 | #define IOCTL_TABLE_END \ | |
36 | }; | |
37 | ||
38 | IOCTL_TABLE_START | |
39 | ||
40 | #include <linux/compat_ioctl.h> | |
41 | #define DECLARES | |
42 | #include "compat_ioctl.c" | |
43 | ||
1da177e4 LT |
44 | /*HANDLE_IOCTL(RTC_IRQP_READ, w_long) |
45 | COMPATIBLE_IOCTL(RTC_IRQP_SET) | |
46 | HANDLE_IOCTL(RTC_EPOCH_READ, w_long) | |
47 | COMPATIBLE_IOCTL(RTC_EPOCH_SET) | |
48 | */ | |
49 | ||
50 | IOCTL_TABLE_END | |
51 | ||
52 | int ioctl_table_size = ARRAY_SIZE(ioctl_start); |